ansi-terminal-types-1.1.3: Types and functions used to represent SGR aspects

Safe Haskell | Safe
Language | Haskell2010

System.Console.ANSI.Types

Contents

- Types used to represent SGR aspects
- Constructors of xterm 256-color palette indices

Description

The 'ANSI' standards refer to the visual style of displaying characters as their 'graphic rendition'. The style includes the color of a character, its background, or (where supported) its underlining; the intensity (bold, normal or faint) of a character; or whether the character is italic or underlined (single, double, curly, dotted or dashed), blinking (slowly or rapidly) or visible or not. The 'ANSI' codes to establish the graphic rendition for subsequent text are referred to as SELECT GRAPHIC RENDITION (SGR).

This module exports types and functions used to represent SGR aspects. See also `setSGR` and related functions provided by the `ansi-terminal` package.

Synopsis

- data SGR
  - = Reset
  - | SetConsoleIntensity !ConsoleIntensity
  - | SetItalicized !Bool
  - | SetUnderlining !Underlining
  - | SetBlinkSpeed !BlinkSpeed
  - | SetVisible !Bool
  - | SetSwapForegroundBackground !Bool
  - | SetColor !ConsoleLayer !ColorIntensity !Color
  - | SetRGBColor !ConsoleLayer !(Colour Float)
  - | SetPaletteColor !ConsoleLayer !Word8
  - | SetDefaultColor !ConsoleLayer
- data ConsoleLayer
  - = Foreground
  - | Background
  - | Underlining
- data Color
  - = Black
  - | Red
  - | Green
  - | Yellow
  - | Blue
  - | Magenta
  - | Cyan
  - | White
- data ColorIntensity
  - = Dull
  - | Vivid
- data ConsoleIntensity
  - = BoldIntensity
  - | FaintIntensity
  - | NormalIntensity
- data Underlining
  - = SingleUnderline
  - | DoubleUnderline
  - | CurlyUnderline
  - | DottedUnderline
  - | DashedUnderline
  - | NoUnderline
- data BlinkSpeed
  - = SlowBlink
  - | RapidBlink
  - | NoBlink
- xterm6LevelRGB :: Int -> Int -> Int -> Word8
- xterm24LevelGray :: Int -> Word8
- xtermSystem :: ColorIntensity -> Color -> Word8

# Types used to represent SGR aspects

data SGR Source #

ANSI Select Graphic Rendition (SGR) command

In respect of colors, there are three alternative commands:

