System.Console.Terminfo.Effects

terminfo-0.4.0.1: Haskell bindings to the terminfo library.

Maintainer | judah.jacobson@gmail.com
Stability | experimental
Portability | portable (FFI)
Safe Haskell | Safe
Language | Haskell2010

System.Console.Terminfo.Effects

Contents

- Bell alerts
- Text attributes
  - Mode wrappers
  - Low-level capabilities

Description

Synopsis

- bell :: TermStr s => Capability s
- visualBell :: Capability TermOutput
- data Attributes = Attributes {
  - standoutAttr, underlineAttr, reverseAttr, blinkAttr, dimAttr, boldAttr, invisibleAttr, protectedAttr :: Bool
  }
- defaultAttributes :: Attributes
- withAttributes :: TermStr s => Capability (Attributes -> s -> s)
- setAttributes :: TermStr s => Capability (Attributes -> s)
- allAttributesOff :: TermStr s => Capability s
- withStandout :: TermStr s => Capability (s -> s)
- withUnderline :: TermStr s => Capability (s -> s)
- withBold :: TermStr s => Capability (s -> s)
- enterStandoutMode :: TermStr s => Capability s
- exitStandoutMode :: TermStr s => Capability s
- enterUnderlineMode :: TermStr s => Capability s
- exitUnderlineMode :: TermStr s => Capability s
- reverseOn :: TermStr s => Capability s
- blinkOn :: TermStr s => Capability s
- boldOn :: TermStr s => Capability s
- dimOn :: TermStr s => Capability s
- invisibleOn :: TermStr s => Capability s
- protectedOn :: TermStr s => Capability s

# Bell alerts

bell :: TermStr s => Capability s

Sound the audible bell.

visualBell :: Capability TermOutput

Present a visual alert using the `flash` capability.

# Text attributes

data Attributes

Constructors

Attributes |
Fields standoutAttr, underlineAttr, reverseAttr, blinkAttr, dimAttr, boldAttr, invisibleAttr, protectedAttr :: Bool

defaultAttributes :: Attributes

These attributes have all properties turned off.

withAttributes :: TermStr s => Capability (Attributes -> s -> s)

Sets the attributes on or off before outputting the given text, and then turns them all off. This capability will always succeed; properties which cannot be set in the current terminal will be ignored.

setAttributes :: TermStr s => Capability (Attributes -> s)

Sets the attributes on or off. This capability will always succeed; properties which cannot be set in the current terminal will be ignored.

allAttributesOff :: TermStr s => Capability s

Turns off all text attributes. This capability will always succeed, but it has no effect in terminals which do not support text attributes.

## Mode wrappers

withStandout :: TermStr s => Capability (s -> s)

Turns on standout mode before outputting the given text, and then turns it off.

withUnderline :: TermStr s => Capability (s -> s)

Turns on underline mode before outputting the given text, and then turns it off.

withBold :: TermStr s => Capability (s -> s)

Turns on bold mode before outputting the given text, and then turns all attributes off.

## Low-level capabilities

enterStandoutMode :: TermStr s => Capability s

exitStandoutMode :: TermStr s => Capability s

enterUnderlineMode :: TermStr s => Capability s

exitUnderlineMode :: TermStr s => Capability s

reverseOn :: TermStr s => Capability s

blinkOn :: TermStr s => Capability s

boldOn :: TermStr s => Capability s

dimOn :: TermStr s => Capability s

invisibleOn :: TermStr s => Capability s

protectedOn :: TermStr s => Capability s