Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ terminfo(5) — AIX PS/2 1.2.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

curses

Terminfo Level Subroutines

extended curses

library

printf, fprintf, sprintf, NLprintf, NLfprintf, NLsprintf, wsprintf

termdef

TERM

display

tic



TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



-------------------------------------------------------------------------------
terminfo



PURPOSE

Describes terminals by capability.

DESCRIPTION

A terminfo file is a data base that describes terminals, defining their
capabilities and their methods of operation.  It is used by various programs,
including the Extended Curses Library (libcur.a) and the vi editor.  The
information defined includes initialization sequences, padding requirements,
cursor positioning, and other command sequences that control specific
terminals.

This section explains the terminfo source file format.  Before a terminfo
source file can be used, it must be compiled using the tic command, which is
described in AIX Operating System Commands Reference.  You can edit and modify
these source files, such as /usr/lib/terminfo/ibm.ti, which describes IBM
terminals, and /usr/lib/terminfo/dec.ti, which describes DEC terminals.

See "TERM" for a list of some of the terminals supported by predefined terminfo
data base files and the corresponding values for the TERM environment variable.

If you have a terminal which is not supported, see if one of the many sample
terminfo files supplied with your system will meet your need; if such a sample
file exists, you can install it on your system (you may have to make some minor
adjustments) using the "tic" program supplied with your system.  Also, if you
have termcap descriptions from other UNIX systems, you may translate them into
terminfo descriptions, using an "ex" script called /usr/lib/terminfo/cvt.ex
(supplied with your system, as well).

Each terminfo entry consists of a number of fields separated by commas,
ignoring any white space between commas.  The first field for each terminal
gives the various names the terminal is known separated by | (vertical bar)
characters.  The first name given should be 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 except the last should be in lowercase and not contain blanks.  The last
name can contain uppercase characters for readability.

Terminal names (except the last) should be chosen using the following
conventions.  A root name should be chosen to represent the particular hardware
class of the terminal.  This name should not contain hyphens, except to avoid
synonyms that conflict with other names.  Possible modes for the hardware or
user preferences are indicated by appending a - (hyphen) and an indicator of
the mode to the root name.  Thus, a terminal in 132 column mode would be
term-w.  The following suffixes should be used where possible:




Processed November 7, 1990       TERMINFO(5,F)                                1





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



Suffix    Meaning                                    Example

-am       With automatic margins (usually default)   term-am
-c        Color mode                                 term-c
-w        Wide mode (more than 80 columns)           term-w
-nam      Without automatic margins                  term-nam
-n        Number of lines on the screen              term-60
-na       No arrow keys (leave them in local)        term-na
-np       Number of pages of memory                  term-4p
-rv       Reverse video                              term-rv

Types of Capabilities

Capabilities in terminfo are of three types:  boolean, numeric, and string.
Boolean capabilities indicate that the terminal has some particular feature.
Boolean capabilities are true if the corresponding name is in the terminal
description.  Numeric capabilities give the size of the terminal or the size of
particular delays.  String capabilities give a sequence that can be used to
perform particular terminal operations.

Entries can continue onto multiple lines by placing white space at the
beginning of each subsequent line.  Comments are included on lines beginning
with the # (sharp sign) character.

List of Capabilities

The following table shows VARIABLE, which is the name the programmer uses to
access the terminfo capability.  The CAP NAME (capability name) is the short
name used in the text of the data base, and is used by a person updating the
data base.  The I. CODE is the 2-letter internal code used in the compiled data
base, and always corresponds to a termcap capability name.

Capability names have no absolute length limit.  An informal limit of five
characters is adopted to keep them short and to allow the tabs in the source
file caps to be aligned.  Whenever possible, names are chosen to be the same as
or similar to the ANSI X3.64 standard of 1979.

(P)   Indicates that padding may be specified.

