MAN page from Old RedHat 5.X ncurses-4.2-6.i386.rpm
TERMINFO
Section: File Formats (5)
Updated:
Index NAME
terminfo - terminal capability data base
SYNOPSIS
/usr/share/terminfo/*/*
DESCRIPTION
Terminfois a data base describing terminals, used by screen-oriented programs such as
nvi(1),
rogue(1)and libraries such as
curses(3X).
Terminfodescribes terminals by giving a set of capabilities which theyhave, by specifying how to perform screen operations, and byspecifying padding requirements and initialization sequences.
Entries interminfoconsist of a sequence of `,' separated fields (embedded commas may beescaped with a backslash or notated as \072).White space after the `,' separator is ignored.The first entry for each terminal gives the names which are known for theterminal, separated by `|' characters.The first name given is the most common abbreviation for the terminal,the last name given should be a long name fully identifying the terminal,and all others are understood as synonyms for the terminal name.All names but the last should be in lower case and contain no blanks;the last name may well contain upper case and blanks for readability.
Terminal names (except for the last, verbose entry) shouldbe chosen using the following conventions.The particular piece of hardware making up the terminal shouldhave a root name, thus ``hp2621''.This name should not contain hyphens.Modes that the hardware can be in, or user preferences, shouldbe indicated by appending a hyphen and a mode suffix.Thus, a vt100 in 132 column mode would be vt100-w.The following suffixes should be used where possible:
| Suffix | Meaning | Example
|
| -nn | Number of lines on the screen | aaa-60
|
| -np | Number of pages of memory | c100-4p
|
| -am | With automargins (usually the default) | vt100-am
|
| -m | Mono mode; suppress color | ansi-m
|
| -mc | Magic cookie; spaces when highlighting | wy30-mc
|
| -na | No arrow keys (leave them in local) | c100-na
|
| -nam | Without automatic margins | vt100-nam
|
| -nl | No status line | att4415-nl
|
| -ns | No status line | hp2626-ns
|
| -rv | Reverse video | c100-rv
|
| -s | Enable status line | vt100-s
|
| -vb | Use visible bell instead of beep | wy370-vb
|
| -w | Wide mode (> 80 columns, usually 132) | vt100-w
|
For more on terminal naming conventions, see the term(7) manual page.
Capabilities
The following is a complete table of the capabilities included in aterminfo description block and available to terminfo-using code. In eachline of the table,The variable is the name by which the programmer (at the terminfo level)accesses the capability.
The capname is the short name used in the text of the database,and is used by a person updating the database.Whenever possible, capnames are chosen to be the same as or similar tothe ANSI X3.64-1979 standard (now superseded by ECMA-48, which uses identical or very similar names). Semantics are also intended to matchthose of the specification.
The termcap code is the oldtermcapcapability name (some capabilities are new, and have names which termcapdid not originate).Capability names have no hard length limit, but an informal limit of 5characters has been adopted to keep them short and to allow the tabs inthe source fileCapsto line up nicely.
Finally, the description field attempts to convey the semantics of thecapability. You may find some codes in the description field:
- (P)
- indicates that padding may be specified
- #[1-9]
- in the description field indicates that the string is passed through tparm withparms as given (#i).
- (P*)
- indicates that padding may vary in proportion to the number oflines affected
- (#i)
- indicates the ith parameter.
These are the boolean capabilities:
| Variable | Cap- | TCap | Description
|
| Booleans | name | Code |
|
| auto_left_margin | bw | bw | cub1 wraps from column 0 to last column
|
| auto_right_margin | am | am | terminal has automatic margins
|
| no_esc_ctlc | xsb | xb | beehive (f1=escape, f2=ctrl C)
|
| ceol_standout_glitch | xhp | xs | standout not erased by overwriting (hp)
|
| eat_newline_glitch | xenl | xn | newline ignored after 80 cols (concept)
|
| erase_overstrike | eo | eo | can erase overstrikes with a blank
|
| generic_type | gn | gn | generic line type
|
| hard_copy | hc | hc | hardcopy terminal
|
| has_meta_key | km | km | Has a meta key, sets msb high
|
| has_status_line | hs | hs | has extra status line
|
| insert_null_glitch | in | in | insert mode distinguishes nulls
|
| memory_above | da | da | display may be retained above the screen
|
| memory_below | db | db | display may be retained below the screen
|
| move_insert_mode | mir | mi | safe to move while in insert mode
|
| move_standout_mode | msgr | ms | safe to move while in standout mode
|
| over_strike | os | os | terminal can overstrike
|
| status_line_esc_ok | eslok | es | escape can be used on the status line
|
| dest_tabs_magic_smso | xt | xt | tabs destructive, magic so char (t1061)
|
| tilde_glitch | hz | hz | can't print ~'s (hazeltine)
|
| transparent_underline | ul | ul | underline character overstrikes
|
| xon_xoff | xon | xo | terminal uses xon/xoff handshaking
|
| needs_xon_xoff | nxon | nx | padding won't work, xon/xoff required
|
| prtr_silent | mc5i | 5i | printer won't echo on screen
|
| hard_cursor | chts | HC | cursor is hard to see
|
| non_rev_rmcup | nrrmc | NR | smcup does not reverse rmcup
|
| no_pad_char | npc | NP | pad character does not exist
|
| non_dest_scroll_region | ndscr | ND | scrolling region is non-destructive
|
| can_change | ccc | cc | terminal can re-define existing colors
|
| back_color_erase | bce | ut | screen erased with background color
|
| hue_lightness_saturation | hls | hl | terminal uses only HLS color notation (tektronix)
|
| col_addr_glitch | xhpa | YA | only positive motion for hpa/mhpa caps
|
| cr_cancels_micro_mode | crxm | YB | using cr turns off micro mode
|
| has_print_wheel | daisy | YC | printer needs operator to change character set
|
| row_addr_glitch | xvpa | YD | only positive motion for vpa/mvpa caps
|
| semi_auto_right_margin | sam | YE | printing in last column causes cr
|
| cpi_changes_res | cpix | YF | changing character pitch changes resolution
|
| lpi_changes_res | lpix | YG | changing line pitch changes resolution
|
These are the numeric capabilities:
| Variable | Cap- | TCap | Description
|
| Numeric | name | Code |
|
| columns | cols | co | number of columns in aline
|
| init_tabs | it | it | tabs initially every # spaces
|
| lines | lines | li | number of lines on screen or page
|
| lines_of_memory | lm | lm | lines of memory if > line. 0 => varies
|
| magic_cookie_glitch | xmc | sg | number of blank chars left by smso or rmso
|
| padding_baud_rate | pb | pb | lowest baud rate where padding needed
|
| virtual_terminal | vt | vt | virtual terminal number (CB/unix)
|
| width_status_line | wsl | ws | columns in status line
|
| num_labels | nlab | Nl | number of labels on screen
|
| label_height | lh | lh | rows in each label
|
| label_width | lw | lw | columns in each label
|
| max_attributes | ma | ma | maximum combined attributes terminal can handle
|
| maximum_windows | wnum | MW | maxumum number of defineable windows
|
| max_colors | colors | Co | maximum numbers of colors on screen
|
| max_pairs | pairs | pa | maximum number of color-pairs on the screen
|
| no_color_video | ncv | NC | video attributes that can't be used with colors
|
The following numeric capabilities are present in the SVr4.0 term structure,but are not yet documented in the man page. They came in with SVr4'sprinter support.
| Variable | Cap- | TCap | Description
|
| Numeric | name | Code |
|
| buffer_capacity | bufsz | Ya | numbers of bytes buffered before printing
|
| dot_vert_spacing | spinv | Yb | spacing of pins vertically in pins per inch
|
| dot_horz_spacing | spinh | Yc | spacing of dots horizontally in dots per inch
|
| max_micro_address | maddr | Yd | maximum value in micro_..._address
|
| max_micro_jump | mjump | Ye | maximum value in parm_..._micro
|
| micro_char_size | mcs | Yf | character size when in micro mode
|
| micro_line_size | mls | Yg | line size when in micro mode
|
| number_of_pins | npins | Yh | numbers of pins in print-head
|
| output_res_char | orc | Yi | horizontal resolution in units per line
|
| output_res_line | orl | Yj | vertical resolution in units per line
|
| output_res_horz_inch | orhi | Yk | horizontal resolution in units per inch
|
| output_res_vert_inch | orvi | Yl | vertical resolution in units per inch
|
| print_rate | cps | Ym | print rate in chars per second
|
| wide_char_size | widcs | Yn | character step size when in double wide mode
|
| buttons | btns | BT | number of buttons on mouse
|
| bit_image_entwining | bitwin | Yo | number of passed for each bit-image row
|
| bit_image_type | bitype | Yp | type of bit-image device
|
These are the string capabilities:
| Variable | Cap- | TCap | Description
|
| String | name | Code |
|
| back_tab | cbt | bt | back tab (P)
|
| bell | bel | bl | audible signal (bell) (P)
|
| carriage_return | cr | cr | carriage return (P*) (P*)
|
| change_scroll_region | csr | cs | change region to line #1 to line #2 (P) (P)
|
| clear_all_tabs | tbc | ct | clear all tab stops (P)
|
| clear_screen | clear | cl | clear screen and home cursor (P*)
|
| clr_eol | el | ce | clear to end of line (P)
|
| clr_eos | ed | cd | clear to end of screen (P*)
|
| column_address | hpa | ch | horizontal position #1, absolute (P)
|
| command_character | cmdch | CC | terminal settable cmd character in prototype !?
|
| cursor_address | cup | cm | move to row #1 columns #2
|
| cursor_down | cud1 | do | down one line
|
| cursor_home | home | ho | home cursor (if no cup)
|
| cursor_invisible | civis | vi | make cursor invisible
|
| cursor_left | cub1 | le | move left one space
|
| cursor_mem_address | mrcup | CM | memory relative cursor addressing
|
| cursor_normal | cnorm | ve | make cursor appear normal (undo civis/cvvis)
|
| cursor_right | cuf1 | nd | move right one space
|
| cursor_to_ll | ll | ll | last line, first column (if no cup)
|
| cursor_up | cuu1 | up | up one line
|
| cursor_visible | cvvis | vs | make cursor very visible
|
| delete_character | dch1 | dc | delete character (P*)
|
| delete_line | dl1 | dl | delete line (P*)
|
| dis_status_line | dsl | ds | disable status line
|
| down_half_line | hd | hd | half a line down
|
| enter_alt_charset_mode | smacs | as | start alternate character set (P)
|
| enter_blink_mode | blink | mb | turn on blinking
|
| enter_bold_mode | bold | md | turn on bold (extra bright) mode
|
| enter_ca_mode | smcup | ti | string to start programs using cup
|
| enter_delete_mode | smdc | dm | enter delete mode
|
| enter_dim_mode | dim | mh | turn on half-bright mode
|
| enter_insert_mode | smir | im | enter insert mode
|
| enter_secure_mode | invis | mk | turn on blank mode (characters invisible)
|
| enter_protected_mode | prot | mp | turn on protected mode
|
| enter_reverse_mode | rev | mr | turn on reverse video mode
|
| enter_standout_mode | smso | so | begin standout mode
|
| enter_underline_mode | smul | us | begin underline mode
|
| erase_chars | ech | ec | erase #1 characters (P)
|
| exit_alt_charset_mode | rmacs | ae | end alternate character set (P)
|
| exit_attribute_mode | sgr0 | me | turn off all attributes
|
| exit_ca_mode | rmcup | te | strings to end programs using cup
|
| exit_delete_mode | rmdc | ed | end delete mode
|
| exit_insert_mode | rmir | ei | exit insert mode
|
| exit_standout_mode | rmso | se | exit standout mode
|
| exit_underline_mode | rmul | ue | exit underline mode
|
| flash_screen | flash | vb | visible bell (may not move cursor)
|
| form_feed | ff | ff | hardcopy terminal page eject (P*)
|
| from_status_line | fsl | fs | return from status line
|
| init_1string | is1 | i1 | initialization string
|
| init_2string | is2 | is | initialization string
|
| init_3string | is3 | i3 | initialization string
|
| init_file | if | if | name of initialization file
|
| insert_character | ich1 | ic | insert character (P)
|
| insert_line | il1 | al | insert line (P*)
|
| insert_padding | ip | ip | insert padding after inserted character
|
| key_backspace | kbs | kb | backspace key
|
| key_catab | ktbc | ka | clear-all-tabs key
|
| key_clear | kclr | kC | clear-screen or erase key
|
| key_ctab | kctab | kt | clear-tab key
|
| key_dc | kdch1 | kD | delete-character key
|
| key_dl | kdl1 | kL | delete-line key
|
| key_down | kcud1 | kd | down-arrow key
|
| key_eic | krmir | kM | sent by rmir or smir in insert mode
|
| key_eol | kel | kE | clear-to-end-of-line key
|
| key_eos | ked | kS | clear-to-end-of-screen key
|
| key_f0 | kf0 | k0 | F0 function key
|
| key_f1 | kf1 | k1 | F1 function key
|
| key_f10 | kf10 | k; | F10 function key
|
| key_f2 | kf2 | k2 | F2 function key
|
| key_f3 | kf3 | k3 | F3 function key
|
| key_f4 | kf4 | k4 | F4 function key
|
| key_f5 | kf5 | k5 | F5 function key
|
| key_f6 | kf6 | k6 | F6 function key
|
| key_f7 | kf7 | k7 | F7 function key
|
| key_f8 | kf8 | k8 | F8 fucntion key
|
| key_f9 | kf9 | k9 | F9 function key
|
| key_home | khome | kh | home key
|
| key_ic | kich1 | kI | insert-character key
|
| key_il | kil1 | kA | insert-line key
|
| key_left | kcub1 | kl | left-arrow key
|
| key_ll | kll | kH | last-line key
|
| key_npage | knp | kN | next-page key
|
| key_ppage | kpp | kP | prev-page key
|
| key_right | kcuf1 | kr | right-arrow key
|
| key_sf | kind | kF | scroll-forward key
|
| key_sr | kri | kR | scroll-backward key
|
| key_stab | khts | kT | set-tab key
|
| key_up | kcuu1 | ku | up-arrow key
|
| keypad_local | rmkx | ke | leave 'keyboard_transmit' mode
|
| keypad_xmit | smkx | ks | enter 'keyboard_transmit' mode
|
| lab_f0 | lf0 | l0 | label on function key f0 if not f0
|
| lab_f1 | lf1 | l1 | label on function key f1 if not f1
|
| lab_f10 | lf10 | la | label on function key f10 if not f10
|
| lab_f2 | lf2 | l2 | label on function key f2 if not f2
|
| lab_f3 | lf3 | l3 | label on function key f3 if not f3
|
| lab_f4 | lf4 | l4 | label on function key f4 if not f4
|
| lab_f5 | lf5 | l5 | lable on function key f5 if not f5
|
| lab_f6 | lf6 | l6 | label on function key f6 if not f6
|
| lab_f7 | lf7 | l7 | label on function key f7 if not f7
|
| lab_f8 | lf8 | l8 | label on function key f8 if not f8
|
| lab_f9 | lf9 | l9 | label on function key f9 if not f9
|
| meta_off | rmm | mo | turn off meta mode
|
| meta_on | smm | mm | turn on meta mode (8th-bit on)
|
| newline | nel | nw | newline (behave like cr followed by lf)
|
| pad_char | pad | pc | padding char (instead of null)
|
| parm_dch | dch | DC | delete #1 chars (P*)
|
| parm_delete_line | dl | DL | delete #1 lines (P*)
|
| parm_down_cursor | cud | DO | down #1 lines (P*)
|
| parm_ich | ich | IC | insert #1 chars (P*)
|
| parm_index | indn | SF | scroll forward #1 lines (P)
|
| parm_insert_line | il | AL | insert #1 lines (P*)
|
| parm_left_cursor | cub | LE | move #1 chars to the left (P)
|
| parm_right_cursor | cuf | RI | move #1 chars to the right (P*)
|
| parm_rindex | rin | SR | scroll back #1 lines (P)
|
| parm_up_cursor | cuu | UP | up #1 lines (P*)
|
| pkey_key | pfkey | pk | program function key #1 to type string #2
|
| pkey_local | pfloc | pl | program function key #1 to execute string #2
|
| pkey_xmit | pfx | px | program function key #1 to transmit string #2
|
| print_screen | mc0 | ps | print contents of screen
|
| prtr_off | mc4 | pf | turn off printer
|
| prtr_on | mc5 | po | turn on printer
|
| repeat_char | rep | rp | repeat char #1 #2 times (P*)
|
| reset_1string | rs1 | r1 | reset string
|
| reset_2string | rs2 | r2 | reset string
|
| reset_3string | rs3 | r3 | reset string
|
| reset_file | rf | rf | name of reset file
|
| restore_cursor | rc | rc | restore cursor to last position of sc
|
| row_address | vpa | cv | vertical position #1 absolute (P)
|
| save_cursor | sc | sc | save current cursor position (P)
|
| scroll_forward | ind | sf | scroll text up (P)
|
| scroll_reverse | ri | sr | scroll text down (P)
|
| set_attributes | sgr | sa | define video attributes #1-#9 (PG9)
|
| set_tab | hts | st | set a tab in every row, current columns
|
| set_window | wind | wi | current window is lines #1-#2 cols #3-#4
|
| tab | ht | ta | tab to next 8-space hardware tab stop
|
| to_status_line | tsl | ts | move to status line
|
| underline_char | uc | uc | underline char and move past it
|
| up_half_line | hu | hu | half a line up
|
| init_prog | iprog | iP | path name of program for initialization
|
| key_a1 | ka1 | K1 | upper left of keypad
|
| key_a3 | ka3 | K3 | upper right of keypad
|
| key_b2 | kb2 | K2 | center of keypad
|
| key_c1 | kc1 | K4 | lower left of keypad
|
| key_c3 | kc3 | K5 | lower right of keypad
|
| prtr_non | mc5p | pO | turn on printer for #1 bytes
|
| char_padding | rmp | rP | like ip but when in insert mode
|
| acs_chars | acsc | ac | graphics charset pairs - def=vt100
|
| plab_norm | pln | pn | program label #1 to show string #2
|
| key_btab | kcbt | kB | back-tab key
|
| enter_xon_mode | smxon | SX | turn on xon/xoff handshaking
|
| exit_xon_mode | rmxon | RX | turn off xon/xoff handshaking
|
| enter_am_mode | smam | SA | turn on automatic margins
|
| exit_am_mode | rmam | RA | turn off automatic margins
|
| xon_character | xonc | XN | XON character
|
| xoff_character | xoffc | XF | XOFF character
|
| ena_acs | enacs | eA | enable alternate char set
|
| label_on | smln | LO | turn on soft labels
|
| label_off | rmln | LF | turn off soft labels
|
| key_beg | kbeg | @1 | begin key
|
| key_cancel | kcan | @2 | cancel key
|
| key_close | kclo | @3 | close key
|
| key_command | kcmd | @4 | command key
|
| key_copy | kcpy | @5 | copy key
|
| key_create | kcrt | @6 | create key
|
| key_end | kend | @7 | end key
|
| key_enter | kent | @8 | enter/send key
|
| key_exit | kext | @9 | exit key
|
| key_find | kfnd | @0 | find key
|
| key_help | khlp | %1 | help key
|
| key_mark | kmrk | %2 | mark key
|
| key_message | kmsg | %3 | message key
|
| key_move | kmov | %4 | move key
|
| key_next | knxt | %5 | next key
|
| key_open | kopn | %6 | open key
|
| key_options | kopt | %7 | options key
|
| key_previous | kprv | %8 | previous key
|
| key_print | kprt | %9 | print key
|
| key_redo | krdo | %0 | redo key
|
| key_reference | kref | &1 | reference key
|
| key_refresh | krfr | &2 | refresh key
|
| key_replace | krpl | &3 | replace key
|
| key_restart | krst | &4 | restart key
|
| key_resume | kres | &5 | resume key
|
| key_save | ksav | &6 | save key
|
| key_suspend | kspd | &7 | suspend key
|
| key_undo | kund | &8 | undo key
|
| key_sbeg | kBEG | &9 | shifted key
|
| key_scancel | kCAN | &0 | shifted key
|
| key_scommand | kCMD | *1 | shifted key
|
| key_scopy | kCPY | *2 | shifted key
|
| key_screate | kCRT | *3 | shifted key
|
| key_sdc | kDC | *4 | shifted key
|
| key_sdl | kDL | *5 | shifted key
|
| key_select | kslt | *6 | select key
|
| key_send | kEND | *7 | shifted key
|
| key_seol | kEOL | *8 | shifted key
|
| key_sexit | kEXT | *9 | shifted key
|
| key_sfind | kFND | *0 | shifted key
|
| key_shelp | kHLP | #1 | shifted key
|
| key_shome | kHOM | #2 | shifted key
|
| key_sic | kIC | #3 | shifted key
|
| key_sleft | kLFT | #4 | shifted key
|
| key_smessage | kMSG | %a | shifted key
|
| key_smove | kMOV | %b | shifted key
|
| key_snext | kNXT | %c | shifted key
|
| key_soptions | kOPT | %d | shifted key
|
| key_sprevious | kPRV | %e | shifted key
|
| key_sprint | kPRT | %f | shifted key
|
| key_sredo | kRDO | %g | shifted key
|
| key_sreplace | kRPL | %h | shifted key
|
| key_sright | kRIT | %i | shifted key
|
| key_srsume | kRES | %j | shifted key
|
| key_ssave | kSAV | !1 | shifted key
|
| key_ssuspend | kSPD | !2 | shifted key
|
| key_sundo | kUND | !3 | shifted key
|
| req_for_input | rfi | RF | send next input char (for ptys)
|
| key_f11 | kf11 | F1 | F11 function key
|
| key_f12 | kf12 | F2 | F12 function key
|
| key_f13 | kf13 | F3 | F13 function key
|
| key_f14 | kf14 | F4 | F14 function key
|
| key_f15 | kf15 | F5 | F15 function key
|
| key_f16 | kf16 | F6 | F16 function key
|
| key_f17 | kf17 | F7 | F17 function key
|
| key_f18 | kf18 | F8 | F18 function key
|
| key_f19 | kf19 | F9 | F19 function key
|
| key_f20 | kf20 | FA | F20 function key
|
| key_f21 | kf21 | FB | F21 function key
|
| key_f22 | kf22 | FC | F22 function key
|
| key_f23 | kf23 | FD | F23 function key
|
| key_f24 | kf24 | FE | F24 function key
|
| key_f25 | kf25 | FF | F25 function key
|
| key_f26 | kf26 | FG | F26 function key
|
| key_f27 | kf27 | FH | F27 function key
|
| key_f28 | kf28 | FI | F28 function key
|
| key_f29 | kf29 | FJ | F29 function key
|
| key_f30 | kf30 | FK | F30 function key
|
| key_f31 | kf31 | FL | F31 function key
|
| key_f32 | kf32 | FM | F32 function key
|
| key_f33 | kf33 | FN | F33 function key
|
| key_f34 | kf34 | FO | F34 function key
|
| key_f35 | kf35 | FP | F35 function key
|
| key_f36 | kf36 | FQ | F36 function key
|
| key_f37 | kf37 | FR | F37 function key
|
| key_f38 | kf38 | FS | F38 function key
|
| key_f39 | kf39 | FT | F39 function key
|
| key_f40 | kf40 | FU | F40 function key
|
| key_f41 | kf41 | FV | F41 function key
|
| key_f42 | kf42 | FW | F42 function key
|
| key_f43 | kf43 | FX | F43 function key
|
| key_f44 | kf44 | FY | F44 function key
|
| key_f45 | kf45 | FZ | F45 function key
|
| key_f46 | kf46 | Fa | F46 function key
|
| key_f47 | kf47 | Fb | F47 function key
|
| key_f48 | kf48 | Fc | F48 function key
|
| key_f49 | kf49 | Fd | F49 function key
|
| key_f50 | kf50 | Fe | F50 function key
|
| key_f51 | kf51 | Ff | F51 function key
|
| key_f52 | kf52 | Fg | F52 function key
|
| key_f53 | kf53 | Fh | F53 function key
|
| key_f54 | kf54 | Fi | F54 function key
|
| key_f55 | kf55 | Fj | F55 function key
|
| key_f56 | kf56 | Fk | F56 function key
|
| key_f57 | kf57 | Fl | F57 function key
|
| key_f58 | kf58 | Fm | F58 function key
|
| key_f59 | kf59 | Fn | F59 function key
|
| key_f60 | kf60 | Fo | F60 function key
|
| key_f61 | kf61 | Fp | F61 function key
|
| key_f62 | kf62 | Fq | F62 function key
|
| key_f63 | kf63 | Fr | F63 function key
|
| clr_bol | el1 | cb | Clear to beginning of line
|
| clear_margins | mgc | MC | clear right and left soft margins
|
| set_left_margin | smgl | ML | set left soft margin
|
| set_right_margin | smgr | MR | set right soft margin
|
| label_format | fln | Lf | label format
|
| set_clock | sclk | SC | set clock, #1 hrs #2 mins #3 secs
|
| display_clock | dclk | DK | display clock at (#1,#2)
|
| remove_clock | rmclk | RC | remove clock
|
| create_window | cwin | CW | define a window #1 from #2, #3 to #4, #5
|
| goto_window | wingo | WG | go to window #1
|
| hangup | hup | HU | hang-up phone
|
| dial_phone | dial | DI | dial number #1
|
| quick_dial | qdial | QD | dial number #1 without checking
|
| tone | tone | TO | select touch tone dialing
|
| pulse | pulse | PU | select pulse dialling
|
| flash_hook | hook | fh | flash switch hook
|
| fixed_pause | pause | PA | pause for 2-3 seconds
|
| wait_tone | wait | WA | wait for dial-tone
|
| user0 | u0 | u0 | User string #0
|
| user1 | u1 | u1 | User string #1
|
| user2 | u2 | u2 | User string #2
|
| user3 | u3 | u3 | User string #3
|
| user4 | u4 | u4 | User string #4
|
| user5 | u5 | u5 | User string #5
|
| user6 | u6 | u6 | User string #6
|
| user7 | u7 | u7 | User string #7
|
| user8 | u8 | u8 | User string #8
|
| user9 | u9 | u9 | User string #9
|
| orig_pair | op | op | Set default pair to its original value
|
| orig_colors | oc | oc | Set all color pairs to the original ones
|
| initialize_color | initc | Ic | initialize color #1 to (#2,#3,#4)
|
| initialize_pair | initp | Ip | Initialize color pair #1 to fg=(#2,#3,#4), bg=(#5,#6,#7)
|
| set_color_pair | scp | sp | Set current color pair to #1
|
| set_foreground | setf | Sf | Set foreground color #1
|
| set_background | setb | Sb | Set background color #1
|
| change_char_pitch | cpi | ZA | Change number of characters per inch
|
| change_line_pitch | lpi | ZB | Change number of lines per inch
|
| change_res_horz | chr | ZC | Change horizontal resolution
|
| change_res_vert | cvr | ZD | Change vertical resolution
|
| define_char | defc | ZE | Define a character
|
| enter_doublewide_mode | swidm | ZF | Enter double-wide mode
|
| enter_draft_quality | sdrfq | ZG | Enter draft-quality mode
|
| enter_italics_mode | sitm | ZH | Enter italic mode
|
| enter_leftward_mode | slm | ZI | Start leftward carriage motion
|
| enter_micro_mode | smicm | ZJ | Start micro-motion mode
|
| enter_near_letter_quality | snlq | ZK | Enter NLQ mode
|
| enter_normal_quality | snrmq | ZL | Wnter normal-quality mode
|
| enter_shadow_mode | sshm | ZM | Enter shadow-print mode
|
| enter_subscript_mode | ssubm | ZN | Enter subscript mode
|
| enter_superscript_mode | ssupm | ZO | Enter superscript mode
|
| enter_upward_mode | sum | ZP | Start upward carriage motion
|
| exit_doublewide_mode | rwidm | ZQ | End double-wide mode
|
| exit_italics_mode | ritm | ZR | End italic mode
|
| exit_leftward_mode | rlm | ZS | End left-motion mode
|
| exit_micro_mode | rmicm | ZT | End micro-motion mode
|
| exit_shadow_mode | rshm | ZU | End shadow-print mode
|
| exit_subscript_mode | rsubm | ZV | End subscript mode
|
| exit_superscript_mode | rsupm | ZW | End superscript mode
|
| exit_upward_mode | rum | ZX | End reverse character motion
|
| micro_column_address | mhpa | ZY | Like column_address in micro mode
|
| micro_down | mcud1 | ZZ | Like cursor_down in micro mode
|
| micro_left | mcub1 | Za | Like cursor_left in micro mode
|
| micro_right | mcuf1 | Zb | Like cursor_right in micro mode
|
| micro_row_address | mvpa | Zc | Like row_address in micro mode
|
| micro_up | mcuu1 | Zd | Like cursor_up in micro mode
|
| order_of_pins | porder | Ze | Match software bits to print-head pins
|
| parm_down_micro | mcud | Zf | Like parm_down_cursor in micro mode
|
| parm_left_micro | mcub | Zg | Like parm_left_cursor in micro mode
|
| parm_right_micro | mcuf | Zh | Like parm_right_cursor in micro mode
|
| parm_up_micro | mcuu | Zi | Like parm_up_cursor in micro mode
|
| select_char_set | scs | Zj | Select character set
|
| set_bottom_margin | smgb | Zk | Set bottom margin at current line
|
| set_bottom_margin_parm | smgbp | Zl | Set bottom margin at line #1 or #2 lines from bottom
|
| set_left_margin_parm | smglp | Zm | Set left (right) margin at column #1 (#2)
|
| set_right_margin_parm | smgrp | Zn | Set right margin at column #1
|
| set_top_margin | smgt | Zo | Set top margin at current line
|
| set_top_margin_parm | smgtp | Zp | Set top (bottom) margin at row #1 (#2)
|
| start_bit_image | sbim | Zq | Start printing bit image braphics
|
| start_char_set_def | scsd | Zr | Start character set definition
|
| stop_bit_image | rbim | Zs | Stop printing bit image graphics
|
| stop_char_set_def | rcsd | Zt | End definition of character aet
|
| subscript_characters | subcs | Zu | List of subscriptable characters
|
| superscript_characters | supcs | Zv | List of superscriptable characters
|
| these_cause_cr | docr | Zw | Printing any of these chars causes CR
|
| zero_motion | zerom | Zx | No motion for subsequent character
|
The following string capabilities are present in the SVr4.0 term structure,but are not documented in the man page.
| Variable | Cap- | TCap | Description
|
| String | name | Code |
|
| char_set_names | csnm | Zy | List of character set names
|
| key_mouse | kmous | Km | Mouse event has occurred
|
| mouse_info | minfo | Mi | Mouse status information
|
| req_mouse_pos | reqmp | RQ | Request mouse position
|
| get_mouse | getm | Gm | Curses should get button events
|
| set_a_foreground | setaf | AF | Set ANSI foreground color
|
| set_a_background | setab | AB | Set ANSI background color
|
| pkey_plab | pfxl | xl | Program function key #1 to type string #2 and show string #3
|
| device_type | devt | dv | Indicate language/codeset support
|
| code_set_init | csin | ci | Init sequence for multiple codesets
|
| set0_des_seq | s0ds | s0 | Shift to code set 0 (EUC set 0, ASCII)
|
| set1_des_seq | s1ds | s1 | Shift to code set 1
|
| set2_des_seq | s2ds | s2 | Shift to code set 2
|
| set3_des_seq | s3ds | s3 | Shift to code set 3
|
| set_lr_margin | smglr | ML | Set both left and right margins to #1, #2
|
| set_tb_margin | smgtb | MT | Sets both top and bottom margins to #1, #2
|
| bit_image_repeat | birep | Xy | Repeat bit image cell #1 #2 times
|
| bit_image_newline | binel | Zz | Move to next row of the bit image
|
| bit_image_carriage_return | bicr | Yv | Move to beginning of same row
|
| color_names | colornm | Yw | Give name for color #1
|
| define_bit_image_region | defbi | Yx | Define rectangualar bit image region
|
| end_bit_image_region | endbi | Yy | End a bit-image region
|
| set_color_band | setcolor | Yz | Change to ribbon color #1
|
| set_page_length | slines | YZ | Set page length to #1 lines
|
| display_pc_char | dispc | S1 | Display PC character
|
| enter_pc_charset_mode | smpch | S2 | Enter PC character display mode
|
| exit_pc_charset_mode | rmpch | S3 | Exit PC character display mode
|
| enter_scancode_mode | smsc | S4 | Enter PC scancode mode
|
| exit_scancode_mode | rmsc | S5 | Exit PC scancode mode
|
| pc_term_options | pctrm | S6 | PC terminal options
|
| scancode_escape | scesc | S7 | Escape for scancode emulation
|
| alt_scancode_esc | scesa | S8 | Alternate escape for scancode emulation
|
The XSI Curses standard added these. They are probably in some post-4.1 version of System V curses as well, but because XSI Curses lists them instrict alphabetical order we don't know if this is the right binary order.The ncurses termcap names for them are invented; according to theXSI Curses standard, they have no termcap names. If your compiled terminfoentries use these, they may not be binary-compatible with System V terminfoentries after SVr4.1; beware!
| Variable | Cap- | TCap | Description
|
| String | name | Code |
|
| enter_horizontal_hl_mode | ehhlm | Xh | Enter horizontal highlight mode
|
| enter_left_hl_mode | elhlm | Xl | Enter left highlight mode
|
| enter_low_hl_mode | elohlm | Xo | Enter low highlight mode
|
| enter_right_hl_mode | erhlm | Xr | Enter right highlight mode
|
| enter_top_hl_mode | ethlm | Xt | Enter top highlight mode
|
| enter_vertical_hl_mode | evhlm | Xv | Enter vertical highlight mode
|
A Sample Entry
The following entry, describing an ANSI-standard terminal, is representativeof what a terminfo entry for a modern terminal typically looks like.
ansi|ansi/pc-term compatible with color, mc5i, colors#8, ncv#3, pairs#64, cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, cuu=\E[%p1%dA, dch=\E[%p1%dP, dl=\E[%p1%dM, ech=\E[%p1%dX, el1=\E[1K, hpa=\E[%p1%dG, ht=\E[I, ich=\E[%p1%d@, il=\E[%p1%dL, indn=\E[%p1%dS, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf2=\E[N, kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U, kich1=\E[L, mc4=\E[4i, mc5=\E[5i, nel=\r\E[S, op=\E[37;40m, rep=%p1%c\E[%p2%{1}%-%db, rin=\E[%p1%dT, s0ds=\E(B, s1ds=\E)B, s2ds=\E*B, s3ds=\E+B, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m, sgr0=\E[0;10m, tbc=\E[2g, u6=\E[%d;%dR, u7=\E[6n, u8=\E[?%[;0123456789]c, u9=\E[c, vpa=\E[%p1%dd,Entries may continue onto multiple lines by placing white space atthe beginning of each line except the first.Comments may be included on lines beginning with ``#''.Capabilities interminfoare of three types:Boolean capabilities which indicate that the terminal hassome particular feature, numeric capabilities giving the size of the terminalor the size of particular delays, and stringcapabilities, which give a sequence which can be used to perform particularterminal operations.
Types of Capabilities
All capabilities have names. For instance, the fact thatANSI-standard terminals haveautomatic margins(i.e., an automatic return and line-feedwhen the end of a line is reached) is indicated by the capability am.Hence the description of ansi includes am.Numeric capabilities are followed by the character `#' and then the value.Thus cols, which indicates the number of columns the terminal has,gives the value `80' for ansi.
Finally, string valued capabilities, such as el (clear to end of linesequence) are given by the two-character code, an `=', and then a stringending at the next following `,'.
A number of escape sequences are provided in the string valued capabilitiesfor easy encoding of characters there. Both \E and \emap to an ESCAPE character,^x maps to a control-x for any appropriate x, and the sequences\n \l \r \t \b \f \s givea newline, line-feed, return, tab, backspace, form-feed, and space.Other escapes include \^ for ^,\\ for \,\, for comma,\: for :,and \0 for null.(\0 will produce \200, which does not terminate a string but behavesas a null character on most terminals.)Finally, characters may be given as three octal digits after a \.
A delay in milliseconds may appear anywhere in a string capability, enclosed in$<..> brackets, as in el=\EK$<5>, and padding characters are supplied bytputsto provide this delay. The delay must be a number with at most one decimalplace of precision; it may be followed by suffixes `*' or '/' or both. A `*'indicates that the padding required is proportional to the number of linesaffected by the operation, and the amount given is the per-affected-unitpadding required. (In the case of insert character, the factor is still thenumber oflinesaffected.) Normally, padding is advisory if the device has the xoncapability; it is used for cost computation but does not trigger delays. A `/'suffix indicates that the padding is mandatory and forces a delay of the givennumber of milliseconds even on devices for which xon is present toindicate flow control.
Sometimes individual capabilities must be commented out.To do this, put a period before the capability name.For example, see the secondindin the example above.
Fetching Compiled Descriptions
If the environment variable TERMINFO is set, it is interpreted as the pathnameof a directory containing the compiled description you are working on. Onlythat directory is searched.
If TERMINFO is not set, the ncurses version of the terminfo reader codewill instead look in the directory $HOME/.terminfofor a compiled description.If it fails to find one there, and the environment variable TERMINFO_DIRS isset, it will interpret the contents of that variable as a list of colon-separated directories to be searched (an empty entry is interpreted as acommand to search /usr/share/terminfo). If no description is found in any of theTERMINFO_DIRS directories, the fetch fails.
If neither TERMINFO nor TERMINFO_DIRS is set, the last place tried will be thesystem terminfo directory, /usr/share/terminfo.
(Neither the $HOME/.terminfo lookups nor TERMINFO_DIRS extensions aresupported under stock System V terminfo/curses.)
Preparing Descriptions
We now outline how to prepare descriptions of terminals.The most effective way to prepare a terminal description is by imitatingthe description of a similar terminal interminfoand to build up a description gradually, using partial descriptionswithvior some other screen-oriented program to check that they are correct.Be aware that a very unusual terminal may expose deficiencies inthe ability of theterminfofile to describe itor bugs in the screen-handling code of the test program.
To get the padding for insert line right (if the terminal manufacturerdid not document it) a severe test is to edit /etc/passwd at 9600 baud,delete 16 or so lines from the middle of the screen, then hit the `u'key several times quickly.If the terminal messes up, more padding is usually needed.A similar test can be used for insert character.
Basic Capabilities
The number of columns on each line for the terminal is given by thecols numeric capability. If the terminal is a CRT, then thenumber of lines on the screen is given by the lines capability.If the terminal wraps around to the beginning of the next line whenit reaches the right margin, then it should have the am capability.If the terminal can clear its screen, leaving the cursor in the homeposition, then this is given by the clear string capability.If the terminal overstrikes(rather than clearing a position when a character is struck over)then it should have the os capability.If the terminal is a printing terminal, with no soft copy unit,give it bothhcandos.(osapplies to storage scope terminals,