FreeBSD Manual Pages
foot-ctlseqs(7) Miscellaneous Information Manual foot-ctlseqs(7) 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 equiv- alent 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. Con- | | | | | tent 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 sup- | | | | | ported values for C as in G0. | +----------+---------+--------+---------------------------------------+ | \E * C | SCS | VT220 | Designate G2 character set. Same sup- | | | | | ported values for C as in G0. | +----------+---------+--------+---------------------------------------+ | \E + C | SCS | VT220 | Designate G3 character set. Same sup- | | | | | ported 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, including styled underlines | +-----------+---------------------------------------------------------+ | 5 | Blink | +-----------+---------------------------------------------------------+ | 7 | Reverse video; swap foreground and background colors | +-----------+---------------------------------------------------------+ | 8 | Conceal; text is not visible, but is copiable | +-----------+---------------------------------------------------------+ | 9 | Crossed-out/strike | +-----------+---------------------------------------------------------+ | 21 | Double underline | +-----------+---------------------------------------------------------+ | 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 | Select foreground color, 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 | Select background color, see "indexed and RGB colors" | | | below | +-----------+---------------------------------------------------------+ | 49 | Use the default background color (background in | | | foot.ini(5)) | +-----------+---------------------------------------------------------+ | 58 | Select underline color, see "indexed and RGB colors" | | | below | +-----------+---------------------------------------------------------+ | 59 | Use the default underline color | +-----------+---------------------------------------------------------+ | 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 fol- lowing 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) | +-----------+-------------+-------------------------------------------+ | 66 | VT320 | Numeric keypad mode (DECNKM); same as | | | | DECKPAM/DECKPNM when enabled/disabled | +-----------+-------------+-------------------------------------------+ | 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 op- | | | | tion) | +-----------+-------------+-------------------------------------------+ | 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, DE- | | | | CRST=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 delim- | | | | iters (bracketed paste mode) | +-----------+-------------+-------------------------------------------+ | 2026 | terminal-wg | Application synchronized updates mode | +-----------+-------------+-------------------------------------------+ | 2027 | contour | Grapheme cluster processing | +-----------+-------------+-------------------------------------------+ | 2031 | contour | Request color theme updates | +-----------+-------------+-------------------------------------------+ | 2048 | TODO | In-band window resize notifications | +-----------+-------------+-------------------------------------------+ | 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 ma- nipulation sequences. The generic format is: \E[ Ps ; Ps ; Ps t +-------------+-------------+-----------------------------------------+ | Parameter 1 | Parameter 2 | Description | +-------------+-------------+-----------------------------------------+ | 11 | - | Report if window is iconified. Foot al- | | | | ways reports 1 - not iconified. | +-------------+-------------+-----------------------------------------+ | 13 | - | Report window position. Foot always re- | | | | ports (0,0), due to Wayland limita- | | | | tions. | +-------------+-------------+-----------------------------------------+ | 13 | 2 | Report text area position. Foot always | | | | reports (0,0) due to Wayland limita- | | | | tions. | +-------------+-------------+-----------------------------------------+ | 14 | - | Report text area size, in pixels. Foot | | | | reports the grid size, excluding the | | | | margins. | +-------------+-------------+-----------------------------------------+ | 14 | 2 | Report window size, in pixels. Foot re- | | | | ports 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. | +-------------+-------------+-----------------------------------------+ | 20 | - | Report icon label. | +-------------+-------------+-----------------------------------------+ | 22 | - | Push window title+icon. | +-------------+-------------+-----------------------------------------+ | 22 | 1 | Push window icon. | +-------------+-------------+-----------------------------------------+ | 22 | 2 | Push window title. | +-------------+-------------+-----------------------------------------+ | 23 | - | Pop window title+icon. | +-------------+-------------+-----------------------------------------+ | 23 | 1 | Pop window icon. | +-------------+-------------+-----------------------------------------+ | 23 | 2 | Pop window title. | +-------------+-------------+-----------------------------------------+ Other +------------------+------------------+------------+------------------+ | Parameter | Name | Origin | Description | +------------------+------------------+------------+------------------+ | \E[ Ps c | DA | VT100 | Send primary de- | | | | | vice 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 posi- | | | | | tion - move cur- | | | | | sor to row ; | | | | | column. | +------------------+------------------+------------+------------------+ | \E[ Ps ; Ps H | CUP | VT100 | Cursor position | | | | | - move cursor to | | | | | row ; column. | +------------------+------------------+------------+------------------+ | \E[ Ps J | ED | VT100 | Erase in dis- | | | | | play. 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 | | | | | (Insertion Re- | | | | | placement Mode). | | | | | All other values | | | | | of Pm are unsup- | | | | | ported. | +------------------+------------------+------------+------------------+ | \E[ Pm l | RM | VT100 | Reset mode. Pm=4 | | | | | -> disable IRM | | | | | (Insertion Re- | | | | | placement Mode). | | | | | All other values | | | | | of Pm are unsup- | | | | | ported. | +------------------+------------------+------------+------------------+ | \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 char- | | | | | acters. | +------------------+------------------+------------+------------------+ | \E[ Ps @ | ICH | VT220 | Insert Ps blank | | | | | characters. | +------------------+------------------+------------+------------------+ | \E[ Ps X | ECH | VT220 | Erase Ps charac- | | | | | ters. | +------------------+------------------+------------+------------------+ | \E[ > c | DA2 | VT220 | Send secondary | | | | | device attrib- | | | | | utes. Foot re- | | | | | sponds with "I'm | | | | | a VT220 and | | | | | here's my ver- | | | | | sion number". | +------------------+------------------+------------+------------------+ | \E[ ! p | DECSTR | VT220 | Soft terminal | | | | | reset. | +------------------+------------------+------------+------------------+ | \E[ ? Ps $ p | DECRQM | VT320 | Request status | | | | | of DEC private | | | | | mode. The Ps pa- | | | | | rameter corre- | | | | | sponds to one of | | | | | the values men- | | | | | tioned in the | | | | | "Private Modes" | | | | | section above | | | | | (as set with | | | | | DECSET/DECRST). | +------------------+------------------+------------+------------------+ | \E[ Ps $ p | DECRQM | VT320 | Request status | | | | | of ECMA-48/ANSI | | | | | mode. See the | | | | | descriptions for | | | | | SM/RM above for | | | | | recognized Ps | | | | | values. | +------------------+------------------+------------+------------------+ | \E[ Pt ; Pl ; Pb | DECCARA | VT400 | Change attrib- | | ; Pr ; Pm $ r | | | utes in rectan- | | | | | gular area. Pt, | | | | | Pl, Pb and Pr | | | | | denotes the rec- | | | | | tangle, Pm de- | | | | | notes the SGR | | | | | attributes. | +------------------+------------------+------------+------------------+ | \E[ Pt ; Pl ; Pb | DECRARA | VT400 | Invert attrib- | | ; Pr ; Pm $ t | | | utes in rectan- | | | | | gular area. Pt, | | | | | Pl, Pb and Pr | | | | | denotes the rec- | | | | | tangle, Pm de- | | | | | notes the SGR | | | | | attributes. | +------------------+------------------+------------+------------------+ | \E[ Pt ; Pl ; Pb | DECCRA | VT400 | Copy rectangular | | ; Pr ; Pp ; Pt ; | | | area. Pt, Pl, | | Pl ; Pp $ v | | | Pb and Pr de- | | | | | notes the rec- | | | | | tangle, Pt and | | | | | Pl denotes the | | | | | target location. | +------------------+------------------+------------+------------------+ | \E[ Pc ; Pt ; Pl | DECFRA | VT420 | Fill rectangular | | ; Pb ; Pr $ x | | | area. Pc is the | | | | | character to | | | | | use, Pt, Pl, Pb | | | | | and Pr denotes | | | | | the rectangle. | +------------------+------------------+------------+------------------+ | \E[ Pt ; Pl ; Pb | DECERA | VT400 | Erase rectangu- | | ; Pr $ z | | | lar area. Pt, | | | | | Pl, Pb and Pr | | | | | denotes the rec- | | | | | tangle. | +------------------+------------------+------------+------------------+ | \E[ Ps T | SD | VT420 | Scroll down Ps | | | | | lines. | +------------------+------------------+------------+------------------+ | \E[ s | SCOSC | SCO, VT510 | Save cursor po- | | | | | sition. | +------------------+------------------+------------+------------------+ | \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 attrib- | | | | | utes. Foot re- | | | | | sponds with | | | | | "FOOT", in hexa- | | | | | decimal. | +------------------+------------------+------------+------------------+ | \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 posi- | | | | | tion relative - | | | | | move cursor to | | | | | the right Pm | | | | | times. | +------------------+------------------+------------+------------------+ | \E[ Ps E | CNL | ECMA-48 | Cursor next line | | | | | - move the cur- | | | | | sor down Ps | | | | | times. | +------------------+------------------+------------+------------------+ | \E[ Ps F | CPL | ECMA-48 | Cursor preceding | | | | | line - move the | | | | | cursor up Ps | | | | | times. | +------------------+------------------+------------+------------------+ | \E[ Pm ` | HPA | ECMA-48 | Character posi- | | | | | tion 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 pre- | | | | | ceding printable | | | | | character Ps | | | | | times. | +------------------+------------------+------------+------------------+ | \E[ ? Pi ; Pa ; | XTSMGRAPHICS | xterm | Set or request | | Pv S | | | sixel attrib- | | | | | utes. | +------------------+------------------+------------+------------------+ | \E[ > Ps q | XTVERSION | xterm | Ps=0 -> report | | | | | terminal name | | | | | and version, in | | | | | the form | | | | | \EP>|foot(ver- | | | | | sion)\E\. | +------------------+------------------+------------+------------------+ | \E[ > 4 ; Pv m | XTMODKEYS | xterm | Set level of the | | | | | modifyOtherKeys | | | | | property to Pv. | | | | | Note that foot | | | | | only supports | | | | | level 1 and 2, | | | | | where level 1 is | | | | | the default set- | | | | | ting. | +------------------+------------------+------------+------------------+ | \E[ ? Pp m | XTQMODKEYS | xterm | Query key modi- | | | | | fier options | +------------------+------------------+------------+------------------+ | \E[ > 4 n | <unnamed> | xterm | Resets the modi- | | | | | fyOtherKeys | | | | | property to | | | | | level 1. Note | | | | | that in foot, | | | | | this sequence | | | | | does not com- | | | | | pletely disable | | | | | modifyOtherKeys, | | | | | since foot only | | | | | supports level 1 | | | | | and level 2 (and | | | | | not level 0). | +------------------+------------------+------------+------------------+ | \E[ ? u | <unnamed> | kitty | Query current | | | | | values of the | | | | | Kitty keyboard | | | | | flags. | +------------------+------------------+------------+------------------+ | \E[ > flags u | <unnamed> | kitty | Push a new en- | | | | | try, flags, to | | | | | the Kitty key- | | | | | board stack. | +------------------+------------------+------------+------------------+ | \E[ < number u | <unnamed> | kitty | Pop number of | | | | | entries from the | | | | | Kitty keyboard | | | | | stack. | +------------------+------------------+------------+------------------+ | \E[ = flags ; | <unnamed> | kitty | Update current | | mode u | | | Kitty keyboard | | | | | flags, according | | | | | to mode. | +------------------+------------------+------------+------------------+ | \E[ # P | XTPUSHCOLORS | xterm | Push current | | | | | color palette | | | | | onto stack | +------------------+------------------+------------+------------------+ | \E[ # Q | XTPOPCOLORS | xterm | Pop color | | | | | palette from | | | | | stack | +------------------+------------------+------------+------------------+ | \E[ # R | XTREPORTCOLORS | xterm | Report the cur- | | | | | rent entry on | | | | | the palette | | | | | stack, and the | | | | | number of | | | | | palettes stored | | | | | on the stack. | +------------------+------------------+------------+------------------+ | \E[ ? 996 n | Query the cur- | contour | The current | | | rent (color) | | color theme mode | | | theme mode | | (light or dark) | | | | | is reported as | | | | | CSI ? 997 ; 1|2 | | | | | n, where 1 means | | | | | dark and 2 | | | | | light. By con- | | | | | vention, the | | | | | primary theme in | | | | | foot is consid- | | | | | ered dark, and | | | | | the alternative | | | | | theme light. | +------------------+------------------+------------+------------------+ 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. | +---------------------+------------+----------------------------------+ | \E] 1 ; Pt \E\ | xterm | Set window icon to Pt. | +---------------------+------------+----------------------------------+ | \E] 2 ; Pt \E\ | xterm | Set window title to Pt | +---------------------+------------+----------------------------------+ | \E] 4 ; c ; spec | xterm | Change color number c to spec, | | \E\ | | where spec is a color in XParse- | | | | Color 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 in the | | | | format file://<hostname>/<path>. | | | | hostname must refer to your lo- | | | | cal host. | +---------------------+------------+----------------------------------+ | \E] 8 ; id=ID ; Uri | VTE+iTerm2 | Hyperlink (a.k.a HTML-like an- | | \E\ | | chors). id=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 no- | | | | tify in foot.ini(5). | +---------------------+------------+----------------------------------+ | \E] 10 ; spec \E\ | xterm | Change the default foreground | | | | color to spec, a color in XPar- | | | | seColor format. | +---------------------+------------+----------------------------------+ | \E] 11 ; spec \E\ | xterm | Change the default background | | | | color to spec, a color in XPar- | | | | seColor 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 XPar- | | | | seColor format. | +---------------------+------------+----------------------------------+ | \E] 19 ; spec \E\ | xterm | Change selection foreground | | | | color to spec, a color in XPar- | | | | seColor format. | +---------------------+------------+----------------------------------+ | \E] 22 ; xcursor- | xterm | Sets the xcursor pointer. An | | pointer-name \E\ | | empty name, or an invalid name | | | | resets it. | +---------------------+------------+----------------------------------+ | \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 | xterm | Copy Pd (base64 encoded text) to | | \E\ | | the clipboard. Pc denotes the | | | | target: c targets the clipboard | | | | and s and p the primary selec- | | | | tion. | +---------------------+------------+----------------------------------+ | \E] 66 ; params ; | kitty | Text sizing protocol (only 'w', | | text \E\ | | width, supported) | +---------------------+------------+----------------------------------+ | \E] 99 ; params ; | kitty | Desktop notification; uses desk- | | payload \E\ | | top-notifications.command in | | | | foot.ini(5). | +---------------------+------------+----------------------------------+ | \E] 104 ; c \E\ | xterm | Reset color number c (multiple | | | | semicolon separated c values may | | | | be provided), or all colors (ex- | | | | cluding the default fore- | | | | ground/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] 133 ; A \E\ | FinalTerm | Mark start of shell prompt | +---------------------+------------+----------------------------------+ | \E] 133 ; C \E\ | FinalTerm | Mark start of command output | +---------------------+------------+----------------------------------+ | \E] 133 ; D \E\ | FinalTerm | Mark end of command output | +---------------------+------------+----------------------------------+ | \E] 176 ; app-id | foot | Set app ID. app-id is optional; | | \E\ | | if assigned, the terminal window | | | | App ID will be set to the value. | | | | An empty App ID resets the value | | | | to the default. | +---------------------+------------+----------------------------------+ | \E] 555 \E\ | foot | Flash the entire terminal (foot | | | | extension) | +---------------------+------------+----------------------------------+ | \E] 777;notify;ti- | urxvt | Desktop notification, uses desk- | | tle;msg \E\ | | top-notifications.command 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 cur- | | | sor position | +----------------------------+----------------------------------------+ | \EP $ q <query> \E\ | Request selection or setting (DE- | | | CRQSS). Implemented queries: DECSTBM, | | | SGR and DECSCUSR. | +----------------------------+----------------------------------------+ | \EP = C s \E\ | Begin (C=1) or end (C=2) application | | | synchronized updates. This sequence is | | | supported for compatibility reasons, | | | but it's recommended to use private | | | mode 2026 (see above) instead. | +----------------------------+----------------------------------------+ | \EP + q <hex encoded capa- | Query builtin terminfo database | | bility name> \E\ | (XTGETTCAP) | +----------------------------+----------------------------------------+ FOOTNOTE Foot does not support 8-bit control characters ("C1"). 2025-11-01 foot-ctlseqs(7)
NAME | DESCRIPTION | Control characters | Sequences beginning with ESC | CSI | OSC | DCS | FOOTNOTE
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=foot-ctlseqs&sektion=7&manpath=FreeBSD+Ports+15.0>