(G)   Indicates that the string is passed through tparm with parameters as
      given (#i).

(*)   Indicates that padding may be based on the number of lines affected.

(#i)  Indicates the i(th) parameter.

                          CAP      I.
VARIABLE                  NAME    CODE     DESCRIPTION

Booleans:





Processed November 7, 1990       TERMINFO(5,F)                                2





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



                          CAP      I.
VARIABLE                  NAME    CODE     DESCRIPTION

auto_left_margin          bw      bw       Indicates cub1 wraps from column 0
                                           to last column.
auto_right_margin         am      am       Indicates terminal has automatic
                                           margins.
beehive_glitch            xsb     xs       Indicates a terminal with fl=escape
                                           and f2=Ctrl-C.
ceol_standout_glitch      xhp     xs       Indicates standout not erased by
                                           overwriting.
eat_newline_glitch        xenl    xn       Ignores new-line character after 80
                                           columns.
erase_overstrike          eo      eo       Erases overstrikes with a blank.
generic_type              gn      gn       Indicates generic line type (such
                                           as, dialup, switch)
hard_copy                 hc      hc       Indicates hardcopy terminal.
has_meta_key              km      km       Indicates terminal has a meta key
                                           (shift, sets parity bit).
has_status_line           hs      hs       Indicates terminal has extra "status
                                           line".
insert_null_glitch        in      in       Indicates insert mode distinguishes
                                           nulls.
memory_above              da      da       Retains information above display in
                                           memory.
memory_below              db      db       Retains information below display in
                                           memory.
move_insert_mode          mir     mi       Indicates safe to move while in
                                           insert mode.
move_standout_mode        msgr    ms       Indicates safe to move in standout
                                           modes.
over_strike               os      os       Indicates terminal overstrikes.
status_line_esc_ok        eslok   es       Indicates escape can be used on the
                                           status line.
teleray_glitch            xt      xt       Indicates destructive tabs and
                                           blanks inserted while entering
                                           standout mode.
tilde_glitch              hz      hz       Indicates terminal cannot print ~
                                           characters.
transparent_underline     ul      ul       Overstrikes with underline
                                           character.
xon_xoff                  xon     xo       Indicates terminal uses xon/xoff
                                           handshaking.

Numbers:

columns                   cols    co       Specifies the number of columns in a
                                           line.
init_tabs                 it      it       Provides tabs initially every #
                                           spaces.
lines                     lines   li       Specifies the number of lines on
                                           screen or page



Processed November 7, 1990       TERMINFO(5,F)                                3





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



                          CAP      I.
VARIABLE                  NAME    CODE     DESCRIPTION

lines_of_memory           lm      lm       Specifies the number of lines of
                                           memory if > lines.  A value of 0
                                           indicates variable.
magic_cookie_glitch       xmc     sg       Indicates number of blank characters
                                           left by smso or rmso.
padding_baud_rate         pb      pb       Indicates lowest baud where carriage
                                           return and line return padding is
                                           needed.
virtual_terminal          vt      vt       Indicates virtual terminal number.
width_status_lines        wsl     ws       Specifies the number of columns in
                                           status line.

Strings:

appl_defined_str          apstr   za       Application defined terminal string.
back_tab                  cbt     bt       Back tab. (P)
bell                      bel     bl       Produces an audible signal (bell).
                                           (P)
box_chars_1               box1    bx       Box characters primary set.
box_chars_2               box2    by       Box characters alternate set.
box_attr_1                batt1   Bx       Attributes for box_chars_1.
box_attr_2                batt2   By       Attributes for box_chars_2.
carriage_return           cr      cr       Indicates carriage return. (P*)
change_scroll_region      csr     cs       Changes scroll region to lines #1
                                           through #2. (PG)
clear_all_tabs            tbc     ct       Clears all tab stops. (P)
clear_screen              clear   cl       Clears screen and puts cursor in
                                           home position. (P*)
clr_eol                   el      ce       Clears to end of line. (P)
clr_eos                   ed      cd       Clears to end of the display. (P*)
color_bg_0                colb0   d0       Background color 0 black.
color_bg_1                colb1   d1       Background color 1 red.
color_bg_2                colb2   d2       Background color 2 green.
color_bg_3                colb3   d3       Background color 3 brown.
color_bg_4                colb4   d4       Background color 4 blue.
color_bg_5                colb5   d5       Background color 5 magenta.
color_bg_6                colb6   d6       Background color 6 cyan.
color_bg_7                colb7   d7       Background color 7 white.
color_fg_0                colf0   c0       Foreground color 0 white.
color_fg_1                colf1   c1       Foreground color 1 red.
color_fg_2                colf2   c2       Foreground color 2 green.
color_fg_3                colf3   c3       Foreground color 3 brown.
color_fg_4                colf4   c4       Foreground color 4 blue.
color_fg_5                colf5   c5       Foreground color 5 magenta.
color_fg_6                colf6   c6       Foreground color 6 cyan.
color_fg_7                colf7   c7       Foreground color 7 black.
column_address            hpa     ch       Sets cursor column. (PG)
command_character         cmdch   CC       Indicates terminal command prototype
                                           character can be set.



Processed November 7, 1990       TERMINFO(5,F)                                4





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



                          CAP      I.
VARIABLE                  NAME    CODE     DESCRIPTION

cursor_address            cup     cm       Indicates screen relative cursor
                                           motion row #1 col #2. (PG)
cursor_down               cud1    do       Moves cursor down one line.
cursor_home               home    ho       Moves cursor to home position (if no
                                           cup).
cursor_invisible          civis   vi       Makes cursor invisible.
cursor_left               cubl    le       Moves cursor left one space.
cursor_mem_address        mrcup   CM       Indicates memory relative cursor
                                           addressing.
cursor_normal             cnorm   ve       Makes cursor appear normal (undo vs
                                           or vi).
cursor_right              cuf1    nd       Indicates nondestructive space
                                           (cursor right).
cursor_to_ll              ll      ll       Moves cursor to first column of last
                                           line (if no cup).
cursor_up                 cuu1    up       Moves cursor up one line (cursor
                                           up).
cursor_visible            cvvis   vs       Makes cursor very visible.
delete_character          dch1    dc       Deletes character. (P*)
delete_line               dl1     dl       Deletes line. (P*)
dis_status_line           dsl     ds       Disables status line.
down_half_line            hd      hd       Indicates subscript (forward 1/2
                                           line feed).
enter_alt_charset_mode    smacs   as       Starts alternate character set. (P)
enter_blink_mode          blink   mb       Enables blinking.
enter_bold_mode           bold    md       Enables bold (extra bright) mode.
enter_ca_mode             smcup   ti       Begins programs that use cup.
enter_delete_mode         smdc    dm       Starts delete mode.
enter_dim_mode            dim     mh       Enables half-bright mode.
enter_insert_mode         smir    im       Starts insert mode.
enter_protected_mode      prot    mp       Enables protected mode.
enter_reverse_mode        rev     mr       Enables reverse video mode.
enter_secure_mode         invis   mk       Enables blank mode (characters
                                           invisible).
enter_standout_mode       smso    so       Begins standout mode.
enter_underline_mode      smul    us       Starts underscore mode.
erase_chars               ech     ec       Erases #1 characters. (PG)
exit_alt_charset_mode     rmacs   ae       Ends alternate character set. (P)
exit_attribute_mode       sgr0    me       Disables all attributes.
exit_ca_mode              rmcup   te       Ends programs that use cup.
exit_delete_mode          rmdc    ed       Ends delete mode.
exit_insert_mode          rmir    ei       Ends insert mode.
exit_standout_mode        rmso    se       Ends stand out mode.
exit_underline_mode       rmul    ue       Ends underscore mode.
flash_screen              flash   vb       Indicates visual bell (may not move
                                           cursor).
font_0                    font0   f0       Select font 0.
font_1                    font1   f1       Select font 1.
font_2                    font2   f2       Select font 2.



Processed November 7, 1990       TERMINFO(5,F)                                5





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



                          CAP      I.
VARIABLE                  NAME    CODE     DESCRIPTION

font_3                    font3   f3       Select font 3.
font_4                    font4   f4       Select font 4.
font_5                    font5   f5       Select font 5.
font_6                    font6   f6       Select font 6.
font_7                    font7   f7       Select font 7.
form_feed                 ff      ff       Ejects page (hardcopy terminal).
                                           (P*)
from_status_line          fsl     fs       Returns from status line.
init_1string              is1     is       Initializes terminal.
init_2string              is2     is       Initializes terminal.
init_3string              is3     (none)   Initializes terminal.
init_file                 if      if       Identifies file containing is.
insert_character          ich1    ic       Inserts character. (P)
insert_line               il1     al       Adds new blank line. (P*)
insert_padding            ip      ip       Inserts pad after character
                                           inserted. (P*)
key_backspace             kbs     kb       Sent by backspace key.
key_back_tab              kbtab   k0       Sent by backtab key.
key_catab                 ktbc    ka       Sent by clear-all-tabs key.
key_clear                 kclr    kC       Sent by clear-screen or erase key.
key_ctab                  kctab   kt       Sent by clear-tab key.
key_command               kcmd    kc       Command request key.
key_command_pane          kcpn    kW       Command pane key.
key_dc                    kdch1   kD       Sent by delete-character key.
key_dl                    kdl1    kL       Sent by delete-line key.
key_do                    kdo     ki       Do request key.
key_down                  kcud1   kd       Sent by terminal down arrow key.
key_eic                   krmir   kM       Sent by rmir or smir in insert mode.
key_end                   kend    kw       End key.
key_eol                   ke1     kE       Sent by clear-to-end-of-line key.
key_eos                   ked     kS       Sent by clear-to-end-of-screen key.
key_f0                    kf0     k0       Sent by function key F0.
key_f1                    kf1     k1       Sent by function key F1.
key_f2                    kf2     k2       Sent by function key F2.
key_f3                    kf3     k3       Sent by function key F3.
key_f4                    kf4     k4       Sent by function key F4.
key_f5                    kf5     k5       Sent by function key F5.
key_f6                    kf6     k6       Sent by function key F6.
key_f7                    kf7     k7       Sent by function key F7.
key_f8                    kf8     k8       Sent by function key F8.
key_f9                    kf9     k9       Sent by function key F9.
key_f10                   kf10    k;       Sent by function key F10.
key_f11                   kf11    k<       Sent by function key F11.
key_f12                   kf12    k>       Sent by function key F12.
key_help                  khlp    kq       Help key.
key_home                  khome   kh       Sent by home key.
key_ic                    kich1   kI       Sent by insert character/enter
                                           insert mode key.
key_il                    kil1    kA       Sent by insert line key.



Processed November 7, 1990       TERMINFO(5,F)                                6





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



                          CAP      I.
VARIABLE                  NAME    CODE     DESCRIPTION

key_left                  kcub1   kl       Sent by terminal left arrow key.
key_ll                    kll     kH       Sent by home-down key.
key_newline               knl     nl       New-line key.
key_next_pane             knpn    kv       Next-pane key.
key_npage                 knp     kN       Sent by next-page key.
key_ppage                 kpp     kP       Sent by previous-page key.
key_prev_cmd              kpcmd   kp       Sent by previous-command key.
key_quit                  kquit   kQ       Quit key.
key_right                 kcuf1   kr       Sent by terminal right arrow key.
key_scroll_left           kscl    kz       Scroll left.
key_scroll_right          kscr    kZ       Scroll right.
key_select                ksel    kU       Select key.
key_sf                    kind    kF       Sent by scroll-forward/down key.
key_smap_in1              kmpf1   Kv       Input for special mapped key 1.
key_smap_out1             kmpt1   KV       Output for mapped key 1.
key_smap_in2              kmpf2   Kw       Input for special mapped key 2.
key_smap_out2             kmpt2   KW       Output for mapped key 2.
key_smap_in3              kmpf3   Kx       Input for special mapped key 3.
key_smap_out3             kmpt3   KX       Output for mapped key 3.
key_smap_in4              kmpf4   Ky       Input for special mapped key 4.
key_smap_out4             kmpt4   KY       Output for mapped key 4.
key_smap_in5              kmpf5   Kz       Input for special mapped key 5.
key_smap_out5             kmpt5   KZ       Output for mapped key 5.
key_sr                    kri     kR       Sent by scroll-backward/up key.
key_stab                  khts    kT       Sent by set-tab key.
key_tab                   ktab    kn       Tab key.
key_up                    kcuu1   ku       Sent by terminal up arrow key.
keypad_local              rmkx    ke       Ends keypad transmit mode.
keypad_xmit               smkx    ks       Puts terminal in keypad transmit
                                           mode.
lab_f0                    lf0     l0       Labels function key F0 if not F0.
lab_f1                    lf1     l1       Labels function key F1 if not F1.
lab_f2                    lf2     l2       Labels function key F2 if not F2.
lab_f3                    lf3     l3       Labels function key F3 if not F3.
lab_f4                    lf4     l4       Labels function key F4 if not F4.
lab_f5                    lf5     l5       Labels function key F5 if not F5.
lab_f6                    lf6     l6       Labels function key F6 if not F6.
lab_f7                    lf7     l7       Labels function key F7 if not F7.
lab_f8                    lf8     l8       Labels function key F8 if not F8.
lab_f9                    lf9     l9       Labels function key F9 if not F9.
lab_f10                   lf10    la       Labels function key F10 if not F10.
meta_on                   smm     mm       Enables "meta mode" (8th bit).
meta_off                  rmm     mo       Disables "meta mode".
newline                   nel     nw       Performs new-line function (behaves
                                           like CR followed by LF).
pad_char                  pad     pc       Pads character (instead of NUL).
parm_dch                  dch     DC       Deletes #1 characters. (PG*)
parm_delete_line          dl      DL       Deletes #1 lines. (PG*)
parm_down_cursor          cud     DO       Moves cursor down #1 lines. (PG*)



Processed November 7, 1990       TERMINFO(5,F)                                7





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



                          CAP      I.
VARIABLE                  NAME    CODE     DESCRIPTION

parm_ich                  ich     IC       Inserts #1 blank characters. (PG*)
parm_index                indn    SF       Scrolls forward #1 lines. (PG)
parm_insert_line          il      AL       Adds #1 new blank lines. (PG*)
parm_left_cursor          cub     LE       Moves cursor left #1 spaces. (PG)
parm_right_cursor         cuf     RI       Moves cursor right #1 spaces. (PG*)
parm_rindex               rin     SR       Scrolls backward #1 lines. (PG)
parm_up_cursor            cuu     UP       Moves cursor up #1 lines. (PG*)
pkey_key                  pfkey   pk       Programs function key #1 to type
                                           string #2.
pkey_local                pfloc   pl       Programs function key #1 to execute
                                           string #2.
pkey_xmit                 pfx     px       Programs function key #1 to xmit
                                           string #2.
print_screen              mc0     ps       Prints contents of the screen.
prtr_off                  mc4     pf       Disables the printer.
prtr_on                   mc5     po       Enables the printer.
repeat_char               rep     rp       Repeats character #1 #2 times. (PG*)
reset_1string             rs1     r1       Resets terminal to known modes.
reset_2string             rs2     r2       Resets terminal to known modes.
reset_3string             rs3     r3       Resets terminal to known modes.
reset_file                rf      rf       Identifies the file containing reset
                                           string.
restore_cursor            rc      rc       Restores cursor to position of last
                                           sc.
row_address               vpa     cv       Positions cursor to an absolute
                                           vertical position (set row). (PG)
save_cursor               sc      sc       Saves cursor position. (P)
scroll_forward            ind     sf       Scrolls text up. (P)
scroll_reverse            ri      sr       Scrolls text down. (P)
set_attributes            sgr     sa       Defines the video attributes. (PG9)
set_tab                   hts     st       Sets a tab in all rows, current
                                           column.
set_window                wind    wi       Indicates current window is lines
                                           #1-#2 cols #3-#4.
tab                       ht      ta       Tabs to next 8-space hardware tab
                                           stop.
to_status_line            tsl     ts       Moves to status line, column #1.
underline_char            uc      uc       Underscores one character and moves
                                           beyond it.
up_half_line              hu      hu       Indicates superscript (reverse 1/2
                                           line-feed).
init_prog                 iprog   iP       Locates the program for init.
key_a1                    ka1     K1       Specifies upper left of keypad.
key_a3                    ka3     K3       Specifies upper right of keypad.
key_b2                    kb2     K2       Specifies center of keypad.
key_c1                    kc1     K4       Specifies lower left of keypad.
key_c3                    kc3     K5       Specifies lower right of keypad.
prtr_non                  mc5p    pO       Enables the printer for #1 bytes.




Processed November 7, 1990       TERMINFO(5,F)                                8





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



Terminal capabilities have names.  For instance, the fact that a terminal has
automatic margins (such as, an automatic new-line when the end of a line is
reached) is indicated by the capability am.  Hence the description of the
terminal includes am.  Numeric capabilities are followed by the # (sharp sign)
character and then the value.  Thus the cols#80 capability, which indicates the
number of columns the terminal has, gives the value 80 for the terminal.

Finally, string-valued capabilities, such as el (clear to end of line sequence)
are given by the 2-character code, an = (equal sign), and then a string ending
at the following , (comma).  A delay in milliseconds may appear anywhere in a
string capability, enclosed between a $< and a > as in "el=\EK$<3>", and
padding characters are supplied by tputs to provide this delay.  The delay can
be either a number, such as 20, or a number followed by an * (asterisk), such
as "3*".  An asterisk indicates that the padding required is proportional to
the number of lines affected by the operation, and the amount given is the
per-affected-unit padding required.  (In the case of insert character, the
factor is still the number of lines affected.  This is always 1, unless the
terminal has xenl and the software uses it.)  When an asterisk is specified, it
is sometimes useful to give a delay of the form a.b, such as, 3.5, to specify a
delay per unit to tenths of milliseconds.  (Only one decimal place is allowed.)

A number of escape sequences are provided in the string-valued capabilities for
easy encoding of characters there.  Both \E and \e map to an Escape character,
^x maps to a Ctrl-x for any appropriate x, and the sequences \n, \l, \r, \t,
\b, \f, \s give a new-line, line-feed, return, tab, backspace, form-feed, and
space.  Other escapes include \^ (backslash caret) for a ^ (caret), \ \
(backslash backslash) for a \ (backslash), \, (backslash comma) for a ,
(comma), \: (backslash colon) for a : (colon), and \0 (backslash) for the null
character.  (\0 will produce \200, which does not terminate a string but
behaves as a null character on most terminals.)  Finally, characters can be
given as 3 octal digits after a \ (backslash).

Sometimes, individual capabilities must be commented out.  To do this, put a
period before the capability name.

Preparing Descriptions

An effective way to prepare a terminal description is to imitate the
description of a similar terminal in the terminfo file and add to the
description gradually, using partial descriptions with vi to check that they
are correct.  Be aware that a very unusual terminal may expose deficiencies in
the ability of this file to describe it or bugs in vi.  To test a new terminal
description, set the environment variable TERMINFO to a path name of a
directory containing the compiled description you are working on and programs
will look there rather than in /usr/lib/terminfo.  A test to get the correct
padding (if not known) is to edit the /etc/passwd file at 9600 baud, delete
about 16 lines from the middle of the screen, then hit the u key several times
quickly.  If the terminal fails to display the result properly, more padding is
usually needed.  A similar test can be used for insert character.

Basic Capabilities




Processed November 7, 1990       TERMINFO(5,F)                                9





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



The following describe basic terminal capabilities:

am      Indicates that the cursor moves to the beginning of the next line when
        it reaches the right margin.  This capability also indicates whether
        the cursor can move beyond the bottom right corner of the screen.

bel     Produces an audible signal (such as a bell or a beep).

bw      Indicates that a backspace from the left edge of the terminal moves the
        cursor to the last column of the previous row.

clear   Clears the screen leaving the cursor in the home position.

cols    Specifies the number of columns on each line for the terminal.

cr      Moves the cursor to the left edge of the current row.  This code is
        usually carriage return (Ctrl-M).

cub1    Moves the cursor one space to the left, such as backspace.

cuf1, cuu1, and cud1
        Moves the cursor to the right, up, and down, respectively.

hc      Specifies a printing terminal.  The os capability should also be
        specified.

lines   Specifies the number of lines on a cathode ray tube (CRT) terminal.

os      Indicates that when a character is displayed or printed in a position
        already occupied by another character, the terminal overstrikes the
        existing character, rather than replacing it with the new character.
        os applies to storage scope, printing, and APL terminals.

The terminfo initialization subroutine, setupterm, calls termdef to determine
the number of lines and columns on the display.  If termdef cannot supply this
information, then setupterm uses the lines and cols values in the data base.

A point to note here is that the local cursor motions encoded in terminfo are
undefined at the left and top edges of a CRT terminal.  Programs should never
attempt to backspace around the left edge, unless bw is given, and never
attempt to go up locally off the top.  In order to scroll text up, a program
should go to the bottom left corner of the screen and send the ind (index)
string.

To scroll text down, a program goes to the top left corner of the screen and
sends the ri (reverse index) string.  The strings ind and ri are undefined when
not on their respective corners of the screen.

The am capability tells whether the cursor sticks at the right edge of the
screen when text is output, but this does not necessarily apply to a cuf1 from
the last column.  Local motion is defined from the left edge only if bw is
given.  In this case, a cub1 from the left edge moves to the right edge of the



Processed November 7, 1990       TERMINFO(5,F)                               10





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



previous row.  If bw is not given, the effect is undefined.  This is useful for
drawing a box around the edge of the screen, for example.  If the terminal has
switch-selectable automatic margins, the terminfo file usually assumes that it
is on by specifying am.  If the terminal has a command that moves to the first
column of the next line, that command can be given as nel (newline).  It does
not matter if the command clears the remainder of the current line, so if the
terminal has no cr and lf, it may still be possible to craft a working nel out
of one or both of them.

These capabilities suffice to describe printing terminals and simple CRT
terminals.  Thus, the Model 33 Teletype is described as:

  33 | tty33 | tty | Model 33 Teletype,
      bel=^G, cols#72, cr=^M,     cud1=^J, hc, ind=^J, os,

And another terminal is described as:

  xxxx | x | xxxxxxxx,
      am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J,
      ind=^J, lines#24,

Parameterized Strings

Cursor addressing and other strings requiring parameters in the terminal are
described by a parameterized string capability, with escapes similar to printf
%x in it.  For example, to address the cursor, the cup capability is given
using two parameters:   the row and column to address to.  (Rows and columns
are numbered starting with 0 and refer to the physical screen visible to the
user, not to any unseen memory.)  If the terminal has memory relative cursor
addressing, that can be indicated by mrcup.

The capabilities and their parameters, with descriptions, are:

cub1    Backspaces the cursor one space.

cup     Addresses the cursor using two parameters: the row and column to
        address.  Rows and columns are numbered starting with 0 and refer to
        the physical screen visible to the user, not to memory.

cuu1    Moves the cursor up one line on the screen.

hpa and vpa
        Indicates the cursor has row or column absolute cursor addressing,
        horizontal position absolute (hpa) and vertical position absolute
        (vpa).

        Sometimes the hpa and vpa capabilities are shorter than the more
        general two parameter sequence and can be used in preference to cup.
        If there are parameterized local motions (such as, move n spaces to the
        right) these can be given as cud, cub, cuf, and cuu with a single
        parameter indicating how many spaces to move.  These are primarily
        useful if the terminal does not have cup.



Processed November 7, 1990       TERMINFO(5,F)                               11





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)




indn and rin
        Scrolls text.  These are parameterized versions of the basic
        capabilities ind and ri.  n is the number of lines.

mrcup   Indicates the terminal has memory-relative cursor addressing.

The parameter mechanism uses a stack and special % codes to manipulate it.
Typically a sequence pushes one of the parameters onto the stack and then
prints it in some format.  Often more complex operations are necessary.

The "%" encodings have the following meanings:

"%%"           Outputs a "%". (percent sign).
"%"d           Print pop() as in printf (numeric string from stack).
"%"2d          Print pop() like "%"2d (minimum 2 digits output from stack).
"%"3d          Print pop() like "%"3d (minimum 3 digits output from stack).
"%"02d         Prints as in printf (2 digits output).
"%"03d         Prints as in printf (3 digits output).
"%"c           Print pop() gives "%"c (character output from stack).
"%"s           Print pop() gives "%"s (string output from stack).

"%"p[i]        Pushes the i(th) parameter onto stack.
"%"P[a-z]      Sets variable [a-z] to pop() (variable output from stack).
"%"g[a-z]      Gets variable [a-z] and pushes it onto the stack.
"%"'c'         Character constant c.
"%"{nn}        Integer constant nn.

"%+  %-  %*  %/  %m"
               Arithmetic ("%"m is modulus):  push(pop() operation pop())
"%& %| %^"     Bit operations:  push(pop() operation pop())
"%= %> %<"     Logical operations:  push(pop() operation pop()).
"%! %^"        Unary operations push(operation pop())
"%"i           Add 1 to first two parameters (for ANSI terminals).

"%"? expr "%"t thenpart "%"e elsepart "%";
               If-then-else.  The "%"e elsepart is optional.  You can make an
               else-if construct as with Algol 68:

     "%"? c[1] "%"t b[1] "%"e c[2] "%"t b[2] "%"e c[3] "%"t b[3] "%"e b[4] "%";

               In this example, c[i] denote conditions, and b[i] denote bodies.

Binary operations are in postfix form with the operands in the usual order.
That is, to get "x - 5" one would use "%gx%{5}%-".

Consider a terminal, which, to get to row 3 and column 12, needs to be sent
"\E&a12c03Y" padded for 6 milliseconds.  Note that the order of the rows and
columns is inverted here, and that the row and column are printed as two
digits.  Thus its cup capability is "cup=6\E&a%p2%2dc%p1%2dY".





Processed November 7, 1990       TERMINFO(5,F)                               12





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



Some terminals need the current row and column sent preceded by a ^T with the
row and column simply encoded in binary; "cup=^T%p1%c%p2%c".  Terminals that
use %c need to be able to backspace the cursor (cub1), and to move the cursor
up one line on the screen (cuu1).  This is necessary because it is not always
safe to transmit \n, ^D, and \r, as the system may change or discard them.
(The library routines dealing with terminfo set terminal modes so that tabs are
not expanded by the operating system; thus \t is safe to send.)

A final example is a terminal that uses row and column offset by a blank
character, thus "cup=\E=%p1%'  '%+%c%p2%'  '%+%c".  After sending "\E=", this
pushes the first parameter, pushes the ASCII value for a space (32), adds them
(pushing the sum on the stack in place of the two previous values) and outputs
that value as a character.  Then the same is done for the second parameter.
More complex arithmetic is possible using the stack.

Cursor Motions

If the terminal has a fast way to home the cursor (to very upper left corner of
screen) then this can be given as home.  Similarly a fast way of getting to the
lower left-hand corner can be given as ll; this may involve going up with cuu1
from the home position, but a program should never do this itself (unless ll
does) because it can make no assumption about the effect of moving up from the
home position.  Note that the home position is the same as addressing (0,0) to
the top left corner of the screen, not of memory.  (Thus, the \EH sequence on
some terminals cannot be used for home.)

Area Clears

The following areas are used to clear large areas of the terminal:

ed      Clears from the current position to the end of the display.  This is
        defined only from the first column of a line.  (Thus, it can be
        simulated by a request to delete a large number of lines, if a true ed
        is not available.)

el      Clears from the current cursor position to the end of the line without
        moving the cursor.

Insert/Delete Line

The following describes the insert and delete line capabilities:

csr     Indicates the terminal has a scrolling region that can be set.  This
        capability takes two parameters: the top and bottom lines of the
        scrolling region.

da      Indicates the terminal can retain display memory above what is visible.

db      Indicates the display memory can be retained below what is visible.






Processed November 7, 1990       TERMINFO(5,F)                               13





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



dl1     Indicates the line the cursor is on can be deleted.  This done only
        from the first position on the line to be deleted.  Additionally, the
        dl capability takes a single parameter indicating the number of lines
        to be deleted.

il1     Creates a new blank line before the line where the cursor is currently
        located and scrolls the rest of the screen down.  This is done only
        from the first position of a line.  The cursor then appears on the
        newly blank line.  Additionally, the il capability can take a single
        parameter indicating the number of lines to insert.

rc      Restores the cursor.  When used after the csr capability, it gives an
        effect similar to delete line.

sc      Saves the cursor.  When used after the csr capability, it gives an
        effect similar to insert line.

wind    Indicates the terminal has the ability to define a window as part of
        memory.  This a parameterized string with 4 parameters: the starting
        and ending lines in memory and the stating and ending columns in
        memory, in that order.

Insert/Delete Character

Generally, there are two kinds of programmable terminals with respect to
insert/delete character operations which can be described using the terminfo
file.  The most common insert/delete character operations affect only the
characters on the current line and shift characters to the right and off the
line.  Other terminals make a distinction between typed and untyped blanks on
the screen, shifting data displayed to insert or delete at a position on the
screen occupied by an untyped blank, which is either eliminated or expanded to
two untyped blanks.  Clearing the screen and then typing text separated by
cursor motions differentiates between the terminal types.  You can determine
the kind of terminal you have by doing the following:

  1. Type "abc    def" using local cursor movements, not spaces, between the
    "abc" and the "def".

  2. Position the cursor before the "abc" and place the terminal in insert
    mode.  If typing characters causes the characters on the line to the right
    of the cursor to shift and exit the right side of the display, the terminal
    does not distinguish between blanks and untyped positions.  If the "abc"
    moves to positions to the immediate left of the "def" and the characters
    move to the right on the line, around the end, and to the next line, the
    terminal is the second type.  This is described by the in capability, which
    signifies insert null.

While these are two logically separate attributes (one line vs. multiline
insert mode, and special treatment of untyped spaces) there are no known
terminals whose insert mode cannot be described with the single attribute.





Processed November 7, 1990       TERMINFO(5,F)                               14





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



The terminfo file can describe both terminals having an insert mode and
terminals that send a simple sequence to open a blank position on the current
line.  The following are used to describe insert or delete character
capabilities:

dch1    Deletes a single character.  dch with one parameter, n deletes n
        characters.

ech     Erases n characters (equivalent to typing n blanks without moving the
        cursor) with one parameter.

ich1    Precedes the character to be inserted.  Most terminals with an insert
        mode do not use this.  Terminals that send a sequence to open a screen
        position should give it.  (If the terminal has both, insert mode is
        usually preferable to ich1.  Do not give both unless the terminal
        actually requires both to be used in combination.)

ip      Indicates post padding needed.  This is given as a number of
        milliseconds.  Any other sequence that may need to be sent after
        inserting a single character can be given in this capability.

mir     Allows cursor motion while in insert mode.  It is sometimes necessary
        to move the cursor while in insert mode to delete characters on the
        same line.  Some terminals may not have this capability due to their
        handling of insert mode.

rmdc    Exits delete mode.

rmir    Ends insert mode.

smdc    Enters delete mode.

smir    Begins insert mode.

Note that if your terminal needs both to be placed in an insert mode and a
special code  to precede each inserted character, then both smir/rmir and ich1
can be given, and both will be used.  The ich capability, with one parameter,
n, will repeat the effects of ich1 n times.

Highlighting, Underlining, and Visual Bells

If your terminal has one or more kinds of display attributes such as
highlighting, underlining, and visual bells, these can be presented in a number
of ways.  Highlighting, such as standout mode, presents a good, high contrast,
easy-on-the-eyes format to add emphasis to error messages, and other attention
getters.  Underlining is another method to focus attention to a particular
portion of the terminal.  Visual bells include methods such as flashing the
screen.  The following capabilities describe highlighting, underlining, and
visual bells for a terminal:

blink   Indicates terminal has blink highlighting mode.




Processed November 7, 1990       TERMINFO(5,F)                               15





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



bold    Indicates terminal has extra bright highlighting mode.

civis   Causes the cursor to be invisible.

cnorm   Causes the cursor to display normal.  This capability reverses the
        effects of the civis and cvvis capabilities.

cvvis   Causes the cursor to be more visible than normal when it is not on the
        bottom line.

dim     Indicates the terminal has half-bright highlighting modes.

eo      Indicates blanks erase overstrikes.

flash   Indicates the terminal has a way of flashing the screen (a bell
        replacement) for errors without moving the cursor.

invis   Indicates the terminal has blanking or invisible text highlighting
        modes.

msgr    Indicates it is safe to move the cursor while in standout mode.
        Otherwise, programs using standout mode should exit standout mode
        before moving the cursor or sending a new-line.  Some terminals
        automatically leave standout mode when they move to a new line or the
        cursor is addressed.

prot    Indicates the terminal has protected highlighting mode.

rev     Indicates the terminal has reverse video mode.

rmso    Exits standout mode.

rmul    Ends underlining.

sgr     Sets attributes.  sgr0 turns off all attributes.  Otherwise, if the
        terminal allows a sequence to set arbitrary combinations of modes, sgr
        takes 9 parameters.  Each parameter is either 0 or 1, as the
        corresponding attribute is on or off.  The 9 parameters are in this
        order: standout, underline, reverse, blink, dim, bold, blank, protect,
        and alternate character set.  (sgr can only support those modes for
        which separate attributes exist on a particular terminal.)

smcup and rmcup
        Indicates the terminal needs to be in a special mode when running a
        program that uses any of the highlighting, underlining or visual bell
        capabilities.  smcup enters this mode, while rmcup exits this mode.
        This need arises, for example, from terminals with more than one page
        of memory.  If the terminal has only memory relative cursor addressing,
        and not screen relative cursor addressing, a screen-sized window must
        be fixed into the terminal for cursor addressing to work properly.
        This is also used where smcup sets the command character to be used by
        the terminfo file.



Processed November 7, 1990       TERMINFO(5,F)                               16





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)




