| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232 |
- ANSI/VT100 Terminal Control Escape Sequences
- [ Status | Setup | Fonts | Cursor | Scrolling | Tabs | Erasing | Printing | Keyboard | Colours ]
- Many computer terminals and terminal emulators support colour and cursor control through a system of escape sequences. One such standard is commonly referred to as ANSI Colour. Several terminal specifications are based on the ANSI colour standard, including VT100.
- The following is a partial listing of the VT100 control set.
- <ESC> represents the ASCII "escape" character, 0x1B. Bracketed tags represent modifiable decimal parameters; eg. {ROW} would be replaced by a row number.
- Device Status
- The following codes are used for reporting terminal/display settings, and vary depending on the implementation:
- Query Device Code <ESC>[c
- Requests a Report Device Code response from the device.
- Report Device Code <ESC>[{code}0c
- Generated by the device in response to Query Device Code request.
- Query Device Status <ESC>[5n
- Requests a Report Device Status response from the device.
- Report Device OK <ESC>[0n
- Generated by the device in response to a Query Device Status request; indicates that device is functioning correctly.
- Report Device Failure <ESC>[3n
- Generated by the device in response to a Query Device Status request; indicates that device is functioning improperly.
- Query Cursor Position <ESC>[6n
- Requests a Report Cursor Position response from the device.
- Report Cursor Position <ESC>[{ROW};{COLUMN}R
- Generated by the device in response to a Query Cursor Position request; reports current cursor position.
- Terminal Setup
- The h and l codes are used for setting terminal/display mode, and vary depending on the implementation. Line Wrap is one of the few setup codes that tend to be used consistently:
- Reset Device <ESC>c
- Reset all terminal settings to default.
- Enable Line Wrap <ESC>[7h
- Text wraps to next line if longer than the length of the display area.
- Disable Line Wrap <ESC>[7l
- Disables line wrapping.
- Fonts
- Some terminals support multiple fonts: normal/bold, swiss/italic, etc. There are a variety of special codes for certain terminals; the following are fairly standard:
- Font Set G0 <ESC>(
- Set default font.
- Font Set G1 <ESC>)
- Set alternate font.
- Cursor Control
- Cursor Home <ESC>[{ROW};{COLUMN}H
- Sets the cursor position where subsequent text will begin. If no row/column parameters are provided (ie. <ESC>[H), the cursor will move to the home position, at the upper left of the screen.
- Cursor Up <ESC>[{COUNT}A
- Moves the cursor up by COUNT rows; the default count is 1.
- Cursor Down <ESC>[{COUNT}B
- Moves the cursor down by COUNT rows; the default count is 1.
- Cursor Forward <ESC>[{COUNT}C
- Moves the cursor forward by COUNT columns; the default count is 1.
- Cursor Backward <ESC>[{COUNT}D
- Moves the cursor backward by COUNT columns; the default count is 1.
- Force Cursor Position <ESC>[{ROW};{COLUMN}f
- Identical to Cursor Home.
- Save Cursor <ESC>[s
- Save current cursor position.
- Unsave Cursor <ESC>[u
- Restores cursor position after a Save Cursor.
- Save Cursor & Attrs <ESC>7
- Save current cursor position.
- Restore Cursor & Attrs <ESC>8
- Restores cursor position after a Save Cursor.
- Scrolling
- Scroll Screen <ESC>[r
- Enable scrolling for entire display.
- Scroll Screen <ESC>[{start};{end}r
- Enable scrolling from row {start} to row {end}.
- Scroll Down <ESC>D
- Scroll display down one line.
- Scroll Up <ESC>M
- Scroll display up one line.
- Tab Control
- Set Tab <ESC>H
- Sets a tab at the current position.
- Clear Tab <ESC>[g
- Clears tab at the current position.
- Clear All Tabs <ESC>[3g
- Clears all tabs.
- Erasing Text
- Erase End of Line <ESC>[K
- Erases from the current cursor position to the end of the current line.
- Erase Start of Line <ESC>[1K
- Erases from the current cursor position to the start of the current line.
- Erase Line <ESC>[2K
- Erases the entire current line.
- Erase Down <ESC>[J
- Erases the screen from the current line down to the bottom of the screen.
- Erase Up <ESC>[1J
- Erases the screen from the current line up to the top of the screen.
- Erase Screen <ESC>[2J
- Erases the screen with the background colour and moves the cursor to home.
- Printing
- Some terminals support local printing:
- Print Screen <ESC>[i
- Print the current screen.
- Print Line <ESC>[1i
- Print the current line.
- Stop Print Log <ESC>[4i
- Disable log.
- Start Print Log <ESC>[5i
- Start log; all received text is echoed to a printer.
- Define Key
- Set Key Definition <ESC>[{key};"{string}"p
- Associates a string of text to a keyboard key. {key} indicates the key by its ASCII value in decimal.
- Set Display Attributes
- Set Attribute Mode <ESC>[{attr1};...;{attrn}m
- Sets multiple display attribute settings. The following lists standard attributes:
- 0 Reset all attributes
- 1 Bright
- 2 Dim
- 4 Underscore
- 5 Blink
- 7 Reverse
- 8 Hidden
- Foreground Colours
- 30 Black
- 31 Red
- 32 Green
- 33 Yellow
- 34 Blue
- 35 Magenta
- 36 Cyan
- 37 White
- Background Colours
- 40 Black
- 41 Red
- 42 Green
- 43 Yellow
- 44 Blue
- 45 Magenta
- 46 Cyan
- 47 White
- [ Top | Status | Setup | Fonts | Cursor | Scrolling | Tabs | Erasing | Printing | Keyboard | Colours ]
-
-
|