Provided by: foot_1.11.0-2_amd64
NAME
foot-ctlseqs - terminal control sequences supported by foot
DESCRIPTION
This document describes all the control sequences supported by foot. • Control characters • Sequences beginning with ESC • CSI - Control Sequence Introducer - SGR - Indexed and RGB colors (256-color palette and 24-bit colors) - Private modes - Window manipulation - Other • OSC - Operating System Command • DCS - Device Control String
Control characters
┌─────────┬──────┬──────────────────────────┐ │Sequence │ Name │ Description │ ├─────────┼──────┼──────────────────────────┤ │\a │ BEL │ Depends on what bell in │ │ │ │ foot.ini(5) is set to. │ ├─────────┼──────┼──────────────────────────┤ │\b │ BS │ Backspace; move the │ │ │ │ cursor left one step. │ │ │ │ Wrap if bw is enabled. │ ├─────────┼──────┼──────────────────────────┤ │\t │ HT │ Horizontal tab; move the │ │ │ │ cursor to the next tab │ │ │ │ stop. │ ├─────────┼──────┼──────────────────────────┤ │\n │ LF │ Line feed; move the │ │ │ │ cursor down one step, or │ │ │ │ scroll content up if at │ │ │ │ the bottom line. │ ├─────────┼──────┼──────────────────────────┤ │\v │ VT │ Vertical tab; identical │ │ │ │ to LF. │ ├─────────┼──────┼──────────────────────────┤ │\f │ FF │ Form feed; identical to │ │ │ │ LF. │ ├─────────┼──────┼──────────────────────────┤ │\r │ CR │ Carriage ret; move the │ │ │ │ cursor to the leftmost │ │ │ │ column. │ ├─────────┼──────┼──────────────────────────┤ │\x0E │ SO │ Shift out; select the G1 │ │ │ │ character set. │ ├─────────┼──────┼──────────────────────────┤ │\x0F │ SI │ Shift in; select the G0 │ │ │ │ character set. │ └─────────┴──────┴──────────────────────────┘
Sequences beginning with ESC
Note: this table excludes sequences where ESC is part of a 7-bit equivalent to 8-bit C1 controls. ┌─────────┬─────────┬────────┬─────────────────────┐ │Sequence │ Name │ Origin │ Description │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E 7 │ DECSC │ VT100 │ Save cursor │ │ │ │ │ position. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E 8 │ DECRC │ VT100 │ Restore cursor │ │ │ │ │ position. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E c │ RIS │ VT100 │ Reset terminal to │ │ │ │ │ initial state. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E D │ IND │ VT100 │ Line feed; move the │ │ │ │ │ cursor down one │ │ │ │ │ step, or scroll │ │ │ │ │ content up if at │ │ │ │ │ the bottom margin. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E E │ NEL │ VT100 │ Next line; move the │ │ │ │ │ cursor down one │ │ │ │ │ step, and to the │ │ │ │ │ first column. │ │ │ │ │ Content is scrolled │ │ │ │ │ up if at the bottom │ │ │ │ │ line. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E H │ HTS │ VT100 │ Set one horizontal │ │ │ │ │ tab stop at the │ │ │ │ │ current position. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E M │ RI │ VT100 │ Reverse index; move │ │ │ │ │ the cursor up one │ │ │ │ │ step, or scroll │ │ │ │ │ content down if at │ │ │ │ │ the top margin. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E N │ SS2 │ VT220 │ Single shift select │ │ │ │ │ of G2 character set │ │ │ │ │ (affects next │ │ │ │ │ character only). │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E O │ SS3 │ VT220 │ Single shift select │ │ │ │ │ of G3 character set │ │ │ │ │ (affects next │ │ │ │ │ character only). │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E = │ DECKPAM │ VT100 │ Switch keypad to │ │ │ │ │ application mode. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E > │ DECKPNM │ VT100 │ Switch keypad to │ │ │ │ │ numeric mode. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E ( C │ SCS │ VT100 │ Designate G0 │ │ │ │ │ character set. │ │ │ │ │ Supported values │ │ │ │ │ for C are: 0 (DEC │ │ │ │ │ Special Character │ │ │ │ │ and Line Drawing │ │ │ │ │ Set), and B │ │ │ │ │ (USASCII). │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E ) C │ SCS │ VT100 │ Designate G1 │ │ │ │ │ character set. Same │ │ │ │ │ supported values │ │ │ │ │ for C as in G0. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E * C │ SCS │ VT220 │ Designate G2 │ │ │ │ │ character set. Same │ │ │ │ │ supported values │ │ │ │ │ for C as in G0. │ ├─────────┼─────────┼────────┼─────────────────────┤ │\E + C │ SCS │ VT220 │ Designate G3 │ │ │ │ │ character set. Same │ │ │ │ │ supported values │ │ │ │ │ for C as in G0. │ └─────────┴─────────┴────────┴─────────────────────┘
CSI
All sequences begin with \E[, sometimes abbreviated "CSI". Spaces are used in the sequence strings to make them easier to read, but are not actually part of the string (i.e. \E[ 1 m is really \E[1m). SGR All SGR sequences are in the form \E[ N m, where N is a decimal number - the parameter. Multiple parameters can be combined in a single CSI sequence by separating them with semicolons: \E[ 1;2;3 m. ┌──────────┬──────────────────────────────────┐ │Parameter │ Description │ ├──────────┼──────────────────────────────────┤ │0 │ Reset all attributes │ ├──────────┼──────────────────────────────────┤ │1 │ Bold │ ├──────────┼──────────────────────────────────┤ │2 │ Dim │ ├──────────┼──────────────────────────────────┤ │3 │ Italic │ ├──────────┼──────────────────────────────────┤ │4 │ Underline │ ├──────────┼──────────────────────────────────┤ │5 │ Blink │ ├──────────┼──────────────────────────────────┤ │7 │ Reverse video; swap foreground │ │ │ and background colors │ ├──────────┼──────────────────────────────────┤ │8 │ Conceal; text is not visible, │ │ │ but is copiable │ ├──────────┼──────────────────────────────────┤ │9 │ Crossed-out/strike │ ├──────────┼──────────────────────────────────┤ │22 │ Disable bold and dim │ ├──────────┼──────────────────────────────────┤ │23 │ Disable italic │ ├──────────┼──────────────────────────────────┤ │24 │ Disable underline │ ├──────────┼──────────────────────────────────┤ │25 │ Disable blink │ ├──────────┼──────────────────────────────────┤ │27 │ Disable reverse video │ ├──────────┼──────────────────────────────────┤ │28 │ Disable conceal │ ├──────────┼──────────────────────────────────┤ │29 │ Disable crossed-out │ ├──────────┼──────────────────────────────────┤ │30-37 │ Select foreground color (using │ │ │ regularN in foot.ini(5)) │ ├──────────┼──────────────────────────────────┤ │38 │ See "indexed and RGB colors" │ │ │ below │ ├──────────┼──────────────────────────────────┤ │39 │ Use the default foreground color │ │ │ (foreground in foot.ini(5)) │ ├──────────┼──────────────────────────────────┤ │40-47 │ Select background color (using │ │ │ regularN in foot.ini(5)) │ ├──────────┼──────────────────────────────────┤ │48 │ See "indexed and RGB colors" │ │ │ below │ ├──────────┼──────────────────────────────────┤ │49 │ Use the default background color │ │ │ (background in foot.ini(5)) │ ├──────────┼──────────────────────────────────┤ │90-97 │ Select foreground color (using │ │ │ brightN in foot.ini(5)) │ ├──────────┼──────────────────────────────────┤ │100-107 │ Select background color (using │ │ │ brightN in foot.ini(5)) │ └──────────┴──────────────────────────────────┘ Indexed and RGB colors (256-color palette and 24-bit colors) Foot supports both the new sub-parameter based variants, and the older parameter based variants for setting foreground and background colors. Indexed colors: • \E[ 38 : 5 : idx m • \E[ 38 ; 5 ; idx m RGB colors: • \E[ 38 : 2 : cs : r : g : b m • \E[ 38 : 2 : r : g : b m • \E[ 38 ; 2 ; r ; g ; b m The first variant is the "correct" one (and foot also recognizes, but ignores, the optional tolerance parameters). The second one is allowed since many programs "forget" the color space ID, cs. The sub-parameter based variants are preferred, and are what foot's terminfo(5) entry uses. Private Modes There are several Boolean-like "modes" that affect certain aspects of the terminal's behavior. These modes can be manipulated with the following 4 escape sequences: ┌───────────┬───────────┬──────────────────────┐ │Sequence │ Name │ Description │ ├───────────┼───────────┼──────────────────────┤ │\E[ ? Pm h │ DECSET │ Enable private mode │ ├───────────┼───────────┼──────────────────────┤ │\E[ ? Pm l │ DECRST │ Disable private mode │ ├───────────┼───────────┼──────────────────────┤ │\E[ ? Pm s │ XTSAVE │ Save private mode │ ├───────────┼───────────┼──────────────────────┤ │\E[ ? Pm r │ XTRESTORE │ Restore private mode │ └───────────┴───────────┴──────────────────────┘ The Pm parameter in the above sequences denotes a numerical ID that corresponds to one of the following modes: ┌──────────┬─────────────┬──────────────────────────┐ │Parameter │ Origin │ Description │ ├──────────┼─────────────┼──────────────────────────┤ │1 │ VT100 │ Cursor keys mode │ │ │ │ (DECCKM) │ ├──────────┼─────────────┼──────────────────────────┤ │5 │ VT100 │ Reverse video (DECSCNM) │ ├──────────┼─────────────┼──────────────────────────┤ │6 │ VT100 │ Origin mode (DECOM) │ ├──────────┼─────────────┼──────────────────────────┤ │7 │ VT100 │ Auto-wrap mode (DECAWM) │ ├──────────┼─────────────┼──────────────────────────┤ │12 │ AT&T 610 │ Cursor blink │ ├──────────┼─────────────┼──────────────────────────┤ │25 │ VT220 │ Cursor visibility │ │ │ │ (DECTCEM) │ ├──────────┼─────────────┼──────────────────────────┤ │45 │ xterm │ Reverse-wraparound mode │ ├──────────┼─────────────┼──────────────────────────┤ │47 │ xterm │ Same as 1047 (see below) │ ├──────────┼─────────────┼──────────────────────────┤ │1000 │ xterm │ Send mouse x/y on button │ │ │ │ press/release │ ├──────────┼─────────────┼──────────────────────────┤ │1001 │ xterm │ Use hilite mouse │ │ │ │ tracking │ ├──────────┼─────────────┼──────────────────────────┤ │1002 │ xterm │ Use cell motion mouse │ │ │ │ tracking │ ├──────────┼─────────────┼──────────────────────────┤ │1003 │ xterm │ Use all motion mouse │ │ │ │ tracking │ ├──────────┼─────────────┼──────────────────────────┤ │1004 │ xterm │ Send FocusIn/FocusOut │ │ │ │ events │ ├──────────┼─────────────┼──────────────────────────┤ │1006 │ xterm │ SGR mouse mode │ ├──────────┼─────────────┼──────────────────────────┤ │1007 │ xterm │ Alternate scroll mode │ ├──────────┼─────────────┼──────────────────────────┤ │1015 │ urxvt │ urxvt mouse mode │ ├──────────┼─────────────┼──────────────────────────┤ │1016 │ xterm │ SGR-Pixels mouse mode │ ├──────────┼─────────────┼──────────────────────────┤ │1034 │ xterm │ 8-bit Meta mode │ ├──────────┼─────────────┼──────────────────────────┤ │1035 │ xterm │ Num Lock modifier (see │ │ │ │ xterm numLock option) │ ├──────────┼─────────────┼──────────────────────────┤ │1036 │ xterm │ Send ESC when Meta │ │ │ │ modifies a key (see │ │ │ │ xterm metaSendsEscape │ │ │ │ option) │ ├──────────┼─────────────┼──────────────────────────┤ │1042 │ xterm │ Perform action for BEL │ │ │ │ character (see bell in │ │ │ │ foot.ini(5)) │ ├──────────┼─────────────┼──────────────────────────┤ │1047 │ xterm │ Use alternate screen │ │ │ │ buffer │ ├──────────┼─────────────┼──────────────────────────┤ │1048 │ xterm │ Save/restore cursor │ │ │ │ (DECSET=save, │ │ │ │ DECRST=restore) │ ├──────────┼─────────────┼──────────────────────────┤ │1049 │ xterm │ Equivalent to 1048 and │ │ │ │ 1047 combined │ ├──────────┼─────────────┼──────────────────────────┤ │1070 │ xterm │ Use private color │ │ │ │ registers for each sixel │ ├──────────┼─────────────┼──────────────────────────┤ │2004 │ xterm │ Wrap pasted text with │ │ │ │ start/end delimiters │ │ │ │ (bracketed paste mode) │ ├──────────┼─────────────┼──────────────────────────┤ │2026 │ terminal-wg │ Application synchronized │ │ │ │ updates mode │ ├──────────┼─────────────┼──────────────────────────┤ │8452 │ xterm │ Position cursor to the │ │ │ │ right of sixels, instead │ │ │ │ of on the next line │ ├──────────┼─────────────┼──────────────────────────┤ │737769 │ foot │ Input Method Editor │ │ │ │ (IME) mode │ └──────────┴─────────────┴──────────────────────────┘ Window manipulation Foot implements a sub-set of XTerm's (originally dtterm's) window manipulation sequences. The generic format is: \E[ Ps ; Ps ; Ps t ┌────────────┬─────────────┬──────────────────────────┐ │Parameter 1 │ Parameter 2 │ Description │ ├────────────┼─────────────┼──────────────────────────┤ │11 │ - │ Report if window is │ │ │ │ iconified. Foot always │ │ │ │ reports 1 - not │ │ │ │ iconified. │ ├────────────┼─────────────┼──────────────────────────┤ │13 │ - │ Report window position. │ │ │ │ Foot always reports │ │ │ │ (0,0), due to Wayland │ │ │ │ limitations. │ ├────────────┼─────────────┼──────────────────────────┤ │13 │ 2 │ Report text area │ │ │ │ position. Foot always │ │ │ │ reports (0,0) due to │ │ │ │ Wayland limitations. │ ├────────────┼─────────────┼──────────────────────────┤ │14 │ - │ Report text area size, │ │ │ │ in pixels. Foot reports │ │ │ │ the grid size, excluding │ │ │ │ the margins. │ ├────────────┼─────────────┼──────────────────────────┤ │14 │ 2 │ Report window size, in │ │ │ │ pixels. Foot reports the │ │ │ │ grid size plus the │ │ │ │ margins. │ ├────────────┼─────────────┼──────────────────────────┤ │15 │ - │ Report the screen size, │ │ │ │ in pixels. │ ├────────────┼─────────────┼──────────────────────────┤ │16 │ - │ Report the cell size, in │ │ │ │ pixels. │ ├────────────┼─────────────┼──────────────────────────┤ │18 │ - │ Report text area size, │ │ │ │ in characters. │ ├────────────┼─────────────┼──────────────────────────┤ │19 │ - │ Report screen size, in │ │ │ │ characters. │ ├────────────┼─────────────┼──────────────────────────┤ │22 │ - │ Push window title+icon. │ │ │ │ Foot does not support │ │ │ │ pushing the icon. │ ├────────────┼─────────────┼──────────────────────────┤ │22 │ 2 │ Push window title. │ ├────────────┼─────────────┼──────────────────────────┤ │23 │ - │ Pop window title+icon. │ │ │ │ Foot does not support │ │ │ │ popping the icon. │ ├────────────┼─────────────┼──────────────────────────┤ │23 │ 2 │ Pop window title. │ └────────────┴─────────────┴──────────────────────────┘ Other ┌───────────────────┬──────────────┬────────────┬────────────────────────┐ │Parameter │ Name │ Origin │ Description │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps c │ DA │ VT100 │ Send primary device │ │ │ │ │ attributes. Foot │ │ │ │ │ responds with "I'm │ │ │ │ │ a VT220 with sixel │ │ │ │ │ and ANSI color │ │ │ │ │ support". │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps A │ CUU │ VT100 │ Cursor up - move │ │ │ │ │ cursor up Ps times. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps B │ CUD │ VT100 │ Cursor down - move │ │ │ │ │ cursor down Ps │ │ │ │ │ times. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps C │ CUF │ VT100 │ Cursor forward - │ │ │ │ │ move cursor to the │ │ │ │ │ right Ps times. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps D │ CUB │ VT100 │ Cursor backward - │ │ │ │ │ move cursor to the │ │ │ │ │ left Ps times. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps g │ TBC │ VT100 │ Tab clear. Ps=0 -> │ │ │ │ │ clear current │ │ │ │ │ column. Ps=3 -> │ │ │ │ │ clear all. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps ; Ps f │ HVP │ VT100 │ Horizontal and │ │ │ │ │ vertical position - │ │ │ │ │ move cursor to row │ │ │ │ │ ; column. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps ; Ps H │ CUP │ VT100 │ Cursor position - │ │ │ │ │ move cursor to row │ │ │ │ │ ; column. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps J │ ED │ VT100 │ Erase in display. │ │ │ │ │ Ps=0 -> below │ │ │ │ │ cursor. Ps=1 -> │ │ │ │ │ above │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps K │ EL │ VT100 │ Erase in line. Ps=0 │ │ │ │ │ -> right of cursor. │ │ │ │ │ Ps=1 -> left of │ │ │ │ │ cursor. Ps=2 -> │ │ │ │ │ all. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Pm h │ SM │ VT100 │ Set mode. Pm=4 -> │ │ │ │ │ enable IRM (insert │ │ │ │ │ mode). All other │ │ │ │ │ values of Pm are │ │ │ │ │ unsupported. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Pm l │ RM │ VT100 │ Reset mode. Pm=4 -> │ │ │ │ │ disable IRM (insert │ │ │ │ │ mode). All other │ │ │ │ │ values of Pm are │ │ │ │ │ unsupported. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps n │ DSR │ VT100 │ Device status │ │ │ │ │ report. Ps=5 -> │ │ │ │ │ device status. Ps=6 │ │ │ │ │ -> cursor position. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps L │ IL │ VT220 │ Insert Ps lines. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps M │ DL │ VT220 │ Delete Ps lines. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps P │ DCH │ VT220 │ Delete Ps │ │ │ │ │ characters. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps @ │ ICH │ VT220 │ Insert Ps blank │ │ │ │ │ characters. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps X │ ECH │ VT220 │ Erase Ps │ │ │ │ │ characters. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ > c │ DA2 │ VT220 │ Send secondary │ │ │ │ │ device attributes. │ │ │ │ │ Foot responds with │ │ │ │ │ "I'm a VT220 and │ │ │ │ │ here's my version │ │ │ │ │ number". │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ ! p │ DECSTR │ VT220 │ Soft terminal │ │ │ │ │ reset. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ ? Ps $ p │ DECRQM │ VT320 │ Request DEC private │ │ │ │ │ mode. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps T │ SD │ VT420 │ Scroll down Ps │ │ │ │ │ lines. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ s │ SCOSC │ SCO, VT510 │ Save cursor │ │ │ │ │ position. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ u │ SCORC │ SCO, VT510 │ Restore cursor │ │ │ │ │ position. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps SP q │ DECSCUSR │ VT510 │ Set cursor style. │ │ │ │ │ In foot, Ps=0 means │ │ │ │ │ "use style from │ │ │ │ │ foot.ini". │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ = Ps c │ DA3 │ VT510 │ send tertiary │ │ │ │ │ device attributes. │ │ │ │ │ Foot responds with │ │ │ │ │ "FOOT", in │ │ │ │ │ hexadecimal. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Pm d │ VPA │ ECMA-48 │ Line position │ │ │ │ │ absolute - move │ │ │ │ │ cursor to line Pm. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Pm e │ VPR │ ECMA-48 │ Line position │ │ │ │ │ relative - move │ │ │ │ │ cursor down Pm │ │ │ │ │ lines. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Pm a │ HPR │ ECMA-48 │ Character position │ │ │ │ │ relative - move │ │ │ │ │ cursor to the right │ │ │ │ │ Pm times. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps E │ CNL │ ECMA-48 │ Cursor next line - │ │ │ │ │ move the cursor │ │ │ │ │ down Ps times. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps F │ CPL │ ECMA-48 │ Cursor preceding │ │ │ │ │ line - move the │ │ │ │ │ cursor up Ps times. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Pm ` │ HPA │ ECMA-48 │ Character position │ │ │ │ │ absolute - move │ │ │ │ │ cursor to column │ │ │ │ │ Pm. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps G │ CHA │ ECMA-48 │ Cursor character │ │ │ │ │ absolute - move │ │ │ │ │ cursor to column │ │ │ │ │ Ps. cursor. Ps=2 -> │ │ │ │ │ all. Ps=3 -> saved │ │ │ │ │ lines. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps S │ SU │ ECMA-48 │ Scroll up Ps lines. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps I │ CHT │ ECMA-48 │ Cursor forward │ │ │ │ │ tabulation Ps tab │ │ │ │ │ stops. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps Z │ CBT │ ECMA-48 │ Cursor backward │ │ │ │ │ tabulation Ps tab │ │ │ │ │ stops. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ Ps b │ REP │ ECMA-48 │ Repeat the │ │ │ │ │ preceding printable │ │ │ │ │ character Ps times. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ ? Pi ; Pa ; Pv │ XTSMGRAPHICS │ xterm │ Set or request │ │S │ │ │ sixel attributes. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ > Ps q │ XTVERSION │ xterm │ Ps=0 -> report │ │ │ │ │ terminal name and │ │ │ │ │ version, in the │ │ │ │ │ form │ │ │ │ │ \EP>|foot(version)\E\. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ ? u │ <unnamed> │ kitty │ Query current values │ │ │ │ │ of the Kitty keyboard │ │ │ │ │ flags. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ > flags u │ <unnamed> │ kitty │ Push a new entry, │ │ │ │ │ flags, to the Kitty │ │ │ │ │ keyboard stack. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ < number u │ <unnamed> │ kitty │ Pop number of entries │ │ │ │ │ from the Kitty │ │ │ │ │ keyboard stack. │ ├───────────────────┼──────────────┼────────────┼────────────────────────┤ │\E[ = flags ; mode │ <unnamed> │ kitty │ Update current Kitty │ │u │ │ │ keyboard flags, │ │ │ │ │ according to mode. │ └───────────────────┴──────────────┴────────────┴────────────────────────┘
OSC
All OSC sequences begin with \E], sometimes abbreviated OSC. ┌─────────────────────────┬────────────┬───────────────────────────┐ │Sequence │ Origin │ Description │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 0 ; Pt \E\ │ xterm │ Set window icon and │ │ │ │ title to Pt (foot does │ │ │ │ not support setting the │ │ │ │ icon) │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 2 ; Pt \E\ │ xterm │ Set window title to Pt │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 4 ; c ; spec \E\ │ xterm │ Change color number c to │ │ │ │ spec, where spec is a │ │ │ │ color in XParseColor │ │ │ │ format. foot only │ │ │ │ supports RGB colors; │ │ │ │ either │ │ │ │ rgb:<red>/<green>/<blue>, │ │ │ │ or the legacy format │ │ │ │ (#rgb). │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 7 ; Uri \E\ │ iTerm2 │ Update the terminal's │ │ │ │ current working │ │ │ │ directory. Newly spawned │ │ │ │ terminals will launch in │ │ │ │ this directory. Uri must │ │ │ │ be on the format │ │ │ │ file://<hostname>/<path>. │ │ │ │ hostname must refer to │ │ │ │ your local host. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 8 ; id=ID ; Uri \E\ │ VTE+iTerm2 │ Hyperlink (a.k.a HTML- │ │ │ │ like anchors). id is │ │ │ │ optional; if assigned, │ │ │ │ all URIs with the same ID │ │ │ │ will be treated as a │ │ │ │ single hyperlink. An │ │ │ │ empty URI closes the │ │ │ │ hyperlink. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 9 ; msg \E\ │ iTerm2 │ Desktop notification, │ │ │ │ uses notify in │ │ │ │ foot.ini(5). │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 10 ; spec \E\ │ xterm │ Change the default │ │ │ │ foreground color to spec, │ │ │ │ a color in XParseColor │ │ │ │ format. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 11 ; spec \E\ │ xterm │ Change the default │ │ │ │ background color to spec, │ │ │ │ a color in XParseColor │ │ │ │ format. Foot implements │ │ │ │ URxvt's transparency │ │ │ │ extension; e.g. │ │ │ │ spec=[75]#ff00ff or │ │ │ │ spec=rgba:ff/00/ff/bf │ │ │ │ (pink with 75% alpha). │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 12 ; spec \E\ │ xterm │ Change cursor color to │ │ │ │ spec, a color in │ │ │ │ XParseColor format. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 17 ; spec \E\ │ xterm │ Change selection │ │ │ │ background color to spec, │ │ │ │ a color in XParseColor │ │ │ │ format. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 19 ; spec \E\ │ xterm │ Change selection │ │ │ │ foreground color to spec, │ │ │ │ a color in XParseColor │ │ │ │ format. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 52 ; Pc ; ? \E\ │ xterm │ Send clipboard data. Pc │ │ │ │ can be either c, s or p. │ │ │ │ c uses the clipboard as │ │ │ │ source, and s and p uses │ │ │ │ the primary selection. │ │ │ │ The response is \E] 52 ; │ │ │ │ Pc ; <base64-encoded │ │ │ │ data> E\, where Pc │ │ │ │ denotes the source used. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 52 ; Pc ; Pd \E\ │ xterm │ Copy Pd (base64 encoded │ │ │ │ text) to the clipboard. │ │ │ │ Pc denotes the target: c │ │ │ │ targets the clipboard and │ │ │ │ s and p the primary │ │ │ │ selection. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 104 ; c \E\ │ xterm │ Reset color number c │ │ │ │ (multiple semicolon │ │ │ │ separated c values may be │ │ │ │ provided), or all colors │ │ │ │ (excluding the default │ │ │ │ foreground/background │ │ │ │ colors) if c is omitted. │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 110 \E\ │ xterm │ Reset default foreground │ │ │ │ color │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 111 \E\ │ xterm │ Reset default background │ │ │ │ color │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 112 \E\ │ xterm │ Reset cursor color │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 117 \E\ │ xterm │ Reset selection │ │ │ │ background color │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 119 \E\ │ xterm │ Reset selection │ │ │ │ foreground color │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 555 \E\ │ foot │ Flash the entire terminal │ │ │ │ (foot extension) │ ├─────────────────────────┼────────────┼───────────────────────────┤ │\E] 777;notify;title;msg │ urxvt │ Desktop notification, │ │\E\ │ │ uses notify in │ │ │ │ foot.ini(5). │ └─────────────────────────┴────────────┴───────────────────────────┘
DCS
All DCS sequences begin with \EP (sometimes abbreviated DCS), and are terminated by \E\ (ST). ┌────────────────────────────────┬─────────────────────────────────┐ │Sequence │ Description │ ├────────────────────────────────┼─────────────────────────────────┤ │\EP q <sixel data> \E\ │ Emit a sixel image at the │ │ │ current cursor position │ ├────────────────────────────────┼─────────────────────────────────┤ │\P $ q <query> \E\ │ Request selection or setting │ │ │ (DECRQSS). Implemented queries: │ │ │ DECSTBM, SGR and DECSCUSR. │ ├────────────────────────────────┼─────────────────────────────────┤ │\EP = 1 s \E\ │ Begin application synchronized │ │ │ updates │ ├────────────────────────────────┼─────────────────────────────────┤ │\EP = 2 s \E\ │ End application synchronized │ │ │ updates │ ├────────────────────────────────┼─────────────────────────────────┤ │\EP + q <hex encoded capability │ │ │name> \ET} T{ Query builtin │ │ │terminfo database (XTGETTCAP) │ │ └────────────────────────────────┴─────────────────────────────────┘
FOOTNOTE
Foot does not support 8-bit control characters ("C1"). 2022-02-21 foot-ctlseqs(7)