smso    Enters standout mode.

smul    Begins underlining.

uc      Underlines the current character and moves the cursor one space to the
        right.

ul      Indicates the terminal correctly generates underlined characters (with
        no special codes needed) even though it does not overstrike.

xmc     Indicates the number of blanks left if the capability to enter or exit
        standout mode leaves blank spaces on the screen.

Keypad

If the terminal has a keypad that transmits codes when the keys are pressed,
this information can be given.  Note that it is not possible to handle
terminals where the keypad only works in local mode.  If the keypad can be set
to transmit or not transmit, give these codes as smkx and rmkx.  Otherwise the
keypad is assumed to always transmit.  The codes sent by the left arrow, right
arrow, up arrow, down arrow, and home keys can be given as kcub1, kcuf1, kcuu1,
kcud1, and khome, respectively.  If there are function keys such as F0, F1,...,
F10, the codes they send can be given as kf0, kf1,..., kf10.  If these keys
have labels other than the default F0 through F10, the labels can be given as
lf0, lf1,..., lf10.  The codes transmitted by certain other special keys can be
given as:

kbs     Indicates the backspace key.

kclr    Indicates the clear screen or erase key.

kctab   Indicates clear the tab stop in this column.

kdch1   Indicates the delete character key.

kdl1    Indicates the delete line key.

