Termcap vs Terminfo
------- -- --------
----------------------+-------------------------------+-------------------------------------------
termcap name | |
as in | | term-
term- term- | | info
cap info both | type C variable name | name description
----------------------+-------------------------------+-------------------------------------------
| |
AL | str parm_insert_line | il Add #1 new blank lines (G*)
CC | str command_character | cmdch Term. settable cmd char in prototype
CM | str cursor_mem_address | mrcup Memory relative cursor addressing.
DC | str parm_dch | dch Delete #1 chars (G*)
DL | str parm_delete_line | dl Delete #1 lines (G*)
DO | str parm_down_cursor | cud Move cursor down #1 lines. (G*)
IC | str parm_ich | ich Insert #1 blank chars (G*)
K1 | str key_a1 | ka1 Upper left of keypad
K2 | str key_b2 | kb2 Center of keypad
K3 | str key_a3 | ka3 Upper right of keypad
K4 | str key_c1 | kc1 Lower left of keypad
K5 | str key_c3 | kc3 Lower right of keypad
LE | str parm_left_cursor | cub Move cursor left #1 spaces (G)
Nl | num num_labels | nlab # function key labels
RI | str parm_right_cursor | cuf Move cursor right #1 spaces. (G*)
SF | str parm_index | indn Scroll forward #1 lines. (G)
SR | str parm_rindex | rin Scroll backward #1 lines. (G)
UP | str parm_up_cursor | cuu Move cursor up #1 lines. (G*)
ac | str acs_chars | acsc Graphics char set pairs aAbBcC - defn=vt100.
ae | str exit_alt_charset_mode | rmacs End alternate character set
al | str insert_line | il1 Add new blank line (*)
am | bool auto_right_margin | am Terminal has automatic margins
as | str enter_alt_charset_mode| smacs Start alternate character set
bc | str combined with cub1 | Backspace if not "^H"
bl | str bell | bel Audible signal (bell)
bs | bool combined with cub1 | Terminal can backspace with "^H"
bt | str back_tab | cbt Back tab
bw | bool auto_left_margin | bw cub1 wraps from column 0 to last column
cd | str clr_eos | ed Clear to end of display (*)
ce | str clr_eol | el Clear to end of line
ch | str column_address | hpa Set cursor column (G)
cl | str clear_screen | clear Clear screen (*)
cm | str cursor_address | cup Cursor motion to row #1 col #2 (G)
co | num columns | cols Number of columns in a line
cr | str carriage_return | cr Carriage return (*)
cs | str change_scroll_region | csr change to lines #1 thru #2 (vt100) (G)
ct | str clear_all_tabs | tbc Clear all tab stops.
cv | str row_address | vpa Like hpa but sets row. (G)
dB | num combined with cub1 | Number of millisec of bs delay needed
dC | num combined with cr | Number of millisec of cr delay needed
dF | num combined with ff | Number of millisec of ff delay needed
dN | num combined with cud1 | Number of millisec of nl delay needed
dT | num combined with ht | Number of millisec of tab delay needed
da | bool memory_above | da Display may be retained above the screen
db | bool memory_below | db Display may be retained below the screen
dc | str delete_character | dch1 Delete character (*)
dl | str delete_line | dl1 Delete line (*)
dm | str enter_delete_mode | smdc Delete mode (enter)
do | str cursor_down | cud1 Down one line
ds | str dis_status_line | dsl Disable status line
ec | str erase_chars | ech Erase #1 characters (G)
ed | str exit_delete_mode | rmdc End delete mode
ei | str exit_insert_mode | rmir End insert mode;
eo | bool erase_overstrike | eo Can erase overstrikes with a blank
es | bool status_line_esc_ok | eslok Escape can be used on the status line
ff | str form_feed | ff Hardcopy terminal page eject (*)
fs | str from_status_line | fsl Return from status line
gn | bool generic_type | gn Generic line type (e.g. dialup, switch).
hc | bool hard_copy | hc Hardcopy terminal
hd | str down_half_line | hd Half-line down (forward 1/2 linefeed)
ho | str cursor_home | home Home cursor (if no cup)
hs | bool has_status_line | hs Has extra "status line"
hu | str up_half_line | hu Half-line up (reverse 1/2 linefeed)
hz | bool tilde_glitch | hz Hazeltine; can't print ~'s
i1 | str init_1string | is1 Terminal initialization string
i2 | str init_3string | is3 Terminal initialization string
iP | str init_prog | iprog Path name of program for init.
ic | str insert_character | ich1 Insert character
if | str init_file | if Name of file containing is
im | str enter_insert_mode | smir Insert mode (enter);
in | bool insert_null_glitch | in Insert mode distinguishes nulls
ip | str insert_padding | ip Insert pad after character inserted (*)
is | str init_2string | is2 Terminal initialization string
it | num init_tabs | it Tabs initially every # spaces.
k0 | str key_f0 | kf0 Sent by function key f0.
k1 | str key_f1 | kf1 Sent by function key f1.
k2 | str key_f2 | kf2 Sent by function key f2.
k3 | str key_f3 | kf3 Sent by function key f3.
k4 | str key_f4 | kf4 Sent by function key f4.
k5 | str key_f5 | kf5 Sent by function key f5.
k6 | str key_f6 | kf6 Sent by function key f6.
k7 | str key_f7 | kf7 Sent by function key f7.
k8 | str key_f8 | kf8 Sent by function key f8.
k9 | str key_f9 | kf9 Sent by function key f9.
k; | str key_f10 | kf10 Has a meta key (shift, sets parity bit)
kA | str key_il | kil1 Sent by insert line.
kB | str key_btab | kcbt Sent by back-tab key.
kC | str key_clear | kclr Sent by clear screen or erase key.
kD | str key_dc | kdch1 Sent by delete character key.
kE | str key_eol | kel Sent by clear-to-end-of-line key.
kF | str key_sf | kind Sent by scroll-forward/down key
kH | str key_ll | kll Sent by home-down key
kI | str key_ic | kich1 Sent by ins char/enter ins mode key.
kL | str key_dl | kdl1 Sent by delete line key.
kM | str key_eic | krmir Sent by rmir or smir in insert mode.
kN | str key_npage | knp Sent by next-page key
kP | str key_ppage | kpp Sent by previous-page key
kR | str key_sr | kri Sent by scroll-backward/up key
kS | str key_eos | ked Sent by clear-to-end-of-screen key.
kT | str key_stab | khts Sent by set-tab key
ka | str key_catab | ktbc Sent by clear-all-tabs key.
kb | str key_backspace | kbs Sent by backspace key
kd | str key_down | kcud1 Sent by terminal down arrow key
ke | str keypad_local | rmkx Out of "keypad transmit" mode
kh | str key_home | khome Sent by home key.
kl | str key_left | kcub1 Sent by terminal left arrow key
km | bool has_meta_key | km Has a meta key (shift, sets parity bit)
kn | num never supported | Number of "other" keys
ko | str combined with key_* | Termcap entries for other non-function keys
kr | str key_right | kcuf1 Sent by terminal right arrow key
ks | str keypad_xmit | smkx Put terminal in "keypad transmit" mode
kt | str key_ctab | kctab Sent by clear-tab key
ku | str key_up | kcuu1 Sent by terminal up arrow key
l0 | str lab_f0 | lf0 Labels on function key f0 if not f0
l1 | str lab_f1 | lf1 Labels on function key f1 if not f1
l2 | str lab_f2 | lf2 Labels on function key f2 if not f2
l3 | str lab_f3 | lf3 Labels on function key f3 if not f3
l4 | str lab_f4 | lf4 Labels on function key f4 if not f4
l5 | str lab_f5 | lf5 Labels on function key f5 if not f5
l6 | str lab_f6 | lf6 Labels on function key f6 if not f6
l7 | str lab_f7 | lf7 Labels on function key f7 if not f7
l8 | str lab_f8 | lf8 Labels on function key f8 if not f8
l9 | str lab_f9 | lf9 Labels on function key f9 if not f9
la | str lab_f10 | lf10 Labels on function key f10 if not f10
le | str cursor_left | cub1 Move cursor left one space.
lh | num label_height | lh height of labels
li | num lines | lines Number of lines on screen or page
ll | str cursor_to_ll | ll Last line, first column (if no cup)
lm | num lines_of_memory | lm Lines of memory if > lines. 0 => varies
lw | num label_width | lw width of labels
ma | str combined with key_* | Arrow key map, used by vi version 2 only
mb | str enter_blink_mode | blink Turn on blinking
md | str enter_bold_mode | bold Turn on bold (extra bright) mode
me | str exit_attribute_mode | sgr0 Turn off all attributes
mh | str enter_dim_mode | dim Turn on half-bright mode
mi | bool move_insert_mode | mir Safe to move while in insert mode
mk | str enter_secure_mode | invis Turn on blank mode (chars invisible)
ml | str support dropped | Memory lock on above cursor.
mm | str meta_on | smm Turn on "meta mode" (8th bit)
mo | str meta_off | rmm Turn off "meta mode"
mp | str enter_protected_mode | prot Turn on protected mode
mr | str enter_reverse_mode | rev Turn on reverse video mode
ms | bool move_standout_mode | msgr Safe to move in standout modes
mu | str support dropped | Memory unlock (turn off memory lock).
nc | bool combined with cr | No correctly working carriage return (DM2500,H2000)
nd | str cursor_right | cuf1 Non-destructive space (cursor right)
nl | str combined with cud1 | Newline character (default "\n")
ns | bool combined with ind | Terminal is a CRT but doesn't scroll.
nw | str newline | nel Newline (behaves like cr followed by lf)
os | bool over_strike | os Terminal overstrikes
pO | str prtr_non | mc5p Turn on the printer for #1 bytes.
pb | num padding_baud_rate | pb Lowest baud rate where padding needed
pc | str pad_char | pad Pad character (rather than null)
pf | str prtr_off | mc4 Turn off the printer
pk | str pkey_key | pfkey Prog funct key #1 to type string #2
pl | str pkey_local | pfloc Prog funct key #1 to execute string #2
pn | str plab_norm | pln program label of funct key #1 with string #2
po | str prtr_on | mc5 Turn on the printer
ps | str print_screen | mc0 Print contents of the screen
pt | bool combined with it | Has hardware tabs (may need to be set with "is")
px | str pkey_xmit | pfx Prog funct key #1 to xmit string #2
r1 | str reset_1string | rs1 Reset terminal completely to sane modes.
r2 | str reset_2string | rs2 Reset terminal completely to sane modes.
r3 | str reset_3string | rs3 Reset terminal completely to sane modes.
rP | str char_padding | rmp Like ip but when in replace mode
rc | str restore_cursor | rc Restore cursor to position of last sc.
rf | str reset_file | rf Name of file containing reset string.
rp | str repeat_char | rep Repeat char #1 #2 times. (G*)
sa | str set_attributes | sgr Define the video attributes (G9)
sc | str save_cursor | sc Save cursor position.
se | str exit_standout_mode | rmso End stand out mode
sf | str scroll_forward | ind Scroll text up
sg | num magic_cookie_glitch | xmc Number blank chars left by smso or rmso
so | str enter_standout_mode | smso Begin stand out mode
sr | str scroll_reverse | ri Scroll text down
st | str set_tab | hts Set a tab in all rows, current column.
ta | str tab | ht Tab to next 8 space hardware tab stop.
tc | str | use Entry of similar terminal - must be last
te | str exit_ca_mode | rmcup String to end programs that use cup
ti | str enter_ca_mode | smcup String to begin programs that use cup
ts | str to_status_line | tsl Go to status line, column #1
uc | str underline_char | uc Underscore one char and move past it
ue | str exit_underline_mode | rmul End underscore mode
ug | num combined with xmc | Number of blank chars left by us or ue
ul | bool transparent_underline | ul underline character overstrikes
up | str cursor_up | cuu1 Upline (cursor up)
us | str enter_underline_mode | smul Start underscore mode
vb | str flash_screen | flash Visible bell (may not move cursor)
ve | str cursor_normal | cnorm Make cursor appear normal (undo vs/vi)
vi | str cursor_invisible | civis Make cursor invisible
vs | str cursor_visible | cvvis Make cursor very visible
vt | num virtual_terminal | vt Virtual terminal number (CB/Unix)
wi | str set_window | wind Current window is lines #1-#2 cols #3-#4
ws | num width_status_line | wsl # columns in status line
xb | bool beehive_glitch | xsb Beehive (f1=escape, f2=ctrl C)
xn | bool eat_newline_glitch | xenl newline ignored after 80 cols (Concept)
xo | bool xon_xoff | xon Terminal uses xon/xoff handshaking
xr | bool combined with cr | Return acts like ce \r \n (Delta Data)
xs | bool ceol_standout_glitch | xhp Standout not erased by overwriting (hp)
xt | bool teleray_glitch | xt Tabs destructive, magic so char (t1061)
----------------------+-------------------------------+-------------------------------------------