Documentation ¶
Index ¶
- Constants
- Variables
- type AnsiContext
- type AnsiEventHandler
- type AnsiParser
- type BaseState
- type CsiEntryState
- type CsiParamState
- type DcsEntryState
- type ErrorState
- type EscapeIntermediateState
- type EscapeState
- type GroundState
- type OscStringState
- type State
- type StateId
- type TestAnsiEventHandler
- func (h *TestAnsiEventHandler) CHA(param int) error
- func (h *TestAnsiEventHandler) CNL(param int) error
- func (h *TestAnsiEventHandler) CPL(param int) error
- func (h *TestAnsiEventHandler) CUB(param int) error
- func (h *TestAnsiEventHandler) CUD(param int) error
- func (h *TestAnsiEventHandler) CUF(param int) error
- func (h *TestAnsiEventHandler) CUP(x int, y int) error
- func (h *TestAnsiEventHandler) CUU(param int) error
- func (h *TestAnsiEventHandler) DA(params []string) error
- func (h *TestAnsiEventHandler) DECSTBM(top int, bottom int) error
- func (h *TestAnsiEventHandler) DECTCEM(visible bool) error
- func (h *TestAnsiEventHandler) DL(param int) error
- func (h *TestAnsiEventHandler) ED(param int) error
- func (h *TestAnsiEventHandler) EL(param int) error
- func (h *TestAnsiEventHandler) Execute(b byte) error
- func (h *TestAnsiEventHandler) Flush() error
- func (h *TestAnsiEventHandler) HVP(x int, y int) error
- func (h *TestAnsiEventHandler) IL(param int) error
- func (h *TestAnsiEventHandler) Print(b byte) error
- func (h *TestAnsiEventHandler) RI() error
- func (h *TestAnsiEventHandler) SD(param int) error
- func (h *TestAnsiEventHandler) SGR(params []int) error
- func (h *TestAnsiEventHandler) SU(param int) error
Constants ¶
const ( // ECMA-48 Set Graphics Rendition // Note: // -- Constants leading with an underscore (e.g., _ANSI_xxx) are unsupported or reserved // -- Fonts could possibly be supported via SetCurrentConsoleFontEx // -- Windows does not expose the per-window cursor (i.e., caret) blink times ANSI_SGR_RESET = 0 ANSI_SGR_BOLD = 1 ANSI_SGR_DIM = 2 ANSI_SGR_UNDERLINE = 4 ANSI_SGR_REVERSE = 7 ANSI_SGR_BOLD_DIM_OFF = 22 ANSI_SGR_UNDERLINE_OFF = 24 ANSI_SGR_REVERSE_OFF = 27 ANSI_SGR_FOREGROUND_BLACK = 30 ANSI_SGR_FOREGROUND_RED = 31 ANSI_SGR_FOREGROUND_GREEN = 32 ANSI_SGR_FOREGROUND_YELLOW = 33 ANSI_SGR_FOREGROUND_BLUE = 34 ANSI_SGR_FOREGROUND_MAGENTA = 35 ANSI_SGR_FOREGROUND_CYAN = 36 ANSI_SGR_FOREGROUND_WHITE = 37 ANSI_SGR_FOREGROUND_DEFAULT = 39 ANSI_SGR_BACKGROUND_BLACK = 40 ANSI_SGR_BACKGROUND_RED = 41 ANSI_SGR_BACKGROUND_GREEN = 42 ANSI_SGR_BACKGROUND_YELLOW = 43 ANSI_SGR_BACKGROUND_BLUE = 44 ANSI_SGR_BACKGROUND_MAGENTA = 45 ANSI_SGR_BACKGROUND_CYAN = 46 ANSI_SGR_BACKGROUND_WHITE = 47 ANSI_SGR_BACKGROUND_DEFAULT = 49 ANSI_MAX_CMD_LENGTH = 4096 MAX_INPUT_EVENTS = 128 DEFAULT_WIDTH = 80 DEFAULT_HEIGHT = 24 ANSI_BEL = 0x07 ANSI_LINE_FEED = 0x0A ANSI_CARRIAGE_RETURN = 0x0D ANSI_ESCAPE_PRIMARY = 0x1B ANSI_ESCAPE_SECONDARY = 0x5B ANSI_OSC_STRING_ENTRY = 0x5D ANSI_COMMAND_FIRST = 0x40 ANSI_COMMAND_LAST = 0x7E DCS_ENTRY = 0x90 CSI_ENTRY = 0x9B OSC_STRING = 0x9D ANSI_PARAMETER_SEP = ";" ANSI_CMD_G0 = '(' ANSI_CMD_G1 = ')' ANSI_CMD_G2 = '*' ANSI_CMD_G3 = '+' ANSI_CMD_DECPNM = '>' ANSI_CMD_DECPAM = '=' ANSI_CMD_OSC = ']' ANSI_CMD_STR_TERM = '\\' KEY_CONTROL_PARAM_2 = ";2" KEY_CONTROL_PARAM_3 = ";3" KEY_CONTROL_PARAM_4 = ";4" KEY_CONTROL_PARAM_5 = ";5" KEY_CONTROL_PARAM_6 = ";6" KEY_CONTROL_PARAM_7 = ";7" KEY_CONTROL_PARAM_8 = ";8" KEY_ESC_CSI = "\x1B[" KEY_ESC_N = "\x1BN" KEY_ESC_O = "\x1BO" FILL_CHARACTER = ' ' )
ANSI constants References: -- http://www.ecma-international.org/publications/standards/Ecma-048.htm -- http://man7.org/linux/man-pages/man4/console_codes.4.html -- http://manpages.ubuntu.com/manpages/intrepid/man4/console_codes.4.html -- http://en.wikipedia.org/wiki/ANSI_escape_code -- http://vt100.net/emu/dec_ansi_parser -- http://vt100.net/emu/vt500_parser.svg -- http://invisible-island.net/xterm/ctlseqs/ctlseqs.html -- http://www.inwap.com/pdp10/ansicode.txt
const LogEnv = "DEBUG_TERMINAL"
Variables ¶
var Alphabetics = append(UpperCase, LowerCase...)
Alphabetics 40-7E hex (all of upper and lower case)
var CsiCollectables = append(getByteRange(0x30, 0x39), getByteRange(0x3B, 0x3F)...)
var CsiParams = getByteRange(0x30, 0x3F)
Parameters 30-3F hex 0123456789:;<=>? CSI Parameters 30-39, 3B hex 0123456789;
var EscapeIntermediateToGroundBytes = getByteRange(0x30, 0x7E)
var EscapeToGroundBytes = getEscapeToGroundBytes()
var Executors = getExecuteBytes()
var Intermeds = getByteRange(0x20, 0x2F)
SPACE 20+A0 hex Always and everywhere a blank space Intermediate 20-2F hex !"#$%&'()*+,-./
var LowerCase = getByteRange(0x60, 0x7E)
Lowercase 60-7E hex `abcdefghijlkmnopqrstuvwxyz{|}~
var Printables = getByteRange(0x20, 0x7F)
var ToGroundBytes = getToGroundBytes()
var UpperCase = getByteRange(0x40, 0x5F)
Uppercase 40-5F hex @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
Functions ¶
This section is empty.
Types ¶
type AnsiContext ¶
type AnsiContext struct {
// contains filtered or unexported fields
}
type AnsiEventHandler ¶
type AnsiEventHandler interface { // Print Print(b byte) error // Execute C0 commands Execute(b byte) error // CUrsor Up CUU(int) error // CUrsor Down CUD(int) error // CUrsor Forward CUF(int) error // CUrsor Backward CUB(int) error // Cursor to Next Line CNL(int) error // Cursor to Previous Line CPL(int) error // Cursor Horizontal position Absolute CHA(int) error // CUrsor Position CUP(int, int) error // Horizontal and Vertical Position (depends on PUM) HVP(int, int) error // Text Cursor Enable Mode DECTCEM(bool) error // Erase in Display ED(int) error // Erase in Line EL(int) error // Insert Line IL(int) error // Delete Line DL(int) error // Set Graphics Rendition SGR([]int) error // Pan Down SU(int) error // Pan Up SD(int) error // Device Attributes DA([]string) error // Set Top and Bottom Margins DECSTBM(int, int) error // Reverse Index RI() error // Flush updates from previous commands Flush() error }
type AnsiParser ¶
type AnsiParser struct { CsiEntry State CsiParam State DcsEntry State Escape State EscapeIntermediate State Error State Ground State OscString State // contains filtered or unexported fields }
func CreateParser ¶
func CreateParser(initialState string, evtHandler AnsiEventHandler) *AnsiParser
type BaseState ¶
type BaseState struct {
// contains filtered or unexported fields
}
func (BaseState) Transition ¶
type CsiEntryState ¶
type CsiEntryState struct {
BaseState
}
func (CsiEntryState) Enter ¶
func (csiState CsiEntryState) Enter() error
func (CsiEntryState) Transition ¶
func (csiState CsiEntryState) Transition(s State) error
type CsiParamState ¶
type CsiParamState struct {
BaseState
}
func (CsiParamState) Transition ¶
func (csiState CsiParamState) Transition(s State) error
type DcsEntryState ¶
type DcsEntryState struct {
BaseState
}
type ErrorState ¶
type ErrorState struct {
BaseState
}
type EscapeIntermediateState ¶
type EscapeIntermediateState struct {
BaseState
}
func (EscapeIntermediateState) Handle ¶
func (escState EscapeIntermediateState) Handle(b byte) (s State, e error)
func (EscapeIntermediateState) Transition ¶
func (escState EscapeIntermediateState) Transition(s State) error
type EscapeState ¶
type EscapeState struct {
BaseState
}
func (EscapeState) Enter ¶
func (escState EscapeState) Enter() error
func (EscapeState) Transition ¶
func (escState EscapeState) Transition(s State) error
type GroundState ¶
type GroundState struct {
BaseState
}
type OscStringState ¶
type OscStringState struct {
BaseState
}
type TestAnsiEventHandler ¶
type TestAnsiEventHandler struct {
FunctionCalls []string
}
func CreateTestAnsiEventHandler ¶
func CreateTestAnsiEventHandler() *TestAnsiEventHandler
func (*TestAnsiEventHandler) CHA ¶
func (h *TestAnsiEventHandler) CHA(param int) error
func (*TestAnsiEventHandler) CNL ¶
func (h *TestAnsiEventHandler) CNL(param int) error
func (*TestAnsiEventHandler) CPL ¶
func (h *TestAnsiEventHandler) CPL(param int) error
func (*TestAnsiEventHandler) CUB ¶
func (h *TestAnsiEventHandler) CUB(param int) error
func (*TestAnsiEventHandler) CUD ¶
func (h *TestAnsiEventHandler) CUD(param int) error
func (*TestAnsiEventHandler) CUF ¶
func (h *TestAnsiEventHandler) CUF(param int) error
func (*TestAnsiEventHandler) CUU ¶
func (h *TestAnsiEventHandler) CUU(param int) error
func (*TestAnsiEventHandler) DA ¶
func (h *TestAnsiEventHandler) DA(params []string) error
func (*TestAnsiEventHandler) DECSTBM ¶
func (h *TestAnsiEventHandler) DECSTBM(top int, bottom int) error
func (*TestAnsiEventHandler) DECTCEM ¶
func (h *TestAnsiEventHandler) DECTCEM(visible bool) error
func (*TestAnsiEventHandler) DL ¶
func (h *TestAnsiEventHandler) DL(param int) error
func (*TestAnsiEventHandler) ED ¶
func (h *TestAnsiEventHandler) ED(param int) error
func (*TestAnsiEventHandler) EL ¶
func (h *TestAnsiEventHandler) EL(param int) error
func (*TestAnsiEventHandler) Execute ¶
func (h *TestAnsiEventHandler) Execute(b byte) error
func (*TestAnsiEventHandler) Flush ¶
func (h *TestAnsiEventHandler) Flush() error
func (*TestAnsiEventHandler) IL ¶
func (h *TestAnsiEventHandler) IL(param int) error
func (*TestAnsiEventHandler) Print ¶
func (h *TestAnsiEventHandler) Print(b byte) error
func (*TestAnsiEventHandler) RI ¶
func (h *TestAnsiEventHandler) RI() error
func (*TestAnsiEventHandler) SD ¶
func (h *TestAnsiEventHandler) SD(param int) error
func (*TestAnsiEventHandler) SGR ¶
func (h *TestAnsiEventHandler) SGR(params []int) error
func (*TestAnsiEventHandler) SU ¶
func (h *TestAnsiEventHandler) SU(param int) error
Source Files ¶
- constants.go
- context.go
- csi_entry_state.go
- csi_param_state.go
- escape_intermediate_state.go
- escape_state.go
- event_handler.go
- ground_state.go
- osc_string_state.go
- parser.go
- parser_action_helpers.go
- parser_actions.go
- parser_test_helpers.go
- parser_test_utilities.go
- states.go
- test_event_handler.go
- utilities.go