ked     Indicates clear to end of screen.

kel     Indicates clear to end of line.

khts    Indicates set a tab stop in this column.

kich1   Indicates insert character or enter insert mode.

kil1    Indicates insert line.

kind    Indicates scroll forward and/or down.






Processed November 7, 1990       TERMINFO(5,F)                               17





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



kll     Indicates home down key (home is the lower left corner of the display,
        in this instance).

kmir    Indicates exit insert mode.

knp     Indicates next page.

kpp     Indicates previous page.

ktbc    Indicates the clear all tabs key.

ri      Indicates scroll backward and/or up.

In addition, if the keypad has a 3-by-3 array of keys including the 4 arrow
keys, the other 5 keys can be given as ka1, ka3, kb2, kc1, and kc3.  These keys
are useful when the effects of a 3-by-3 directional pad are needed.

Tabs and Initialization

If the terminal has hardware tabs, the command to advance to the next tab stop
can be given as ht (usually Ctrl-I).  A "backtab" command which moves left
toward the previous tab stop can be given as cbt.  By convention, if the
terminal modes indicate that tabs are being expanded by the operating system
rather than being sent to the terminal, programs should not use ht or cbt even
if they are present, since the user may not have the tab stops properly set.
If the terminal has hardware tabs that are initially set every n spaces when
the terminal is powered up, the numeric parameter it is given, showing the
number of spaces the tabs are set to.  This is normally used by the tset
command to determine whether to set the mode for hardware tab expansion, and
whether to set the tab stops.  If the terminal has tab stops that can be saved
in nonvolatile memory, the terminfo description can assume that they are
properly set.

