• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

winterm/H29-Sep-2017-1,6721,265

LICENSEH A D29-Sep-20171.1 KiB2217

README.mdH A D29-Sep-20171.3 KiB137

constants.goH A D29-Sep-20176 KiB189136

context.goH A D29-Sep-2017104 86

csi_entry_state.goH A D29-Sep-20171.2 KiB5040

csi_param_state.goH A D29-Sep-2017854 3930

escape_intermediate_state.goH A D29-Sep-2017921 3729

escape_state.goH A D29-Sep-20171.1 KiB4839

event_handler.goH A D29-Sep-20171.2 KiB9132

ground_state.goH A D29-Sep-2017427 2518

osc_string_state.goH A D29-Sep-2017620 3222

parser.goH A D29-Sep-20173.4 KiB152123

parser_action_helpers.goH A D29-Sep-20171.8 KiB10078

parser_actions.goH A D29-Sep-20173 KiB120107

parser_test.goH A D29-Sep-20175.1 KiB142120

parser_test_helpers_test.goH A D29-Sep-20175.1 KiB11597

parser_test_utilities_test.goH A D29-Sep-20171.7 KiB6752

states.goH A D29-Sep-20171.3 KiB7257

test_event_handler_test.goH A D29-Sep-20173.9 KiB174139

utilities.goH A D29-Sep-2017274 2217

README.md

1# go-ansiterm
2
3This 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.
4
5For 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.
6
7The 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).
8
9See parser_test.go for examples exercising the state machine and generating appropriate function calls.
10
11-----
12This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
13