View Source Garnish.Constants (garnish v0.2.1)
Defines constants from the termbox library. These can be used e.g. to set a formatting attributes or to identify keys passed in an event.
Summary
Functions
Retrieves an attribute constant by name
Retrieves the mapping of attribute constants.
Retrieves a color constant by name
Retrieves the mapping of color constants.
Retrieves an error code constant by name
Retrieves the mapping of error code constants.
Retrieves an event type constant by name
Retrieves the mapping of event type constants.
Retrieves the hide cursor constant.
Retrieves an input mode constant by name
Retrieves the mapping of input mode constants.
Retrieves a key constant by name
Retrieves the mapping of key constants for use with termbox.
Retrieves an output mode constant by name
Retrieves the mapping of output mode constants.
Types
Functions
Retrieves an attribute constant by name
Examples
iex> attribute(:bold)
0x0100
iex> attribute(:underline)
0x0200
Retrieves the mapping of attribute constants.
Retrieves a color constant by name
Examples
iex> color(:red)
0x02
iex> color(:blue)
0x05
Retrieves the mapping of color constants.
@spec error_code(atom()) :: error_code()
Retrieves an error code constant by name
Examples
iex> error_code(:unsupported_terminal)
-1
@spec error_codes() :: %{required(atom()) => error_code()}
Retrieves the mapping of error code constants.
@spec event_type(atom()) :: event_type()
Retrieves an event type constant by name
Examples
iex> event_type(:key)
0x01
iex> event_type(:resize)
0x02
iex> event_type(:mouse)
0x03
@spec event_types() :: %{required(atom()) => event_type()}
Retrieves the mapping of event type constants.
@spec hide_cursor() :: hide_cursor()
Retrieves the hide cursor constant.
Examples
iex> hide_cursor()
-1
@spec input_mode(atom()) :: input_mode()
Retrieves an input mode constant by name
Examples
iex> input_mode(:esc)
1
iex> input_mode(:esc_with_mouse)
5
@spec input_modes() :: %{required(atom()) => input_mode()}
Retrieves the mapping of input mode constants.
Retrieves a key constant by name
Examples
iex> key(:esc)
0x1B
iex> key(:space)
0x20
Retrieves the mapping of key constants for use with termbox.
These are based on terminfo constants. Note that there's some overlap
of terminfo values. For example, it's not possible to distinguish between
<backspace>
and ctrl-h
.
@spec output_mode(atom()) :: output_mode()
Retrieves an output mode constant by name
Examples
iex> output_mode(:term_256)
2
@spec output_modes() :: %{required(atom()) => output_mode()}
Retrieves the mapping of output mode constants.