Other capabilities include is1, is2, and is3, initialization strings for the
terminal, iprog, the path name of a program to be run to initialize the
terminal, and if, the name of a file containing long initialization strings.
These strings are expected to set the terminal into modes consistent with the
rest of the terminfo description.  They are normally sent to the terminal, by
the tset program, each time the user logs in.  They are printed in the
following order:  is1, is2, setting tabs using tbc and hts; if; running the
program iprog; and finally is3.  Most initialization is done with is2.  Special
terminal modes can be set up without duplicating strings by putting the common
sequences in is2 and special cases in is1 and is3.  A pair of sequences that
does a harder reset from a totally unknown state can be analogously given as
rs1, rs2, rf, and rs3, analogous to is2 and if.  These strings are output by
the reset program, which is used when the terminal starts behaving strangely,
or not responding at all.  Commands are normally placed in rs2 and rf only if
they produce annoying effects on the screen and are not necessary when logging
in.  For example, the command to set the terminal into 80-column mode would
normally be part of is2, but it causes an annoying screen behavior and is not
normally needed since the terminal is usually already in 80-column mode.




Processed November 7, 1990       TERMINFO(5,F)                               18





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



If there are commands to set and clear tab stops, they can be given as tbc
(clear all tab stops) and hts (set a tab stop in the current column of every
row).  If a more complex sequence is needed to set the tabs than can be
described by this, the sequence can be placed in is2 or if.

