kops/vendor/github.com/Azure/go-ansiterm
Rodrigo Menezes 2b9243ff8c Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
..
winterm Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
BUILD.bazel Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
LICENSE adding windows dependencies 2017-11-04 20:50:18 -06:00
README.md adding windows dependencies 2017-11-04 20:50:18 -06:00
constants.go adding windows dependencies 2017-11-04 20:50:18 -06:00
context.go adding windows dependencies 2017-11-04 20:50:18 -06:00
csi_entry_state.go Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
csi_param_state.go Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
escape_intermediate_state.go Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
escape_state.go Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
event_handler.go adding windows dependencies 2017-11-04 20:50:18 -06:00
ground_state.go adding windows dependencies 2017-11-04 20:50:18 -06:00
osc_string_state.go Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
parser.go Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
parser_action_helpers.go Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
parser_actions.go Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
states.go adding windows dependencies 2017-11-04 20:50:18 -06:00
utilities.go adding windows dependencies 2017-11-04 20:50:18 -06:00

README.md

go-ansiterm

This is a cross platform Ansi Terminal Emulation library. It reads a stream of Ansi characters and produces the appropriate function calls. The results of the function calls are platform dependent.

For example the parser might receive "ESC, [, A" as a stream of three characters. This is the code for Cursor Up (http://www.vt100.net/docs/vt510-rm/CUU). The parser then calls the cursor up function (CUU()) on an event handler. The event handler determines what platform specific work must be done to cause the cursor to move up one position.

The parser (parser.go) is a partial implementation of this state machine (http://vt100.net/emu/vt500_parser.png). There are also two event handler implementations, one for tests (test_event_handler.go) to validate that the expected events are being produced and called, the other is a Windows implementation (winterm/win_event_handler.go).

See parser_test.go for examples exercising the state machine and generating appropriate function calls.


This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.