1. the 'ANSI' standards allow for eight standard colors (with two intensities). Windows and many other terminals (including xterm) allow the user to redefine the standard colors (so, for example `Vivid` `Green` may not correspond to bright green;
2. an extension of the standard that allows true colors (24 bit color depth) in RGB space. This is usually the best alternative for more colors; and
3. another extension that allows a palette of 256 colors, each color specified by an index. Xterm provides a protocol for a palette of 256 colors that many other terminals, including Windows 10, follow. Some terminals (including xterm) allow the user to redefine some or all of the palette colors.

Constructors

Reset | Default rendition, cancels the effect of any preceding occurrence of SGR (implementation-defined)
SetConsoleIntensity !ConsoleIntensity | Set the character intensity. Partially supported natively on Windows 10
SetItalicized !Bool | Set italicized. Not widely supported: sometimes treated as swapping foreground and background. Not supported natively on Windows 10
SetUnderlining !Underlining | Set or clear underlining. Partially supported natively on Windows 10
SetBlinkSpeed !BlinkSpeed | Set or clear character blinking. Not supported natively on Windows 10
SetVisible !Bool | Set revealed or concealed. Not widely supported. Not supported natively on Windows 10
SetSwapForegroundBackground !Bool | Set negative or positive image. Supported natively on Windows 10
SetColor !ConsoleLayer !ColorIntensity !Color | Set a color from the standard palette of 16 colors (8 colors by 2 color intensities). Many terminals allow the palette colors to be customised
SetRGBColor !ConsoleLayer !(Colour Float) | Set a true color (24 bit color depth). Supported natively on Windows 10 from the Creators Update (April 2017) Since: 0.7
SetPaletteColor !ConsoleLayer !Word8 | Set a color from a palette of 256 colors using a numerical index (0-based). Supported natively on Windows 10 from the Creators Update (April 2017) but not on legacy Windows native terminals. See `xtermSystem`, `xterm6LevelRGB` and `xterm24LevelGray` to construct indices based on xterm's standard protocol for a 256-color palette. Since: 0.9
SetDefaultColor !ConsoleLayer | Set a color to the default (implementation-defined) Since: 0.10

#### Instances

Instances details

Read SGR Source # |
Instance details Defined in System.Console.ANSI.Types Methods readsPrec :: Int -> ReadS SGR Source # readList :: ReadS [SGR] Source # readPrec :: ReadPrec SGR Source # readListPrec :: ReadPrec [SGR] Source #
Show SGR Source # |
Instance details Defined in System.Console.ANSI.Types Methods showsPrec :: Int -> SGR -> ShowS Source # show :: SGR -> String Source # showList :: [SGR] -> ShowS Source #
Eq SGR Source # |
Instance details Defined in System.Console.ANSI.Types Methods (==) :: SGR -> SGR -> Bool Source # (/=) :: SGR -> SGR -> Bool Source #

data ConsoleLayer Source #

ANSI colors can be set on three different layers

Constructors

Foreground |
Background |
Underlining | Not widely supported. Since: 1.1

#### Instances

Instances details

Bounded ConsoleLayer Source # |
Instance details Defined in System.Console.ANSI.Types Methods minBound :: ConsoleLayer Source # maxBound :: ConsoleLayer Source #
Enum ConsoleLayer Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

succ :: ConsoleLayer -> ConsoleLayer Source #

pred :: ConsoleLayer -> ConsoleLayer Source #

toEnum :: Int -> ConsoleLayer Source #

fromEnum :: ConsoleLayer -> Int Source #

enumFrom :: ConsoleLayer -> [ConsoleLayer] Source #

enumFromThen :: ConsoleLayer -> ConsoleLayer -> [ConsoleLayer] Source #

enumFromTo :: ConsoleLayer -> ConsoleLayer -> [ConsoleLayer] Source #

enumFromThenTo :: ConsoleLayer -> ConsoleLayer -> ConsoleLayer -> [ConsoleLayer] Source #

Ix ConsoleLayer Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

range :: (ConsoleLayer, ConsoleLayer) -> [ConsoleLayer] Source #

index :: (ConsoleLayer, ConsoleLayer) -> ConsoleLayer -> Int Source #

unsafeIndex :: (ConsoleLayer, ConsoleLayer) -> ConsoleLayer -> Int Source #

inRange :: (ConsoleLayer, ConsoleLayer) -> ConsoleLayer -> Bool Source #

rangeSize :: (ConsoleLayer, ConsoleLayer) -> Int Source #

unsafeRangeSize :: (ConsoleLayer, ConsoleLayer) -> Int Source #

Read ConsoleLayer Source # |
Instance details Defined in System.Console.ANSI.Types Methods readsPrec :: Int -> ReadS ConsoleLayer Source # readList :: ReadS [ConsoleLayer] Source # readPrec :: ReadPrec ConsoleLayer Source # readListPrec :: ReadPrec [ConsoleLayer] Source #
Show ConsoleLayer Source # |
Instance details Defined in System.Console.ANSI.Types Methods showsPrec :: Int -> ConsoleLayer -> ShowS Source # show :: ConsoleLayer -> String Source # showList :: [ConsoleLayer] -> ShowS Source #
Eq ConsoleLayer Source # |
Instance details Defined in System.Console.ANSI.Types Methods (==) :: ConsoleLayer -> ConsoleLayer -> Bool Source # (/=) :: ConsoleLayer -> ConsoleLayer -> Bool Source #
Ord ConsoleLayer Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

compare :: ConsoleLayer -> ConsoleLayer -> Ordering Source #

(<) :: ConsoleLayer -> ConsoleLayer -> Bool Source #

(<=) :: ConsoleLayer -> ConsoleLayer -> Bool Source #

(>) :: ConsoleLayer -> ConsoleLayer -> Bool Source #

(>=) :: ConsoleLayer -> ConsoleLayer -> Bool Source #

max :: ConsoleLayer -> ConsoleLayer -> ConsoleLayer Source #

min :: ConsoleLayer -> ConsoleLayer -> ConsoleLayer Source #

data Color Source #

ANSI's eight standard colors. They come in two intensities, which are controlled by `ColorIntensity`. Many terminals allow the colors of the standard palette to be customised, so that, for example, `setSGR [ SetColor Foreground Vivid Green ]` may not result in bright green characters.

Constructors

Black |
Red |
Green |
Yellow |
Blue |
Magenta |
Cyan |
White |

#### Instances

Instances details

Bounded Color Source # |
Instance details Defined in System.Console.ANSI.Types Methods minBound :: Color Source # maxBound :: Color Source #
Enum Color Source # |
Instance details Defined in System.Console.ANSI.Types Methods succ :: Color -> Color Source # pred :: Color -> Color Source # toEnum :: Int -> Color Source # fromEnum :: Color -> Int Source # enumFrom :: Color -> [Color] Source # enumFromThen :: Color -> Color -> [Color] Source # enumFromTo :: Color -> Color -> [Color] Source # enumFromThenTo :: Color -> Color -> Color -> [Color] Source #
Ix Color Source # |
Instance details Defined in System.Console.ANSI.Types Methods range :: (Color, Color) -> [Color] Source # index :: (Color, Color) -> Color -> Int Source # unsafeIndex :: (Color, Color) -> Color -> Int Source # inRange :: (Color, Color) -> Color -> Bool Source # rangeSize :: (Color, Color) -> Int Source # unsafeRangeSize :: (Color, Color) -> Int Source #
Read Color Source # |
Instance details Defined in System.Console.ANSI.Types Methods readsPrec :: Int -> ReadS Color Source # readList :: ReadS [Color] Source # readPrec :: ReadPrec Color Source # readListPrec :: ReadPrec [Color] Source #
Show Color Source # |
Instance details Defined in System.Console.ANSI.Types Methods showsPrec :: Int -> Color -> ShowS Source # show :: Color -> String Source # showList :: [Color] -> ShowS Source #
Eq Color Source # |
Instance details Defined in System.Console.ANSI.Types Methods (==) :: Color -> Color -> Bool Source # (/=) :: Color -> Color -> Bool Source #
Ord Color Source # |
Instance details Defined in System.Console.ANSI.Types Methods compare :: Color -> Color -> Ordering Source # (<) :: Color -> Color -> Bool Source # (<=) :: Color -> Color -> Bool Source # (>) :: Color -> Color -> Bool Source # (>=) :: Color -> Color -> Bool Source # max :: Color -> Color -> Color Source # min :: Color -> Color -> Color Source #

data ColorIntensity Source #

ANSI's standard colors come in two intensities

Constructors

Dull |
Vivid |

#### Instances

Instances details

Bounded ColorIntensity Source # |
Instance details Defined in System.Console.ANSI.Types Methods minBound :: ColorIntensity Source # maxBound :: ColorIntensity Source #
Enum ColorIntensity Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

succ :: ColorIntensity -> ColorIntensity Source #

pred :: ColorIntensity -> ColorIntensity Source #

toEnum :: Int -> ColorIntensity Source #

fromEnum :: ColorIntensity -> Int Source #

enumFrom :: ColorIntensity -> [ColorIntensity] Source #

enumFromThen :: ColorIntensity -> ColorIntensity -> [ColorIntensity] Source #

enumFromTo :: ColorIntensity -> ColorIntensity -> [ColorIntensity] Source #

enumFromThenTo :: ColorIntensity -> ColorIntensity -> ColorIntensity -> [ColorIntensity] Source #

Ix ColorIntensity Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

range :: (ColorIntensity, ColorIntensity) -> [ColorIntensity] Source #

index :: (ColorIntensity, ColorIntensity) -> ColorIntensity -> Int Source #

unsafeIndex :: (ColorIntensity, ColorIntensity) -> ColorIntensity -> Int Source #

inRange :: (ColorIntensity, ColorIntensity) -> ColorIntensity -> Bool Source #

rangeSize :: (ColorIntensity, ColorIntensity) -> Int Source #

unsafeRangeSize :: (ColorIntensity, ColorIntensity) -> Int Source #

Read ColorIntensity Source # |
Instance details Defined in System.Console.ANSI.Types Methods readsPrec :: Int -> ReadS ColorIntensity Source # readList :: ReadS [ColorIntensity] Source # readPrec :: ReadPrec ColorIntensity Source # readListPrec :: ReadPrec [ColorIntensity] Source #
Show ColorIntensity Source # |
Instance details Defined in System.Console.ANSI.Types Methods showsPrec :: Int -> ColorIntensity -> ShowS Source # show :: ColorIntensity -> String Source # showList :: [ColorIntensity] -> ShowS Source #
Eq ColorIntensity Source # |
Instance details Defined in System.Console.ANSI.Types Methods (==) :: ColorIntensity -> ColorIntensity -> Bool Source # (/=) :: ColorIntensity -> ColorIntensity -> Bool Source #
Ord ColorIntensity Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

compare :: ColorIntensity -> ColorIntensity -> Ordering Source #

(<) :: ColorIntensity -> ColorIntensity -> Bool Source #

(<=) :: ColorIntensity -> ColorIntensity -> Bool Source #

(>) :: ColorIntensity -> ColorIntensity -> Bool Source #

(>=) :: ColorIntensity -> ColorIntensity -> Bool Source #

max :: ColorIntensity -> ColorIntensity -> ColorIntensity Source #

min :: ColorIntensity -> ColorIntensity -> ColorIntensity Source #

data ConsoleIntensity Source #

ANSI general console intensity: usually treated as setting the font style (e.g. `BoldIntensity` causes text to be bold)

Constructors

BoldIntensity |
FaintIntensity | Not widely supported: sometimes treated as concealing text. Not supported natively on Windows 10
NormalIntensity |

#### Instances

Instances details

Bounded ConsoleIntensity Source # |
Instance details Defined in System.Console.ANSI.Types Methods minBound :: ConsoleIntensity Source # maxBound :: ConsoleIntensity Source #
Enum ConsoleIntensity Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

succ :: ConsoleIntensity -> ConsoleIntensity Source #

pred :: ConsoleIntensity -> ConsoleIntensity Source #

toEnum :: Int -> ConsoleIntensity Source #

fromEnum :: ConsoleIntensity -> Int Source #

enumFrom :: ConsoleIntensity -> [ConsoleIntensity] Source #

enumFromThen :: ConsoleIntensity -> ConsoleIntensity -> [ConsoleIntensity] Source #

enumFromTo :: ConsoleIntensity -> ConsoleIntensity -> [ConsoleIntensity] Source #

enumFromThenTo :: ConsoleIntensity -> ConsoleIntensity -> ConsoleIntensity -> [ConsoleIntensity] Source #

Ix ConsoleIntensity Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

range :: (ConsoleIntensity, ConsoleIntensity) -> [ConsoleIntensity] Source #

index :: (ConsoleIntensity, ConsoleIntensity) -> ConsoleIntensity -> Int Source #

unsafeIndex :: (ConsoleIntensity, ConsoleIntensity) -> ConsoleIntensity -> Int Source #

inRange :: (ConsoleIntensity, ConsoleIntensity) -> ConsoleIntensity -> Bool Source #

rangeSize :: (ConsoleIntensity, ConsoleIntensity) -> Int Source #

unsafeRangeSize :: (ConsoleIntensity, ConsoleIntensity) -> Int Source #

Read ConsoleIntensity Source # |
Instance details Defined in System.Console.ANSI.Types Methods readsPrec :: Int -> ReadS ConsoleIntensity Source # readList :: ReadS [ConsoleIntensity] Source # readPrec :: ReadPrec ConsoleIntensity Source # readListPrec :: ReadPrec [ConsoleIntensity] Source #
Show ConsoleIntensity Source # |
Instance details Defined in System.Console.ANSI.Types Methods showsPrec :: Int -> ConsoleIntensity -> ShowS Source # show :: ConsoleIntensity -> String Source # showList :: [ConsoleIntensity] -> ShowS Source #
Eq ConsoleIntensity Source # |
Instance details Defined in System.Console.ANSI.Types Methods (==) :: ConsoleIntensity -> ConsoleIntensity -> Bool Source # (/=) :: ConsoleIntensity -> ConsoleIntensity -> Bool Source #
Ord ConsoleIntensity Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

compare :: ConsoleIntensity -> ConsoleIntensity -> Ordering Source #

(<) :: ConsoleIntensity -> ConsoleIntensity -> Bool Source #

(<=) :: ConsoleIntensity -> ConsoleIntensity -> Bool Source #

(>) :: ConsoleIntensity -> ConsoleIntensity -> Bool Source #

(>=) :: ConsoleIntensity -> ConsoleIntensity -> Bool Source #

max :: ConsoleIntensity -> ConsoleIntensity -> ConsoleIntensity Source #

min :: ConsoleIntensity -> ConsoleIntensity -> ConsoleIntensity Source #

data Underlining Source #

ANSI text underlining

Constructors

SingleUnderline |
DoubleUnderline | Not widely supported.
CurlyUnderline | Not widely supported. Since: 1.1
DottedUnderline | Not widely supported. Since: 1.1
DashedUnderline | Not widely supported. Since: 1.1
NoUnderline |

#### Instances

Instances details

Bounded Underlining Source # |
Instance details Defined in System.Console.ANSI.Types Methods minBound :: Underlining Source # maxBound :: Underlining Source #
Enum Underlining Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

succ :: Underlining -> Underlining Source #

pred :: Underlining -> Underlining Source #

toEnum :: Int -> Underlining Source #

fromEnum :: Underlining -> Int Source #

enumFrom :: Underlining -> [Underlining] Source #

enumFromThen :: Underlining -> Underlining -> [Underlining] Source #

enumFromTo :: Underlining -> Underlining -> [Underlining] Source #

enumFromThenTo :: Underlining -> Underlining -> Underlining -> [Underlining] Source #

Ix Underlining Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

range :: (Underlining, Underlining) -> [Underlining] Source #

index :: (Underlining, Underlining) -> Underlining -> Int Source #

unsafeIndex :: (Underlining, Underlining) -> Underlining -> Int Source #

inRange :: (Underlining, Underlining) -> Underlining -> Bool Source #

rangeSize :: (Underlining, Underlining) -> Int Source #

unsafeRangeSize :: (Underlining, Underlining) -> Int Source #

Read Underlining Source # |
Instance details Defined in System.Console.ANSI.Types Methods readsPrec :: Int -> ReadS Underlining Source # readList :: ReadS [Underlining] Source # readPrec :: ReadPrec Underlining Source # readListPrec :: ReadPrec [Underlining] Source #
Show Underlining Source # |
Instance details Defined in System.Console.ANSI.Types Methods showsPrec :: Int -> Underlining -> ShowS Source # show :: Underlining -> String Source # showList :: [Underlining] -> ShowS Source #
Eq Underlining Source # |
Instance details Defined in System.Console.ANSI.Types Methods (==) :: Underlining -> Underlining -> Bool Source # (/=) :: Underlining -> Underlining -> Bool Source #
Ord Underlining Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

compare :: Underlining -> Underlining -> Ordering Source #

(<) :: Underlining -> Underlining -> Bool Source #

(<=) :: Underlining -> Underlining -> Bool Source #

(>) :: Underlining -> Underlining -> Bool Source #

(>=) :: Underlining -> Underlining -> Bool Source #

max :: Underlining -> Underlining -> Underlining Source #

min :: Underlining -> Underlining -> Underlining Source #

data BlinkSpeed Source #

ANSI blink speeds: values other than `NoBlink` are not widely supported

Constructors

SlowBlink | Less than 150 blinks per minute
RapidBlink | More than 150 blinks per minute
NoBlink |

#### Instances

Instances details

Bounded BlinkSpeed Source # |
Instance details Defined in System.Console.ANSI.Types Methods minBound :: BlinkSpeed Source # maxBound :: BlinkSpeed Source #
Enum BlinkSpeed Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

succ :: BlinkSpeed -> BlinkSpeed Source #

pred :: BlinkSpeed -> BlinkSpeed Source #

toEnum :: Int -> BlinkSpeed Source #

fromEnum :: BlinkSpeed -> Int Source #

enumFrom :: BlinkSpeed -> [BlinkSpeed] Source #

enumFromThen :: BlinkSpeed -> BlinkSpeed -> [BlinkSpeed] Source #

enumFromTo :: BlinkSpeed -> BlinkSpeed -> [BlinkSpeed] Source #

enumFromThenTo :: BlinkSpeed -> BlinkSpeed -> BlinkSpeed -> [BlinkSpeed] Source #

Ix BlinkSpeed Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

range :: (BlinkSpeed, BlinkSpeed) -> [BlinkSpeed] Source #

index :: (BlinkSpeed, BlinkSpeed) -> BlinkSpeed -> Int Source #

unsafeIndex :: (BlinkSpeed, BlinkSpeed) -> BlinkSpeed -> Int Source #

inRange :: (BlinkSpeed, BlinkSpeed) -> BlinkSpeed -> Bool Source #

rangeSize :: (BlinkSpeed, BlinkSpeed) -> Int Source #

unsafeRangeSize :: (BlinkSpeed, BlinkSpeed) -> Int Source #

Read BlinkSpeed Source # |
Instance details Defined in System.Console.ANSI.Types Methods readsPrec :: Int -> ReadS BlinkSpeed Source # readList :: ReadS [BlinkSpeed] Source # readPrec :: ReadPrec BlinkSpeed Source # readListPrec :: ReadPrec [BlinkSpeed] Source #
Show BlinkSpeed Source # |
Instance details Defined in System.Console.ANSI.Types Methods showsPrec :: Int -> BlinkSpeed -> ShowS Source # show :: BlinkSpeed -> String Source # showList :: [BlinkSpeed] -> ShowS Source #
Eq BlinkSpeed Source # |
Instance details Defined in System.Console.ANSI.Types Methods (==) :: BlinkSpeed -> BlinkSpeed -> Bool Source # (/=) :: BlinkSpeed -> BlinkSpeed -> Bool Source #
Ord BlinkSpeed Source # |

Instance details

Defined in System.Console.ANSI.Types

Methods

compare :: BlinkSpeed -> BlinkSpeed -> Ordering Source #

(<) :: BlinkSpeed -> BlinkSpeed -> Bool Source #

(<=) :: BlinkSpeed -> BlinkSpeed -> Bool Source #

(>) :: BlinkSpeed -> BlinkSpeed -> Bool Source #

(>=) :: BlinkSpeed -> BlinkSpeed -> Bool Source #

max :: BlinkSpeed -> BlinkSpeed -> BlinkSpeed Source #

min :: BlinkSpeed -> BlinkSpeed -> BlinkSpeed Source #

# Constructors of xterm 256-color palette indices

xterm6LevelRGB :: Int -> Int -> Int -> Word8 Source #

Given xterm's standard protocol for a 256-color palette, returns the index to that part of the palette which is a 6 level (6x6x6) color cube of 216 RGB colors. Throws an error if any of the red, green or blue channels is outside the range 0 to 5. An example of use is:

    >>> setSGR [ SetPaletteColor $ xterm6LevelRGB 5 2 0 ] -- Dark Orange

Since: 0.9

xterm24LevelGray :: Int -> Word8 Source #

Given xterm's standard protocol for a 256-color palette, returns the index to that part of the palette which is a spectrum of 24 grays, from dark gray (0) to near white (23) (black and white are themselves excluded). Throws an error if the gray is outside of the range 0 to 23. An example of use is:

    >>> setSGR [ SetPaletteColor $ xterm24LevelGray 12 ] -- Gray50

Since: 0.9

xtermSystem :: ColorIntensity -> Color -> Word8 Source #

Given xterm's standard protocol for a 256-color palette, returns the index to that part of the palette which corresponds to the 'ANSI' standards' 16 standard, or 'system', colors (eight colors in two intensities). An example of use is:

    >>> setSGR [ SetPaletteColor $ xtermSystem Vivid Green ]

Since: 0.9