Certain capabilities control padding in the terminal driver.  These are
primarily needed by hard copy terminals, and are used by the tset program to
set terminal modes appropriately.  Delays embedded in the capabilities cr, ind,
cub1, ff, and tab cause the appropriate delay bits to be set in the terminal
driver.  If pb (padding baud rate) is given, these values can be ignored at
baud rates below the value of pb.

Miscellaneous Strings

If the terminal requires other than a null (zero) character as a pad, then this
can be given as pad.  Only the first character of the pad string is used.

If the terminal has an extra "status line" that is not normally used by
software, this fact can be indicated.  If the status line is viewed as an extra
line below the bottom line, into which one can cursor address normally, the
capability hs should be given.  Special strings to go to the beginning of the
status line and to return from the status line can be given as tsl and fsl.
(fsl must leave the cursor position in the same place it was before tsl.  If
necessary, the sc and rc strings can be included in tsl and fsl to get this
effect.)  The parameter tsl takes one parameter, which is the column number of
the status line the cursor is to be moved to.  If escape sequences and other
special commands, such as tab, work while in the status line, the flag eslok
can be given.  A string that turns off the status line (or otherwise erases its
contents) should be given as dsl.  If the terminal has commands to save and
restore the position of the cursor, give them as sc and rc.  The status line is
normally  assumed to be the same width as the rest of the screen, such as,
cols.  If the status line is a different width (possibly because the terminal
does not allow an entire line to be loaded) the width, in columns, can be
indicated with the numeric parameter wsl.

