blob: 24dbfb02f1c0381f5022534929a92d2d0b19e636 [file] [log] [blame]
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements; and to You under the Apache License, Version 2.0.
infocmp
-C termcap Compatibility
-1 1 entry per line
term interp inheritance
-----------------------
Term.setEmulation()/InterpKit doesn't know about the "Proto" variations.
InterpDumb "dumb"
InterpProtoANSI
InterpANSI "ansi"
InterpProtoANSIX
InterpDtTerm "dtterm"
InterpXTerm "xterm"
dtterm is usually lacking on stock Linux systems so to install it
- wget http://catb.org/terminfo/termtypes.ti.gz
- by hand extract dtterm.ti from termtypes.ti
- tic -o . dtterm.ti
- copy ./d/dtterm to /usr/share/terminfo/d
"standard"s
-----------
ANSI:
http://en.wikipedia.org/wiki/ANSI_escape_code
http://www.ecma-international.org/publications/standards/Ecma-048.htm
XTERM:
http://invisible-island.net/xterm/ctlseqs/ctlseqs.html
DtTerm:
http://h30097.www3.hp.com/docs/base_doc/DOCUMENTATION/V51_HTML/MAN/MAN5/0200____.HTM
http://www.s-gms.ms.edus.si/cgi-bin/man-cgi?dtterm+5
legend
------
S: appears in "standard"
T: appears in termcap/infocmp -C (on either solaris _or_ linux)
N: Not supported
-: Not supported
?: Unknown
Y1: In wiki ansi but not part of infocmp ansi
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\CR CR (Carriage Return) ^M cr cr - ? S ST ST dumb
\LF LF (Line Feed) ^J sf,do cud1, ind - ? S ST ST dumb
\BS BS (Back Space) ^H kb,le cub1 - ? S ST ST dumb
\HT HT (tab) ^I - ht - ? S ST ST dumb
\BEL BEL (Bell) - bel - - S ST ST dumb
# The following "code selection" sequences come from ECMA-35, not ECMA-48
\SI ^O SI/LS0 (Shift In/Map G0 into GL)
ae - - S- ST S- protoansi
\SO ^N SO/LS1 (Shift Out/Map G1 into GL)
as - - S- ST S- protoansi
\ESCn LS2 (Map G2 into GL) S- S- S- protoansi
\ESCo LS3 (Map G3 into GL) S- S- S- protoansi
\ESC(%c SCS (%c -> G0) SCS is a dtterm std mnemonic, ECMA-35 use G*D*
ascii ae,s0ds,sgr rmacs,sgr0 B - ST S- ST protoansi \ESC( ) * + are part of ECMA-35, not ECMA-48
line as,sgr smacs 0 - S- S- ST protoansi
\ESC)%c SCS (%c -> G1) s1ds (B-only) ST S- S- protoansi
\ESC*%c SCS (%c -> G2) s2ds (B-only) ST S- S- protoansi
\ESC+%c SCS (%c -> G3) s3ds (B-only) ST S- S- protoansi
ascii - B - ST S- S- protoansi
line - 0 - S- S- S- protoansi
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\ESC7 DECSC (Save Cursor) sc sc - -- ST ST ansix
\ESC8 DECRC (Restore Cursor) rc rc - -- ST ST ansix
\ESCD IND (Index) - ? ? -- S- S- ansix
\ESCH HTS (Horiz Tab Set) st hts - - ST ST ST N -> xterm?
\ESCM RI (Reverse Index/LF) sr ri ? ? S ST ST protoansi
\ESCN%c SS3 (Single Shift select G2) - - S- S- S- N
\ESCO%c SS3 (Single Shift select G3) S- S- ST N
K2 %c=E - - ?? -- ST N
kd %c=B - - ?? -- ST N
kh %c=H - - ?? -- ST N
kl %c=D - - ?? -- ST N
kr %c=C - - ?? -- ST N
ku %c=A - - ?? -- ST N
\ESCc RIS (Reset to Initial State)
- rs1 - - S- S- S- protoansi full reset
\ESC> DECPNM (normal keypad) is rmkx - - ?- ST ST protoansix
\ESC= DECPAM (application keypad)
ks - - ?- S- ST protoansix
\ESC F S7C1T (Select 7bit C1 Ctl Chars)
is - - ?- ST S- N
\ESC G S8C1T (Select 8bit C1 Ctl Chars)
is - - ?- ST S- N
\ESCn LS2 (Map G2 into GL) - - - ? S? ? N
\ESCo LS2 (Map G3 into GL) - - - ? S? ? N
\ESC[s PSCP (Save Cursor Pos) - - - -- -- S- N ansi.sys see \ESC7
\ESC[u PRCP (Restore Cursor Pos)- - - -- -- S- N ansi.sys see \ESC8
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\ESC[%dA CUU (CUrsor Up) up (ku, UP) cuu 01N Y ST ST ST protoansi
\ESC[%dB CUD (CUrsor Down) do (DO, kd) cud 01N Y ST ST ST protoansi
\ESC[%dC CUF (CUrsor Forward) nd (kr, RI) cuf 01N - ST ST ST protoansi
\ESC[%dD CUB (CUrsor Back) le (LE) cub ? ST ST ST protoansi op_bc()
\ESC[%dE CNL (CUrsor Next Line) - 01N ? S- -- S- N
\ESC[%dF CPL (CUrsor Prev Line) - 01N ? S- S- S- N
\ESC[%dG CHA (Cursor Horiz Abs.) - hpa N ST S- ST protoansi
\ESC[%d;%dH CUP (CUrsor Position) cm (ho, kh) cup ? ST ST ST protoansi
\ESC[%dI CHT <tab forward> ta ht? N ? ST -- ST protoansi
\ESC[%dJ ED (Erase in Display) cd (cl) ed, clear 012 ST ST ST protoansi
\ESC[%dK EL (Erase in Line) ce el 012 ST ST ST protoansi
\ESC[%dL IL (Insert Lines) al (AL, kI) il ? ST ST ST protoansi
\ESC[%dM DL (Delete Lines) dl dl 01N ST ST ST protoansi
\ESC[%dP DCH (Delete CHaracters) dc (DC) dch 01N ST ST ST protoansi
\ESC[%dS SU (Scroll Up) SF (nw) indn 01N Y ST S- ST N surely this is implemented? use AL/DL instead
\ESC[%dT SD (Scroll Down) SR rin 01N Y ST S- ST N surely this is implemented? use AL/DL instead
\ESC[%dX ECH (Erase CHaracters) ec ech ? ST S- ST protoansi
\ESC[%dZ CBT <tab back> bt cbt N ? ST -- ST protoansi
\ESC[%d@ ICH (Insert Character) ic ich 01N - ST ST ST protoansi
\ESC[%db REP (REPeat last graphic char) - S? -- S? N exercised by 'alsamixer'
\ESC[%dd VPA (Vertical Position Absolute) vpa N - ST S- ST protoansi
exercised by 'alsamixer'
\ESC[%d;%df HVP (Horiz Vert Pos) - ? ? S- S- S- N same as CUP
\ESC[3g TBC (TaB Clear) ct tbc 03 - ST ST ST N
\ESC[4h SM/IRM (Insert Mode) im smir 4 - ST ST ST protoansi
\ESC[4l RM/IRM (Replace Mode) ei rmir 4 - ST ST ST protoansi
\ESC[%di MC (Media Copy) - mc0, mc4 1,4,5,10,11 S- -- S- ansi ACT_PRINT term debugging
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\ESC[m SG (Set Graphics) se (ue) normal S? S- S ansi, dtterm, xterm
\ESC[0m SG (Set Graphics) me normal S? S- S ansi, dtterm, xterm
\ESC[1m SG (Set Graphics) md bold bold S? S- S ansi, dtterm, xterm
\ESC[2m SG (Set Graphics) so faint S? ST -- ansi, dtterm
\ESC[3m SG (Set Graphics) - italic S- -- -- N -> ansi
\ESC[4m SG (Set Graphics) us smul underline S? ST S? ansi, dtterm, xterm
\ESC[5m SG (Set Graphics) mb blink blink Slow S? S- S? N bold under xterm
\ESC[6m SG (Set Graphics) - blink Fast S? -- -- N
\ESC[7m SG (Set Graphics) mr (so) smso inverse S? ST ST ansi, dtterm, xterm
\ESC[8m SG (Set Graphics) - hidden S? S- S? ansi, dtterm, xterm
\ESC[9m SG (Set Graphics) - strike S? -- -- N
\ESC[10m SG (Set Graphics) - primary ft S? -- -- ansi
\ESC[11-19m SG (Set Graphics) - alt ft S? -- -- ansi
\ESC[20m SG (Set Graphics) - fraktur S? -- -- N
\ESC[21m SG (Set Graphics) - underline *2 S? -- -- N
# inverse of 2-9
\ESC[22m SG (Set Graphics) ue no bold/faint S? ST ST ansi, dtterm, xterm
\ESC[23m SG (Set Graphics) - no italic/fktur S? -? -? ansi
\ESC[24m SG (Set Graphics) - rmul no underline S? S? S? ansi, dtterm, xterm
\ESC[25m SG (Set Graphics) - no blink S? S? S? ansi, dtterm, xterm
\ESC[26m SG (Set Graphics) - prop space S- -- -- N
\ESC[27m SG (Set Graphics) - rmso no inverse S? S? S? ansi, dtterm, xterm
\ESC[28m SG (Set Graphics) - no hidden S? S? S? ansi, dtterm, xterm
\ESC[29m SG (Set Graphics) - no strike S? -- -- N
\ESC[30-37m SG (Set Graphics) - fg color S? S- S? ansi, dtterm, xterm
\ESC[38m SG (Set Graphics) - 256 fg color S- -- -- N
\ESC[39m SG (Set Graphics) - op dflt fg color S? S- S? ansi, dtterm, xterm
\ESC[40-47m SG (Set Graphics) - bg color S? S- S? ansi, dtterm, xterm
\ESC[48m SG (Set Graphics) - 256 bg color S? -- -- N
\ESC[49m SG (Set Graphics) - op dflt fg color S? S- S? ansi, dtterm, xterm
\ESC[50-65m SG (Set Graphics) - misc. S- -- -- N misc rare ANSI stuff
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\ESC[5n DSR (Device Status Report) 56 ? S- S- S- protoansi
\ESC[6n DSR CPR (Cursor Position Report) u7 56 ? S- S- S- protoansi [really?]
\ESC[%d;%dr DECSTBM cs csr ? ? -T ST ST protoansi ACT_MARGIN
\ESC[t - - ? ? -- ?- ?- dtterm ACT_GLYPH
\ESC[t - - ? ? -- S- S- N (window manipulation xterm/dtterm 1-21)
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\ESC[?1h SM/DECCKM (Enable cursor key mode)
ks - - ?? S- ST protoansix
\ESC[?5h SM/DECSCNM (Enable reverse video)
vb ? ? ?- ST ST N used for flashing
\ESC[?7h SM/DECAWM (Enable Auto Wrap)
is smam - - ?- ST S- N
\ESC[?12h SM (Start blinking cursor)
vs - - ?? -- ST N
\ESC[?25h SM/DECTCEM (Show cursor)
ve,vs - - ?? S- ST N
\ESC[?25h SM/DECTCEM (Enable cursor visible)
ve,vs cvvis -~ ST ST protoansix
\ESC[?1034h set 8th bit on meta key? smm ?? ?? ?? N
\ESC[?1049h ~DECSC ti smcup - - ?- -- ST N
mm - - ?- -- ST N
\ESC[?1l RM/DECCKM (Disable cursor key mode)
is rmkx - - ?? ST ST protoansix
\ESC[?3l RM/DECCOLM (disable 132 col mode)
is - - ?? S- ST N
\ESC[?4l RM/DECSCLM (Disable smooth scrolling)
is - - ?? S- ?T N
\ESC[?5l RM/DECSCNM (Disable reverse video)
vb ? ? ?? ST ST N used for flashing
\ESC[?12l RM (Reset Mode) DECRST ve, vs -~ S- ST protoansix
\ESC[?25l RM/DECTCEM (Disable cursor visible)
vi civis -~ ST ST protoansix
\ESC[?45l disable reverse autowrap
is - - ?? ST -- N
\ESC[?1034l don't set 8th bit on meta key?
mo rmm - - ?? -- ST N
\ESC[?1049l ~DECRC te rmcup - - ?? -- ST N -> xterm?
\ESC[?%dr DEC private restore ve/vs same as h/l -- S- S- protoansix
\ESC[?%ds DEC private save ve/vs same as h/l -- S- S- protoansix
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\ESC[!p DECSTR is is2 ? ? -- S- ST protoanisx op_soft_reset()
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\ESC[>%dT reset title feature - - - ? -- -- S- N -> xterm
\ESC[>%dc secondary DA - - - ? -- -- S- xterm request terminal id
\ESC[>%dm alter key sequences - - - ? -- -- S- N -> xterm
\ESC[>%dn disable key sequences - - - ? -- -- S- N -> xterm
\ESC[>%dp cursor hiding - - - ? -- -- S- N -> xterm
\ESC[>%dt set/reset title modes - - - ? -- -- S- N -> xterm
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
\ESC]%d;%sBEL -- S- S- protoanisx set text parameters
0 -- S- S- protoanisx set window title +
set icon name
1 -- S- S- protoanisx set icon name
2 -- S- S- protoanisx set window title
3 -- S- -- protoansix [ -> dtterm ]
\ESC]10;%s;%sBEL 10 -- -- -- protoanisx "nbterm" hyperlink
cwd and persist
\ESC]%d;%s\ESC\ -- -- S- xterm set text parameters
0 -- -- S- xterm set window title +
set icon name
1 -- -- S- xterm set icon name
2 -- -- S- xterm set window title
3 -- -- S- N [ -> xterm ] set X property
\ESC]10;%s;%s\ESC\ 10 -- -- -- xterm "nbterm" hyperlink
\ESC]l%s\ESC\ -- S- -- dtterm set window title
\ESC]I%s\ESC\ -- S- -- N set icon image file
\ESC]L%s\ESC\ -- S- -- dtterm set icon name
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
Alternative Character Sets
==========================
ACS's understood by curses (extracted from ncurses.h)
UNICODE:
http://en.wikipedia.org/wiki/Box-drawing_character
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term
----------------------------------------------------------------------------------------------------------------------------------------
ACS_RARROW '+' 020 - - N
ACS_LARROW ',' 021 - - N
ACS_UARROW '-' 030 - - N
ACS_DARROW '.' 031 ^Y - - N
ACS_BLOCK '0' 333 - - N
# The following sequences correspond to http://vt100.net/docs/vt220-rm/table2-4.html
ACS_DIAMOND '`' 004 '`' '`' ansi+protoansix
ACS_CKBOARD 'a' 261 'a' 'a' ansi+protoansix
? 'b' HT - - - N
? 'c' FF - - - N
? 'd' CR - - - N
? 'e' LF - - - N
ACS_DEGREE 'f' 370 'f' 'f' ansi+protoansix
ACS_PLMINUS 'g' 361 'g' 'g' ansi+protoansix
ACS_BOARD 'h' or NL 260 - - ansi+protoansix
ACS_LANTERN 'i' or VT - - 'i' ansi+protoansix
ACS_LRCORNER 'j' 331 'j' 'j' ansi+protoansix
ACS_URCORNER 'k' 277 'k' 'k' ansi+protoansix
ACS_ULCORNER 'l' 332 'l' 'l' ansi+protoansix
ACS_LLCORNER 'm' 300 'm' 'm' ansi+protoansix
ACS_PLUS 'n' 305 'n' 'n' ansi+protoansix
ACS_S1 'o' 176 ~ 'o' 'o' ansi+protoansix -> '\u2500'
ACS_S3 'p' 304 'p' 'p' N -> '\u2500'
ACS_HLINE 'q' or S5 304 'q' 'q' ansi+protoansix -> '\u2500'
ACS_S7 'r' 304 'r' 'r' N -> '\u2500'
ACS_S9 's' 137 _ 's' 's' ansi+protoansix -> '\u2500'
ACS_LTEE 't' 303 't' 't' ansi+protoansix
ACS_RTEE 'u' 264 'u' 'u' ansi+protoansix
ACS_BTEE 'v' 301 'v' 'v' ansi+protoansix
ACS_TTEE 'w' 302 'w' 'w' ansi+protoansix
ACS_VLINE 'x' 263 'x' 'x' ansi+protoansix
ACS_LEQUAL 'y' 363 'y' 'y' ansi+protoansix
ACS_GEQUAL 'z' 362 'z' 'z' ansi+protoansix
ACS_PI '{' 343 '{' '{' ansi+protoansix
ACS_NEQUAL '|' 330 '|' '|' ansi+protoansix
ACS_STERLING '}' 234 '}' '}' ansi+protoansix
ACS_BULLET '~' 376 '~' '~' ansi+protoansix
----------------------------------------------------------------------------------------------------------------------------------------
sequence mnemonic termcap op terminfo numbers margin ansi dtterm xterm Term