Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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		     |
       +-----------+-------------+-------------------------------------------+
       | 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	col- |
       |		  |		   |		| umn. 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	cur- |
       |		  |		   |		| sor. 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 (Inser- |
       |		  |		   |		| tion	 Replacement |
       |		  |		   |		| Mode).  All  other |
       |		  |		   |		| values of  Pm	 are |
       |		  |		   |		| unsupported.	     |
       +------------------+----------------+------------+--------------------+
       | \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 re- |
       |		  |		   |		| port.	Ps=5 ->	 de- |
       |		  |		   |		| vice	status.	Ps=6 |
       |		  |		   |		| ->  cursor   posi- |
       |		  |		   |		| tion.		     |
       +------------------+----------------+------------+--------------------+
       | \E[ Ps	L	  | IL		   | VT220	| Insert Ps lines.   |
       +------------------+----------------+------------+--------------------+
       | \E[ Ps	M	  | DL		   | VT220	| Delete Ps lines.   |
       +------------------+----------------+------------+--------------------+
       | \E[ Ps	P	  | DCH		   | VT220	| Delete  Ps charac- |
       |		  |		   |		| ters.		     |
       +------------------+----------------+------------+--------------------+
       | \E[ Ps	@	  | ICH		   | VT220	| Insert  Ps   blank |
       |		  |		   |		| characters.	     |
       +------------------+----------------+------------+--------------------+
       | \E[ Ps	X	  | ECH		   | VT220	| Erase	 Ps  charac- |
       |		  |		   |		| ters.		     |
       +------------------+----------------+------------+--------------------+
       | \E[ > c	  | DA2		   | VT220	| Send secondary de- |
       |		  |		   |		| vice	 attributes. |
       |		  |		   |		| Foot responds	with |
       |		  |		   |		| "I'm	a  VT220 and |
       |		  |		   |		| here's my  version |
       |		  |		   |		| number".	     |
       +------------------+----------------+------------+--------------------+
       | \E[ ! p	  | DECSTR	   | VT220	| Soft	terminal re- |
       |		  |		   |		| set.		     |
       +------------------+----------------+------------+--------------------+
       | \E[ ? Ps $ p	  | DECRQM	   | VT320	| Request status  of |
       |		  |		   |		| DEC  private mode. |
       |		  |		   |		| The  Ps  parameter |
       |		  |		   |		| corresponds to one |
       |		  |		   |		| of the values	men- |
       |		  |		   |		| tioned    in	 the |
       |		  |		   |		| "Private    Modes" |
       |		  |		   |		| section  above (as |
       |		  |		   |		| set	with	DEC- |
       |		  |		   |		| SET/DECRST).	     |
       +------------------+----------------+------------+--------------------+
       | \E[ Ps	$ p	  | DECRQM	   | VT320	| Request  status of |
       |		  |		   |		| ECMA-48/ANSI mode. |
       |		  |		   |		| See  the  descrip- |
       |		  |		   |		| tions	  for  SM/RM |
       |		  |		   |		| above	 for  recog- |
       |		  |		   |		| nized	Ps values.   |
       +------------------+----------------+------------+--------------------+
       | \E[ Pt	; Pl ; Pb | DECCARA	   | VT400	| Change  attributes |
       | ; Pr ;	Pm $ r	  |		   |		| in	 rectangular |
       |		  |		   |		| area.	 Pt,  Pl, Pb |
       |		  |		   |		| and Pr denotes the |
       |		  |		   |		| rectangle, Pm	 de- |
       |		  |		   |		| notes	 the SGR at- |
       |		  |		   |		| tributes.	     |
       +------------------+----------------+------------+--------------------+
       | \E[ Pt	; Pl ; Pb | DECRARA	   | VT400	| Invert  attributes |
       | ; Pr ;	Pm $ t	  |		   |		| in	 rectangular |
       |		  |		   |		| area.	Pt,  Pl,  Pb |
       |		  |		   |		| and Pr denotes the |
       |		  |		   |		| rectangle,  Pm de- |
       |		  |		   |		| notes	the SGR	 at- |
       |		  |		   |		| tributes.	     |
       +------------------+----------------+------------+--------------------+
       | \E[ Pt	; Pl ; Pb | DECCRA	   | VT400	| Copy	 rectangular |
       | ; Pr ;	Pp ; Pt	; |		   |		| area.	 Pt, Pl,  Pb |
       | Pl ; Pp $ v	  |		   |		| and Pr denotes the |
       |		  |		   |		| rectangle,  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	rec- |
       |		  |		   |		| tangle.	     |
       +------------------+----------------+------------+--------------------+
       | \E[ Pt	; Pl ; Pb | DECERA	   | VT400	| Erase	 rectangular |
       | ; Pr $	z	  |		   |		| area.	 Pt,  Pl, Pb |
       |		  |		   |		| and Pr denotes the |
       |		  |		   |		| rectangle.	     |
       +------------------+----------------+------------+--------------------+
       | \E[ Ps	T	  | SD		   | VT420	| Scroll   down	  Ps |
       |		  |		   |		| lines.	     |
       +------------------+----------------+------------+--------------------+
       | \E[ s		  | SCOSC	   | SCO, VT510	| Save	cursor posi- |
       |		  |		   |		| tion.		     |
       +------------------+----------------+------------+--------------------+
       | \E[ u		  | SCORC	   | SCO, VT510	| Restore cursor po- |
       |		  |		   |		| sition.	     |
       +------------------+----------------+------------+--------------------+
       | \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 de- |
       |		  |		   |		| vice	 attributes. |
       |		  |		   |		| Foot responds	with |
       |		  |		   |		| "FOOT",  in  hexa- |
       |		  |		   |		| decimal.	     |
       +------------------+----------------+------------+--------------------+
       | \E[ Pm	d	  | VPA		   | ECMA-48	| Line position	 ab- |
       |		  |		   |		| solute - move	cur- |
       |		  |		   |		| sor to line Pm.    |
       +------------------+----------------+------------+--------------------+
       | \E[ Pm	e	  | VPR		   | ECMA-48	| Line position	rel- |
       |		  |		   |		| ative	 - move	cur- |
       |		  |		   |		| sor 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 preced- |
       |		  |		   |		| ing	   printable |
       |		  |		   |		| character	  Ps |
       |		  |		   |		| times.	     |
       +------------------+----------------+------------+--------------------+
       | \E[  ?	Pi ; Pa	; | XTSMGRAPHICS   | xterm	| Set	or   request |
       | Pv S		  |		   |		| sixel	attributes.  |
       +------------------+----------------+------------+--------------------+
       | \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 modifier |
       |		  |		   |		| options	     |
       +------------------+----------------+------------+--------------------+
       | \E[ > 4 n	  | <unnamed>	   | xterm	| Resets  the  modi- |
       |		  |		   |		| fyOtherKeys  prop- |
       |		  |		   |		| erty	to  level 1. |
       |		  |		   |		| Note that in foot, |
       |		  |		   |		| this sequence	does |
       |		  |		   |		| not	  completely |
       |		  |		   |		| disable      modi- |
       |		  |		   |		| fyOtherKeys, since |
       |		  |		   |		| foot only supports |
       |		  |		   |		| level	1 and  level |
       |		  |		   |		| 2  (and  not level |
       |		  |		   |		| 0).		     |
       +------------------+----------------+------------+--------------------+
       | \E[ ? u	  | <unnamed>	   | kitty	| Query	current	val- |
       |		  |		   |		| ues 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	 en- |
       |		  |		   |		| tries	  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 current |
       |		  |		   |		| entry	   on	 the |
       |		  |		   |		| palette stack, and |
       |		  |		   |		| the	number	  of |
       |		  |		   |		| palettes stored on |
       |		  |		   |		| the stack.	     |
       +------------------+----------------+------------+--------------------+

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-04-12		       foot-ctlseqs(7)

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+14.3.quarterly>

home | help