If the terminal can move up or down half a line, this can be indicated with hu
(half-line up) and hd (half-line down).  This is primarily useful for
superscripts and subscripts on hardcopy terminals.  If a hardcopy terminal can
eject to the next page (form-feed), give this as ff (usually Ctrl-L).

If there is a command to repeat a given character a given number of times (to
save time transmitting a large number of identical characters) this can be
indicated with the parameterized string rep.  The first parameter is the
character to be repeated and the second is the number of times to repeat it.
Thus, "tparm(repeat_char,'x',10)" is the same as "xxxxxxxxxx".

If the terminal has a "meta key" which acts as a shift key, setting the eighth
bit of any character transmitted, this fact can be indicated with km.
Otherwise, software will assume that the eighth bit is parity and it will
usually be cleared.  If strings exist to turn this "meta mode" on and off, they
can be given as smm and rmm.




Processed November 7, 1990       TERMINFO(5,F)                               19





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



If the terminal has more lines of memory than will fit on the screen at once,
the number of lines of memory can be indicated with lm.  A value of lm#0
indicates that the number of lines is not fixed, but that there is still more
memory than fits on the screen.

Media copy strings that control an auxiliary printer connected to the terminal
can be given in the following ways: mc0 prints the contents of the screen, mc4
turns off the printer, and mc5 turns on the printer.  When the printer is on,
all text sent to the terminal is sent to the printer.  It is undefined whether
the text is also displayed on the terminal screen when the printer is on.  A
variation mc5p takes one parameter, and leaves the printer on for as many
characters as the value of the parameter, then turns the printer off.  The
parameter should not exceed 255.  All text, including mc4, is transparently
passed to the printer while an mc5p is in effect.

Strings to program function keys can be given as pfkey, pfloc, and pfx.  Each
of these strings takes two parameters:  the function key number to program
(from 0 to 10) and the string to program it with.  Function key numbers out of
this range can program undefined keys in a terminal-dependent manner.  The
difference between the capabilities is that pfkey causes pressing the given key
to be the same as the user typing the given string; pfloc causes the string to
be executed by the terminal in local mode; and pfx causes the string to be
transmitted to the computer.

Indicating Terminal Problems

Terminals that do not allow ~ (tilde) characters to be displayed should
indicate hz.

Terminals that ignore a line-feed character immediately after an am wrap should
indicate xenl.

If el is required to get rid of standout (instead of merely writing normal text
on top of it), xhp should be given.

Terminals for which tabs turn all characters moved to blanks should indicate xt
(destructive tabs).  This capability is interpreted to mean that it is not
possible to position the cursor on top of the pads inserted for standout mode.
Instead, it is necessary to erase standout mode using delete and insert line.

The terminal that is unable to correctly transmit the ESC (escape) or Ctrl-C
characters has xsb, indicating that the F1 key is used for ESC and F2 for
Ctrl-C.

Other specific terminal problems can be corrected by adding more capabilities
of the form xx.

Similar Terminals

If two terminals are very similar, one can be defined as being just like the
other with certain exceptions.  The string capability use can be given with the
name of the similar terminal.  The capabilities given before use override those



Processed November 7, 1990       TERMINFO(5,F)                               20





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



in the terminal type invoked by use.  A capability can be cancelled by placing
xx@ to the left of the capability definition, where xx is the capability.  For
example, the entry:

  term-nl, smkx@, rmkx@, use=term,

defines a terminal that does not have the smkx or rmkx capabilities, and hence
does not turn on the function key labels when in visual mode.  This is useful
for different modes for a terminal, or for different user preferences.

Data Base File Names

Compiled terminfo descriptions are placed in subdirectories under
/usr/lib/terminfo in order to avoid performing linear searches through a single
directory containing all of the terminfo description files.  A given
description file is stored in /usr/lib/terminfo/c/name, where name is the name
of the terminal, and c is the first letter of the terminal name.  For example,
the compiled description for the terminal "term4-nl" can be found in the file
"/usr/lib/terminfo/t/term4-nl" You can create synonyms for the same terminal by
making multiple links to the same compiled file.  (See the ln command in AIX
Operating System Commands Reference on how to create multiple links to a file.)

EXAMPLE

The following entry, which describes a terminal, is among the entries in the
terminfo file.

  hft|High Function Terminal,
      cr=^M, cud1=|J, ind=\E[S, bel=^G, il1=\E[L, am, cub1=^H, ed=\E[J,
      el=\E[K, clear=\E[H\E[J, cup=\E[%ip1%d;%p2%dH, cols#80, lines#25,
      dch1=\E[P, dl1=\E[M, home=\E[H,
      ich=\E[%p1%d@, ich1=\E[@, smir=\E[4h, rmir=\E4l,
      bold=\E[1m, rev=\E[7m, blink=\E[5m, invis=\E[8m,  sgr0=\E[0m,
      sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m,
      kcuu1=\E[A, kcud1=\E[B, kcub1=\E[D,
      kcuf1=\E[C, khome=\E[H, kbs=^H, kbtab=\[Z
      cuf1=\E[C, ht=^I, cuu1=\E[A, xon,
      rmul=\E[m, smul=\E[4m, rmso=\E[m, smso=\E[7m,
      kpp=\E[150q, knp=\E[154q,
      kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, kf4=\E[004q,
      kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q,
      kf9=\E[009q, kf10=\E[010q, kf11=\E[011q, kf12=\E[012q,
      bw,    it#8,   ms,
      hpa=\E%i%p1%dG,  ech=\E[%p1dx,
      kdch1=\E[P,   kind=\E[151q,   kich1=\E[139q,   krmir=\E[41,
      knl=^M,   ko=^I,   ktab=^I,   kri=\E[155q,   kend=\E[146q
      cub=\E[%p1%dD, cuf=\E[%p1%dC,  indn=\E[%p1dS, rin=\E[%p1%dT,
      ri=\E[T,   cuu=\E[%p1%dA,  cud=\E[%p1%dB,
      box1=\332\304\277\263    \331\300\302\264\301\303\305,
      box2=\311\315\273\272    \274\310\313\271\312\314\316,
      batt2=md,




Processed November 7, 1990       TERMINFO(5,F)                               21





TERMINFO(5,F)               AIX Technical Reference               TERMINFO(5,F)



FILE

/usr/lib/terminfo/?/*    Compiled terminal capability data base.

RELATED INFORMATION

In this book:  "curses,"  "Terminfo Level Subroutines," "extended curses
library,"  "printf, fprintf, sprintf, NLprintf, NLfprintf, NLsprintf,
wsprintf," "termdef," and "TERM."

The display and tic commands in AIX Operating System Commands Reference.












































Processed November 7, 1990       TERMINFO(5,F)                               22



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026