Caps revision 50276
150276Speter############################################################################## 250276Speter# Copyright (c) 1998 Free Software Foundation, Inc. # 350276Speter# # 450276Speter# Permission is hereby granted, free of charge, to any person obtaining a # 550276Speter# copy of this software and associated documentation files (the "Software"), # 650276Speter# to deal in the Software without restriction, including without limitation # 750276Speter# the rights to use, copy, modify, merge, publish, distribute, distribute # 850276Speter# with modifications, sublicense, and/or sell copies of the Software, and to # 950276Speter# permit persons to whom the Software is furnished to do so, subject to the # 1050276Speter# following conditions: # 1150276Speter# # 1250276Speter# The above copyright notice and this permission notice shall be included in # 1350276Speter# all copies or substantial portions of the Software. # 1450276Speter# # 1550276Speter# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # 1650276Speter# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # 1750276Speter# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # 1850276Speter# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # 1950276Speter# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # 2050276Speter# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # 2150276Speter# DEALINGS IN THE SOFTWARE. # 2250276Speter# # 2350276Speter# Except as contained in this notice, the name(s) of the above copyright # 2450276Speter# holders shall not be used in advertising or otherwise to promote the sale, # 2550276Speter# use or other dealings in this Software without prior written # 2650276Speter# authorization. # 2750276Speter############################################################################## 2850276Speter# 2950276Speter# Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995 3050276Speter# and: Eric S. Raymond <esr@snark.thyrsus.com> 3150276Speter# 3250276Speter# $Id: Caps,v 1.24 1999/01/17 02:01:44 tom Exp $ 3350276Speter# 3450276Speter# This is the master termcap/terminfo capability table. 3550276Speter# 3650276Speter# This table is used to generate initializers for tables that drive tic, 3750276Speter# infocmp, and the library compilation code used to support the termcap 3850276Speter# compatibility hack. It is also used to generate the tabular portion of the 3950276Speter# terminfo(5) man page; lines beginning with `#%' are passed through to become 4050276Speter# the terminfo table. 4150276Speter# 4250276Speter# This file has three major sections; a standard-capabilities table, two 4350276Speter# extension-capability tables, and a section of aliases declarations. 4450276Speter# The first two have the same format, as follows: 4550276Speter# 4650276Speter# FILE FORMAT 4750276Speter# 4850276Speter# Column 1: terminfo variable name 4950276Speter# Column 2: terminfo capability name 5050276Speter# Column 3: capability type (boolean, numeric, or string) 5150276Speter# Column 4: termcap capability name 5250276Speter# Column 5: Lead with `Y' if capability should be emitted in termcap 5350276Speter# translations, `-' otherwise 5450276Speter# Column 6: capability description 5550276Speter# 5650276Speter# The codes following [Y-] in column 5 describe the versions of termcap which 5750276Speter# use the given capability. This information is not used by the curses library 5850276Speter# proper; rather, it's there to help the terminfo maintainer avoid emitting 5950276Speter# termcap entry translations that are more than 1023 bytes long (and tank a 6050276Speter# lot of old termcap-using programs). The codes read as follows: 6150276Speter# B = mentioned in the BSD man page for 4.4BSD curses 6250276Speter# C = used by the 4.4BSD curses library 6350276Speter# G = mentioned in the documentation for GNU termcap 6450276Speter# E = used by GNU Emacs 6550276Speter# K = remove this terminfo capability when translating to standard format 6650276Speter# The important codes are C and E. A cap with C or E should be preserved in 6750276Speter# translation if possible. The problem is that preserving all such caps may 6850276Speter# lead to some termcap translations being too long. The termcap maintainer 6950276Speter# has a bit of a juggling act to do...potential problem cases are marked with 7050276Speter# a * or **. 7150276Speter# 7250276Speter# The aliases section has the following format: 7350276Speter# 7450276Speter# Column 1: either `capalias' or `infoalias' 7550276Speter# Column 2: name to be aliased 7650276Speter# Column 3: what name it should translate to. The name IGNORE means it 7750276Speter# should be discarded with a warning message. 7850276Speter# Column 4: name of the extension set (used for compiler warning messages) 7950276Speter# Column 5: capability description (usually an associated terminfo variable) 8050276Speter# 8150276Speter# HANDLING TERMCAP AND TERMINFO EXTENSIONS 8250276Speter# 8350276Speter# There are basically five different ways to handle termcap and terminfo 8450276Speter# extensions: 8550276Speter# 8650276Speter# 1. Don't list the capname here, or list it but comment it out (the latter 8750276Speter# is preferable; someone might want to handle it in the future). If you do 8850276Speter# this, the capability will be treated as unknown and raise a warning from 8950276Speter# the compiler. 9050276Speter# 9150276Speter# 2. Alias it. This is appropriate if the capability has the same meaning 9250276Speter# as an already-supported one. The compiler will handle aliasing, emitting 9350276Speter# an appropriate informational message whenever an alias fires. 9450276Speter# 9550276Speter# 3. List it in the standard table. You almost certainly do *not* want 9650276Speter# to do this -- the capabilities in that one, and their order, have been 9750276Speter# carefully chosen to be SVr4-binary-compatible when they're written out 9850276Speter# as a terminfo object, and breaking this would be bad. It's up the ncurses 9950276Speter# library what to do with the terminfo data after it's read in. 10050276Speter# 10150276Speter# 4. List it in the aliases table with an IGNORE target field. If you 10250276Speter# do this, the capability will be ignored on input (though the user will 10350276Speter# get a warning message about it). 10450276Speter# 10550276Speter# 5. List it in the extensions table. If you do this, the compiler will 10650276Speter# silently accept the capability, but the curses library proper will never 10750276Speter# see it (because it won't be written out as part of the terminfo object 10850276Speter# format). It's up to you what you have the compiler do with it. 10950276Speter# 11050276Speter# There are two opposite reasons to choose option 5. One is when you want 11150276Speter# to eat the capability silently and discard it when doing translations 11250276Speter# to terminfo with tic -I. Some very old obsolete BSD caps like :kn: are 11350276Speter# in this class. Nothing will ever use them again. 11450276Speter# 11550276Speter# More usually, you want the compiler to try to deduce something from the 11650276Speter# capability value that it can use to translate it into your output format. 11750276Speter# You'll need to write custom code, probably in postprocess_termcap() or 11850276Speter# postprocess_terminfo(), to handle the translation. 11950276Speter# 12050276Speter# CONTROLLING ENTRY LENGTH 12150276Speter# 12250276Speter# Notes on specific elisions made to fit translations within 1023 bytes: 12350276Speter# 12450276Speter# Machines with IBM PC-like keyboards want to be able to define the following 12550276Speter# keys: key_npage, key_ppage, key_home, key_ll (which is used for in termcap- 12650276Speter# only environments for End or Home-Down), key_dc, and key_ic. This is also 12750276Speter# the set of keys the `joe' editor will be upset if it can't see. So don't 12850276Speter# trim those out of the set to be translated to termcap, or various users of 12950276Speter# the termcap file will become irate. 13050276Speter# 13150276Speter# It might look tempting to leave those long init strings out of translations. 13250276Speter# We can't do it (yet); 4.4BSD tput and tset use them. 13350276Speter# 13450276Speter# We retain the sgr capability in translation in spite of the fact that neither 13550276Speter# 4.4BSD nor GNU Emacs uses it, because (a) some entry naming distinctions are 13650276Speter# hard to understand without it, and (b) the entries in which it is long tend 13750276Speter# to be older types that don't use up a lot of string space on function keys. 13850276Speter# The tic(1) translation code will complain and elide it if it makes a critical 13950276Speter# difference (there is special code in tic to recognize this situation). 14050276Speter# 14150276Speter# Yes, BSD tset(1) uses hpa. We elide hpa/vpa anyway because the motion 14250276Speter# optimizer in BSD curses didn't use them. This omission seems to be the 14350276Speter# single most effective one, it shortened the resolved length of all thirteen 14450276Speter# problem entries in the 9.9.0 version of the terminfo master below critical. 14550276Speter# 14650276Speter# It would be nice to keep f11 and f12 for Emacs use, but a couple of termcap 14750276Speter# translations go back over critical if we do this. As 4.4BSD curses fades 14850276Speter# into history and GNU termcap's application base shrinks towards being GNU 14950276Speter# Emacs only, we'll probably elide out some BSD-only capabilities in order 15050276Speter# to buy space for non-essentials Emacs is still using. Capabilities high 15150276Speter# on that hit list: rc, sc, uc. 15250276Speter# 15350276Speter############################################################################# 15450276Speter# 15550276Speter# STANDARD CAPABILITIES 15650276Speter# 15750276Speter#%The following is a complete table of the capabilities included in a 15850276Speter#%terminfo description block and available to terminfo-using code. In each 15950276Speter#%line of the table, 16050276Speter#% 16150276Speter#%The \fBvariable\fR is the name by which the programmer (at the terminfo level) 16250276Speter#%accesses the capability. 16350276Speter#% 16450276Speter#%The \fBcapname\fR is the short name used in the text of the database, 16550276Speter#%and is used by a person updating the database. 16650276Speter#%Whenever possible, capnames are chosen to be the same as or similar to 16750276Speter#%the ANSI X3.64-1979 standard (now superseded by ECMA-48, which uses 16850276Speter#%identical or very similar names). Semantics are also intended to match 16950276Speter#%those of the specification. 17050276Speter#% 17150276Speter#%The termcap code is the old 17250276Speter#%.B termcap 17350276Speter#%capability name (some capabilities are new, and have names which termcap 17450276Speter#%did not originate). 17550276Speter#%.P 17650276Speter#%Capability names have no hard length limit, but an informal limit of 5 17750276Speter#%characters has been adopted to keep them short and to allow the tabs in 17850276Speter#%the source file 17950276Speter#%.B Caps 18050276Speter#%to line up nicely. 18150276Speter#% 18250276Speter#%Finally, the description field attempts to convey the semantics of the 18350276Speter#%capability. You may find some codes in the description field: 18450276Speter#%.TP 18550276Speter#%(P) 18650276Speter#%indicates that padding may be specified 18750276Speter#%.TP 18850276Speter#%#[1-9] 18950276Speter#%in the description field indicates that the string is passed through tparm with 19050276Speter#%parms as given (#\fIi\fP). 19150276Speter#%.TP 19250276Speter#%(P*) 19350276Speter#%indicates that padding may vary in proportion to the number of 19450276Speter#%lines affected 19550276Speter#%.TP 19650276Speter#%(#\d\fIi\fP\u) 19750276Speter#%indicates the \fIi\fP\uth\d parameter. 19850276Speter#% 19950276Speter#%.PP 20050276Speter#% These are the boolean capabilities: 20150276Speter#% 20250276Speter#%.na 20350276Speter#%.TS H 20450276Speter#%center expand; 20550276Speter#%c l l c 20650276Speter#%c l l c 20750276Speter#%lw25 lw6 lw2 lw20. 20850276Speter#%\fBVariable Cap- TCap Description\fR 20950276Speter#%\fBBooleans name Code\fR 21050276Speterauto_left_margin bw bool bw YB-G- cub1 wraps from column 0 to last column 21150276Speterauto_right_margin am bool am YBCGE terminal has automatic margins 21250276Speterno_esc_ctlc xsb bool xb YBCG- beehive (f1=escape, f2=ctrl C) 21350276Speterceol_standout_glitch xhp bool xs YBCGE standout not erased by overwriting (hp) 21450276Spetereat_newline_glitch xenl bool xn YBCGE newline ignored after 80 cols (concept) 21550276Spetererase_overstrike eo bool eo YBCG- can erase overstrikes with a blank 21650276Spetergeneric_type gn bool gn YB-G- generic line type 21750276Speterhard_copy hc bool hc YBCG- hardcopy terminal 21850276Speterhas_meta_key km bool km YB-GE Has a meta key (shift, sets parity bit) 21950276Speterhas_status_line hs bool hs YB-G- has extra status line 22050276Speterinsert_null_glitch in bool in YBCGE insert mode distinguishes nulls 22150276Spetermemory_above da bool da YBCG- display may be retained above the screen 22250276Spetermemory_below db bool db YB-GE display may be retained below the screen 22350276Spetermove_insert_mode mir bool mi YBCGE safe to move while in insert mode 22450276Spetermove_standout_mode msgr bool ms YBCGE safe to move while in standout mode 22550276Speterover_strike os bool os YBCG- terminal can overstrike 22650276Speterstatus_line_esc_ok eslok bool es YB-G- escape can be used on the status line 22750276Speterdest_tabs_magic_smso xt bool xt YBCGE tabs destructive, magic so char (t1061) 22850276Spetertilde_glitch hz bool hz YB-GE can't print ~'s (hazeltine) 22950276Spetertransparent_underline ul bool ul YBCGE underline character overstrikes 23050276Speterxon_xoff xon bool xo YB--- terminal uses xon/xoff handshaking 23150276Speterneeds_xon_xoff nxon bool nx ----- padding won't work, xon/xoff required 23250276Speterprtr_silent mc5i bool 5i ----- printer won't echo on screen 23350276Speterhard_cursor chts bool HC ----- cursor is hard to see 23450276Speternon_rev_rmcup nrrmc bool NR ----- smcup does not reverse rmcup 23550276Speterno_pad_char npc bool NP ----- pad character does not exist 23650276Speternon_dest_scroll_region ndscr bool ND ----- scrolling region is non-destructive 23750276Spetercan_change ccc bool cc ----- terminal can re-define existing colors 23850276Speterback_color_erase bce bool ut ----- screen erased with background color 23950276Speterhue_lightness_saturation hls bool hl ----- terminal uses only HLS color notation (Tektronix) 24050276Spetercol_addr_glitch xhpa bool YA ----- only positive motion for hpa/mhpa caps 24150276Spetercr_cancels_micro_mode crxm bool YB ----- using cr turns off micro mode 24250276Speterhas_print_wheel daisy bool YC ----- printer needs operator to change character set 24350276Speterrow_addr_glitch xvpa bool YD ----- only positive motion for vpa/mvpa caps 24450276Spetersemi_auto_right_margin sam bool YE ----- printing in last column causes cr 24550276Spetercpi_changes_res cpix bool YF ----- changing character pitch changes resolution 24650276Speterlpi_changes_res lpix bool YG ----- changing line pitch changes resolution 24750276Speter#%.TE 24850276Speter#%.ad 24950276Speter#% 25050276Speter#%These are the numeric capabilities: 25150276Speter#% 25250276Speter#%.na 25350276Speter#%.TS H 25450276Speter#%center expand; 25550276Speter#%c l l c 25650276Speter#%c l l c 25750276Speter#%lw25 lw6 lw2 lw20. 25850276Speter#%\fBVariable Cap- TCap Description\fR 25950276Speter#%\fBNumeric name Code\fR 26050276Spetercolumns cols num co YBCGE number of columns in a line 26150276Speterinit_tabs it num it YB-G- tabs initially every # spaces 26250276Speterlines lines num li YBCGE number of lines on screen or page 26350276Speterlines_of_memory lm num lm YB-G- lines of memory if > line. 0 means varies 26450276Spetermagic_cookie_glitch xmc num sg YBCGE number of blank characters left by smso or rmso 26550276Speterpadding_baud_rate pb num pb YB-GE lowest baud rate where padding needed 26650276Spetervirtual_terminal vt num vt YB--- virtual terminal number (CB/unix) 26750276Speterwidth_status_line wsl num ws YB-G- number of columns in status line 26850276Speternum_labels nlab num Nl ----- number of labels on screen 26950276Speterlabel_height lh num lh ----- rows in each label 27050276Speterlabel_width lw num lw ----- columns in each label 27150276Spetermax_attributes ma num ma YBC-- maximum combined attributes terminal can handle 27250276Spetermaximum_windows wnum num MW ----- maximum number of defineable windows 27350276Speter# These came in with SVr4's color support 27450276Spetermax_colors colors num Co ----- maximum number of colors on screen 27550276Spetermax_pairs pairs num pa ----- maximum number of color-pairs on the screen 27650276Speterno_color_video ncv num NC ----- video attributes that can't be used with colors 27750276Speter#%.TE 27850276Speter#%.ad 27950276Speter#% 28050276Speter#%The following numeric capabilities are present in the SVr4.0 term structure, 28150276Speter#%but are not yet documented in the man page. They came in with SVr4's 28250276Speter#%printer support. 28350276Speter#% 28450276Speter#%.na 28550276Speter#%.TS H 28650276Speter#%center expand; 28750276Speter#%c l l c 28850276Speter#%c l l c 28950276Speter#%lw25 lw6 lw2 lw20. 29050276Speter#%\fBVariable Cap- TCap Description\fR 29150276Speter#%\fBNumeric name Code\fR 29250276Speterbuffer_capacity bufsz num Ya ----- numbers of bytes buffered before printing 29350276Speterdot_vert_spacing spinv num Yb ----- spacing of pins vertically in pins per inch 29450276Speterdot_horz_spacing spinh num Yc ----- spacing of dots horizontally in dots per inch 29550276Spetermax_micro_address maddr num Yd ----- maximum value in micro_..._address 29650276Spetermax_micro_jump mjump num Ye ----- maximum value in parm_..._micro 29750276Spetermicro_col_size mcs num Yf ----- character step size when in micro mode 29850276Spetermicro_line_size mls num Yg ----- line step size when in micro mode 29950276Speternumber_of_pins npins num Yh ----- numbers of pins in print-head 30050276Speteroutput_res_char orc num Yi ----- horizontal resolution in units per line 30150276Speteroutput_res_line orl num Yj ----- vertical resolution in units per line 30250276Speteroutput_res_horz_inch orhi num Yk ----- horizontal resolution in units per inch 30350276Speteroutput_res_vert_inch orvi num Yl ----- vertical resolution in units per inch 30450276Speterprint_rate cps num Ym ----- print rate in characters per second 30550276Speterwide_char_size widcs num Yn ----- character step size when in double wide mode 30650276Speterbuttons btns num BT ----- number of buttons on mouse 30750276Speterbit_image_entwining bitwin num Yo ----- number of passes for each bit-image row 30850276Speterbit_image_type bitype num Yp ----- type of bit-image device 30950276Speter#%.TE 31050276Speter#%.ad 31150276Speter#% 31250276Speter#%These are the string capabilities: 31350276Speter#% 31450276Speter#%.na 31550276Speter#%.TS H 31650276Speter#%center expand; 31750276Speter#%c l l c 31850276Speter#%c l l c 31950276Speter#%lw25 lw6 lw2 lw20. 32050276Speter#%\fBVariable Cap- TCap Description\fR 32150276Speter#%\fBString name Code\fR 32250276Speterback_tab cbt str bt YBCGE back tab (P) 32350276Speterbell bel str bl YB-GE audible signal (bell) (P) 32450276Spetercarriage_return cr str cr YBCGE carriage return (P*) (P*) 32550276Speterchange_scroll_region csr str cs YBCGE change region to line #1 to line #2 (P) 32650276Speterclear_all_tabs tbc str ct YB-G- clear all tab stops (P) 32750276Speterclear_screen clear str cl YBCGE clear screen and home cursor (P*) 32850276Speterclr_eol el str ce YBCGE clear to end of line (P) 32950276Speterclr_eos ed str cd YBCGE clear to end of screen (P*) 33050276Spetercolumn_address hpa str ch -B-GE** horizontal position #1, absolute (P) 33150276Spetercommand_character cmdch str CC YB-G- terminal settable cmd character in prototype !? 33250276Spetercursor_address cup str cm YBCGE move to row #1 columns #2 33350276Spetercursor_down cud1 str do YBCGE down one line 33450276Spetercursor_home home str ho YBCGE home cursor (if no cup) 33550276Spetercursor_invisible civis str vi YB-G- make cursor invisible 33650276Spetercursor_left cub1 str le YBCGE move left one space 33750276Spetercursor_mem_address mrcup str CM YB-G- memory relative cursor addressing 33850276Spetercursor_normal cnorm str ve YBCGE make cursor appear normal (undo civis/cvvis) 33950276Spetercursor_right cuf1 str nd YBCGE non-destructive space (move right one space) 34050276Spetercursor_to_ll ll str ll YBCGE last line, first column (if no cup) 34150276Spetercursor_up cuu1 str up YBCGE up one line 34250276Spetercursor_visible cvvis str vs YBCGE make cursor very visible 34350276Speterdelete_character dch1 str dc YBCGE delete character (P*) 34450276Speterdelete_line dl1 str dl YBCGE delete line (P*) 34550276Speterdis_status_line dsl str ds YB-G- disable status line 34650276Speterdown_half_line hd str hd YB-G- half a line down 34750276Speterenter_alt_charset_mode smacs str as YB-G- start alternate character set (P) 34850276Speterenter_blink_mode blink str mb YB-G- turn on blinking 34950276Speterenter_bold_mode bold str md YB-G- turn on bold (extra bright) mode 35050276Speterenter_ca_mode smcup str ti YBCGE string to start programs using cup 35150276Speterenter_delete_mode smdc str dm YBCGE enter delete mode 35250276Speterenter_dim_mode dim str mh YB-G- turn on half-bright mode 35350276Speterenter_insert_mode smir str im YBCGE enter insert mode 35450276Speterenter_secure_mode invis str mk -B-G-* turn on blank mode (characters invisible) 35550276Speterenter_protected_mode prot str mp -B-G-* turn on protected mode 35650276Speterenter_reverse_mode rev str mr YB-G- turn on reverse video mode 35750276Speterenter_standout_mode smso str so YBCGE begin standout mode 35850276Speterenter_underline_mode smul str us YBCGE begin underline mode 35950276Spetererase_chars ech str ec YB-G- erase #1 characters (P) 36050276Speterexit_alt_charset_mode rmacs str ae YB-G- end alternate character set (P) 36150276Speterexit_attribute_mode sgr0 str me YB-GE turn off all attributes 36250276Speterexit_ca_mode rmcup str te YBCGE strings to end programs using cup 36350276Speterexit_delete_mode rmdc str ed YBCGE end delete mode 36450276Speterexit_insert_mode rmir str ei YBCGE exit insert mode 36550276Speterexit_standout_mode rmso str se YBCGE exit standout mode 36650276Speterexit_underline_mode rmul str ue YBCGE exit underline mode 36750276Speterflash_screen flash str vb YBCGE visible bell (may not move cursor) 36850276Speterform_feed ff str ff YB-G- hardcopy terminal page eject (P*) 36950276Speterfrom_status_line fsl str fs YB-G- return from status line 37050276Speterinit_1string is1 str i1 YB-G- initialization string 37150276Speterinit_2string is2 str is YB-G- initialization string 37250276Speterinit_3string is3 str i3 YB-G- initialization string 37350276Speterinit_file if str if YB-G- name of initialization file 37450276Speterinsert_character ich1 str ic YBCGE insert character (P) 37550276Speterinsert_line il1 str al YBCGE insert line (P*) 37650276Speterinsert_padding ip str ip YBCGE insert padding after inserted character 37750276Speterkey_backspace kbs str kb YB-G- backspace key 37850276Speterkey_catab ktbc str ka -B-G-* clear-all-tabs key 37950276Speterkey_clear kclr str kC -B-G-* clear-screen or erase key 38050276Speterkey_ctab kctab str kt -B-G-* clear-tab key 38150276Speterkey_dc kdch1 str kD YB-G- delete-character key 38250276Speterkey_dl kdl1 str kL -B-G-* delete-line key 38350276Speterkey_down kcud1 str kd YBCGE down-arrow key 38450276Speterkey_eic krmir str kM -B-G-* sent by rmir or smir in insert mode 38550276Speterkey_eol kel str kE -B-G-* clear-to-end-of-line key 38650276Speterkey_eos ked str kS -B-G-* clear-to-end-of-screen key 38750276Speterkey_f0 kf0 str k0 YBCGE F0 function key 38850276Speterkey_f1 kf1 str k1 YBCGE F1 function key 38950276Speterkey_f10 kf10 str k; ----E F10 function key 39050276Speterkey_f2 kf2 str k2 YBCGE F2 function key 39150276Speterkey_f3 kf3 str k3 YBCGE F3 function key 39250276Speterkey_f4 kf4 str k4 YBCGE F4 function key 39350276Speterkey_f5 kf5 str k5 YBCGE F5 function key 39450276Speterkey_f6 kf6 str k6 YBCGE F6 function key 39550276Speterkey_f7 kf7 str k7 YBCGE F7 function key 39650276Speterkey_f8 kf8 str k8 YBCGE F8 function key 39750276Speterkey_f9 kf9 str k9 YBCGE F9 function key 39850276Speterkey_home khome str kh YBCGE home key 39950276Speterkey_ic kich1 str kI YB-GE insert-character key 40050276Speterkey_il kil1 str kA -B-G-* insert-line key 40150276Speterkey_left kcub1 str kl YBCGE left-arrow key 40250276Speterkey_ll kll str kH YB-G- lower-left key (home down) 40350276Speterkey_npage knp str kN YB-GE next-page key 40450276Speterkey_ppage kpp str kP YB-GE previous-page key 40550276Speterkey_right kcuf1 str kr YBCGE right-arrow key 40650276Speterkey_sf kind str kF -B-G-* scroll-forward key 40750276Speterkey_sr kri str kR -B-G-* scroll-backward key 40850276Speterkey_stab khts str kT -B-G-* set-tab key 40950276Speterkey_up kcuu1 str ku YBCGE up-arrow key 41050276Speterkeypad_local rmkx str ke YBCGE leave 'keyboard_transmit' mode 41150276Speterkeypad_xmit smkx str ks YBCGE enter 'keyboard_transmit' mode 41250276Speterlab_f0 lf0 str l0 -B-G-* label on function key f0 if not f0 41350276Speterlab_f1 lf1 str l1 -B-G-* label on function key f1 if not f1 41450276Speterlab_f10 lf10 str la ----- label on function key f10 if not f10 41550276Speterlab_f2 lf2 str l2 -B-G-* label on function key f2 if not f2 41650276Speterlab_f3 lf3 str l3 -B-G-* label on function key f3 if not f3 41750276Speterlab_f4 lf4 str l4 -B-G-* label on function key f4 if not f4 41850276Speterlab_f5 lf5 str l5 -B-G-* label on function key f5 if not f5 41950276Speterlab_f6 lf6 str l6 -B-G-* label on function key f6 if not f6 42050276Speterlab_f7 lf7 str l7 -B-G-* label on function key f7 if not f7 42150276Speterlab_f8 lf8 str l8 -B-G-* label on function key f8 if not f8 42250276Speterlab_f9 lf9 str l9 -B-G-* label on function key f9 if not f9 42350276Spetermeta_off rmm str mo YB-G-* turn off meta mode 42450276Spetermeta_on smm str mm YB-G-* turn on meta mode (8th-bit on) 42550276Speternewline nel str nw YB-G-* newline (behave like cr followed by lf) 42650276Speterpad_char pad str pc YBCGE padding char (instead of null) 42750276Speterparm_dch dch str DC YB-GE delete #1 characters (P*) 42850276Speterparm_delete_line dl str DL YBCGE delete #1 lines (P*) 42950276Speterparm_down_cursor cud str DO YBCGE down #1 lines (P*) 43050276Speterparm_ich ich str IC YB-GE insert #1 characters (P*) 43150276Speterparm_index indn str SF YBCG- scroll forward #1 lines (P) 43250276Speterparm_insert_line il str AL YBCGE insert #1 lines (P*) 43350276Speterparm_left_cursor cub str LE YBCGE move #1 characters to the left (P) 43450276Speterparm_right_cursor cuf str RI YBCGE move #1 characters to the right (P*) 43550276Speterparm_rindex rin str SR YBCG- scroll back #1 lines (P) 43650276Speterparm_up_cursor cuu str UP YBCGE up #1 lines (P*) 43750276Speterpkey_key pfkey str pk -B--- program function key #1 to type string #2 43850276Speterpkey_local pfloc str pl -B--- program function key #1 to execute string #2 43950276Speterpkey_xmit pfx str px -B--- program function key #1 to transmit string #2 44050276Speterprint_screen mc0 str ps -B-G-* print contents of screen 44150276Speterprtr_off mc4 str pf -B-G-* turn off printer 44250276Speterprtr_on mc5 str po -B-G-* turn on printer 44350276Speterrepeat_char rep str rp YB-GE repeat char #1 #2 times (P*) 44450276Speterreset_1string rs1 str r1 -B--- reset string 44550276Speterreset_2string rs2 str r2 -B--- reset string 44650276Speterreset_3string rs3 str r3 -B--- reset string 44750276Speterreset_file rf str rf -B--- name of reset file 44850276Speterrestore_cursor rc str rc YBCG- restore cursor to position of last save_cursor 44950276Speterrow_address vpa str cv -B-GE** vertical position #1 absolute (P) 45050276Spetersave_cursor sc str sc YBCG- save current cursor position (P) 45150276Speterscroll_forward ind str sf YBCGE scroll text up (P) 45250276Speterscroll_reverse ri str sr YBCGE scroll text down (P) 45350276Speterset_attributes sgr str sa YB-G- define video attributes #1-#9 (PG9) 45450276Speterset_tab hts str st YB-G- set a tab in every row, current columns 45550276Speterset_window wind str wi -B-GE current window is lines #1-#2 cols #3-#4 45650276Spetertab ht str ta YBCGE tab to next 8-space hardware tab stop 45750276Speterto_status_line tsl str ts YB-G- move to status line 45850276Speterunderline_char uc str uc YBCG- underline char and move past it 45950276Speterup_half_line hu str hu YB-G- half a line up 46050276Speterinit_prog iprog str iP -B--- path name of program for initialization 46150276Speterkey_a1 ka1 str K1 YB-GE upper left of keypad 46250276Speterkey_a3 ka3 str K3 YB-GE upper right of keypad 46350276Speterkey_b2 kb2 str K2 YB-GE center of keypad 46450276Speterkey_c1 kc1 str K4 YB-GE lower left of keypad 46550276Speterkey_c3 kc3 str K5 YB-GE lower right of keypad 46650276Speterprtr_non mc5p str pO -B-G-* turn on printer for #1 bytes 46750276Speter# 46850276Speter# SVr1 capabilities stop here. IBM's version of terminfo is the same as 46950276Speter# SVr4 up to this point, but has a different set afterwards. 47050276Speter# 47150276Speterchar_padding rmp str rP ----- like ip but when in insert mode 47250276Speteracs_chars acsc str ac ----- graphics charset pairs, based on vt100 47350276Speterplab_norm pln str pn ----- program label #1 to show string #2 47450276Speterkey_btab kcbt str kB ----- back-tab key 47550276Speterenter_xon_mode smxon str SX ----- turn on xon/xoff handshaking 47650276Speterexit_xon_mode rmxon str RX ----- turn off xon/xoff handshaking 47750276Speterenter_am_mode smam str SA ----- turn on automatic margins 47850276Speterexit_am_mode rmam str RA ----- turn off automatic margins 47950276Speterxon_character xonc str XN ----- XON character 48050276Speterxoff_character xoffc str XF ----- XOFF character 48150276Speterena_acs enacs str eA ----- enable alternate char set 48250276Speterlabel_on smln str LO ----- turn on soft labels 48350276Speterlabel_off rmln str LF ----- turn off soft labels 48450276Speterkey_beg kbeg str @1 ----- begin key 48550276Speterkey_cancel kcan str @2 ----- cancel key 48650276Speterkey_close kclo str @3 ----- close key 48750276Speterkey_command kcmd str @4 ----- command key 48850276Speterkey_copy kcpy str @5 ----- copy key 48950276Speterkey_create kcrt str @6 ----- create key 49050276Speterkey_end kend str @7 ----- end key 49150276Speterkey_enter kent str @8 ----- enter/send key 49250276Speterkey_exit kext str @9 ----- exit key 49350276Speterkey_find kfnd str @0 ----- find key 49450276Speterkey_help khlp str %1 ----- help key 49550276Speterkey_mark kmrk str %2 ----- mark key 49650276Speterkey_message kmsg str %3 ----- message key 49750276Speterkey_move kmov str %4 ----- move key 49850276Speterkey_next knxt str %5 ----- next key 49950276Speterkey_open kopn str %6 ----- open key 50050276Speterkey_options kopt str %7 ----- options key 50150276Speterkey_previous kprv str %8 ----- previous key 50250276Speterkey_print kprt str %9 ----- print key 50350276Speterkey_redo krdo str %0 ----- redo key 50450276Speterkey_reference kref str &1 ----- reference key 50550276Speterkey_refresh krfr str &2 ----- refresh key 50650276Speterkey_replace krpl str &3 ----- replace key 50750276Speterkey_restart krst str &4 ----- restart key 50850276Speterkey_resume kres str &5 ----- resume key 50950276Speterkey_save ksav str &6 ----- save key 51050276Speterkey_suspend kspd str &7 ----- suspend key 51150276Speterkey_undo kund str &8 ----- undo key 51250276Speterkey_sbeg kBEG str &9 ----- shifted begin key 51350276Speterkey_scancel kCAN str &0 ----- shifted cancel key 51450276Speterkey_scommand kCMD str *1 ----- shifted command key 51550276Speterkey_scopy kCPY str *2 ----- shifted copy key 51650276Speterkey_screate kCRT str *3 ----- shifted create key 51750276Speterkey_sdc kDC str *4 ----- shifted delete-character key 51850276Speterkey_sdl kDL str *5 ----- shifted delete-line key 51950276Speterkey_select kslt str *6 ----- select key 52050276Speterkey_send kEND str *7 ----- shifted end key 52150276Speterkey_seol kEOL str *8 ----- shifted clear-to-end-of-line key 52250276Speterkey_sexit kEXT str *9 ----- shifted exit key 52350276Speterkey_sfind kFND str *0 ----- shifted find key 52450276Speterkey_shelp kHLP str #1 ----- shifted help key 52550276Speterkey_shome kHOM str #2 ----- shifted home key 52650276Speterkey_sic kIC str #3 ----- shifted insert-character key 52750276Speterkey_sleft kLFT str #4 ----- shifted left-arrow key 52850276Speterkey_smessage kMSG str %a ----- shifted message key 52950276Speterkey_smove kMOV str %b ----- shifted move key 53050276Speterkey_snext kNXT str %c ----- shifted next key 53150276Speterkey_soptions kOPT str %d ----- shifted options key 53250276Speterkey_sprevious kPRV str %e ----- shifted previous key 53350276Speterkey_sprint kPRT str %f ----- shifted print key 53450276Speterkey_sredo kRDO str %g ----- shifted redo key 53550276Speterkey_sreplace kRPL str %h ----- shifted replace key 53650276Speterkey_sright kRIT str %i ----- shifted right-arrow key 53750276Speterkey_srsume kRES str %j ----- shifted resume key 53850276Speterkey_ssave kSAV str !1 ----- shifted save key 53950276Speterkey_ssuspend kSPD str !2 ----- shifted suspend key 54050276Speterkey_sundo kUND str !3 ----- shifted undo key 54150276Speterreq_for_input rfi str RF ----- send next input char (for ptys) 54250276Speterkey_f11 kf11 str F1 ----E F11 function key 54350276Speterkey_f12 kf12 str F2 ----E F12 function key 54450276Speterkey_f13 kf13 str F3 ----E F13 function key 54550276Speterkey_f14 kf14 str F4 ----E F14 function key 54650276Speterkey_f15 kf15 str F5 ----E F15 function key 54750276Speterkey_f16 kf16 str F6 ----E F16 function key 54850276Speterkey_f17 kf17 str F7 ----E F17 function key 54950276Speterkey_f18 kf18 str F8 ----E F18 function key 55050276Speterkey_f19 kf19 str F9 ----E F19 function key 55150276Speterkey_f20 kf20 str FA ----E F20 function key 55250276Speterkey_f21 kf21 str FB ----E F21 function key 55350276Speterkey_f22 kf22 str FC ----E F22 function key 55450276Speterkey_f23 kf23 str FD ----E F23 function key 55550276Speterkey_f24 kf24 str FE ----E F24 function key 55650276Speterkey_f25 kf25 str FF ----E F25 function key 55750276Speterkey_f26 kf26 str FG ----E F26 function key 55850276Speterkey_f27 kf27 str FH ----E F27 function key 55950276Speterkey_f28 kf28 str FI ----E F28 function key 56050276Speterkey_f29 kf29 str FJ ----E F29 function key 56150276Speterkey_f30 kf30 str FK ----E F30 function key 56250276Speterkey_f31 kf31 str FL ----E F31 function key 56350276Speterkey_f32 kf32 str FM ----E F32 function key 56450276Speterkey_f33 kf33 str FN ----E F33 function key 56550276Speterkey_f34 kf34 str FO ----E F34 function key 56650276Speterkey_f35 kf35 str FP ----E F35 function key 56750276Speterkey_f36 kf36 str FQ ----E F36 function key 56850276Speterkey_f37 kf37 str FR ----E F37 function key 56950276Speterkey_f38 kf38 str FS ----E F38 function key 57050276Speterkey_f39 kf39 str FT ----E F39 function key 57150276Speterkey_f40 kf40 str FU ----E F40 function key 57250276Speterkey_f41 kf41 str FV ----E F41 function key 57350276Speterkey_f42 kf42 str FW ----E F42 function key 57450276Speterkey_f43 kf43 str FX ----E F43 function key 57550276Speterkey_f44 kf44 str FY ----E F44 function key 57650276Speterkey_f45 kf45 str FZ ----E F45 function key 57750276Speterkey_f46 kf46 str Fa ----E F46 function key 57850276Speterkey_f47 kf47 str Fb ----E F47 function key 57950276Speterkey_f48 kf48 str Fc ----E F48 function key 58050276Speterkey_f49 kf49 str Fd ----E F49 function key 58150276Speterkey_f50 kf50 str Fe ----E F50 function key 58250276Speterkey_f51 kf51 str Ff ----E F51 function key 58350276Speterkey_f52 kf52 str Fg ----E F52 function key 58450276Speterkey_f53 kf53 str Fh ----E F53 function key 58550276Speterkey_f54 kf54 str Fi ----E F54 function key 58650276Speterkey_f55 kf55 str Fj ----E F55 function key 58750276Speterkey_f56 kf56 str Fk ----E F56 function key 58850276Speterkey_f57 kf57 str Fl ----E F57 function key 58950276Speterkey_f58 kf58 str Fm ----E F58 function key 59050276Speterkey_f59 kf59 str Fn ----E F59 function key 59150276Speterkey_f60 kf60 str Fo ----E F60 function key 59250276Speterkey_f61 kf61 str Fp ----E F61 function key 59350276Speterkey_f62 kf62 str Fq ----E F62 function key 59450276Speterkey_f63 kf63 str Fr ----E F63 function key 59550276Speterclr_bol el1 str cb ----- Clear to beginning of line 59650276Speterclear_margins mgc str MC ----- clear right and left soft margins 59750276Speterset_left_margin smgl str ML ----- set left soft margin at current column 59850276Speterset_right_margin smgr str MR ----- set right soft margin at current column 59950276Speterlabel_format fln str Lf ----- label format 60050276Speterset_clock sclk str SC ----- set clock, #1 hrs #2 mins #3 secs 60150276Speterdisplay_clock dclk str DK ----- display clock at (#1,#2) 60250276Speterremove_clock rmclk str RC ----- remove clock 60350276Spetercreate_window cwin str CW ----- define a window #1 from #2,#3 to #4,#5 60450276Spetergoto_window wingo str WG ----- go to window #1 60550276Speterhangup hup str HU ----- hang-up phone 60650276Speterdial_phone dial str DI ----- dial number #1 60750276Speterquick_dial qdial str QD ----- dial number #1 without checking 60850276Spetertone tone str TO ----- select touch tone dialing 60950276Speterpulse pulse str PU ----- select pulse dialing 61050276Speterflash_hook hook str fh ----- flash switch hook 61150276Speterfixed_pause pause str PA ----- pause for 2-3 seconds 61250276Speterwait_tone wait str WA ----- wait for dial-tone 61350276Speteruser0 u0 str u0 ----- User string #0 61450276Speteruser1 u1 str u1 ----- User string #1 61550276Speteruser2 u2 str u2 ----- User string #2 61650276Speteruser3 u3 str u3 ----- User string #3 61750276Speteruser4 u4 str u4 ----- User string #4 61850276Speteruser5 u5 str u5 ----- User string #5 61950276Speteruser6 u6 str u6 ----- User string #6 62050276Speteruser7 u7 str u7 ----- User string #7 62150276Speteruser8 u8 str u8 ----- User string #8 62250276Speteruser9 u9 str u9 ----- User string #9 62350276Speter# 62450276Speter# SVr4 added these capabilities to support color 62550276Speter# 62650276Speterorig_pair op str op ----- Set default pair to its original value 62750276Speterorig_colors oc str oc ----- Set all color pairs to the original ones 62850276Speterinitialize_color initc str Ic ----- initialize color #1 to (#2,#3,#4) 62950276Speterinitialize_pair initp str Ip ----- Initialize color pair #1 to fg=(#2,#3,#4), bg=(#5,#6,#7) 63050276Speterset_color_pair scp str sp ----- Set current color pair to #1 63150276Speterset_foreground setf str Sf ----- Set foreground color #1 63250276Speterset_background setb str Sb ----- Set background color #1 63350276Speter# 63450276Speter# SVr4 added these capabilities to support printers 63550276Speter# 63650276Speterchange_char_pitch cpi str ZA ----- Change number of characters per inch 63750276Speterchange_line_pitch lpi str ZB ----- Change number of lines per inch 63850276Speterchange_res_horz chr str ZC ----- Change horizontal resolution 63950276Speterchange_res_vert cvr str ZD ----- Change vertical resolution 64050276Speterdefine_char defc str ZE ----- Define a character 64150276Speterenter_doublewide_mode swidm str ZF ----- Enter double-wide mode 64250276Speterenter_draft_quality sdrfq str ZG ----- Enter draft-quality mode 64350276Speterenter_italics_mode sitm str ZH ----- Enter italic mode 64450276Speterenter_leftward_mode slm str ZI ----- Start leftward carriage motion 64550276Speterenter_micro_mode smicm str ZJ ----- Start micro-motion mode 64650276Speterenter_near_letter_quality snlq str ZK ----- Enter NLQ mode 64750276Speterenter_normal_quality snrmq str ZL ----- Enter normal-quality mode 64850276Speterenter_shadow_mode sshm str ZM ----- Enter shadow-print mode 64950276Speterenter_subscript_mode ssubm str ZN ----- Enter subscript mode 65050276Speterenter_superscript_mode ssupm str ZO ----- Enter superscript mode 65150276Speterenter_upward_mode sum str ZP ----- Start upward carriage motion 65250276Speterexit_doublewide_mode rwidm str ZQ ----- End double-wide mode 65350276Speterexit_italics_mode ritm str ZR ----- End italic mode 65450276Speterexit_leftward_mode rlm str ZS ----- End left-motion mode 65550276Speterexit_micro_mode rmicm str ZT ----- End micro-motion mode 65650276Speterexit_shadow_mode rshm str ZU ----- End shadow-print mode 65750276Speterexit_subscript_mode rsubm str ZV ----- End subscript mode 65850276Speterexit_superscript_mode rsupm str ZW ----- End superscript mode 65950276Speterexit_upward_mode rum str ZX ----- End reverse character motion 66050276Spetermicro_column_address mhpa str ZY ----- Like column_address in micro mode 66150276Spetermicro_down mcud1 str ZZ ----- Like cursor_down in micro mode 66250276Spetermicro_left mcub1 str Za ----- Like cursor_left in micro mode 66350276Spetermicro_right mcuf1 str Zb ----- Like cursor_right in micro mode 66450276Spetermicro_row_address mvpa str Zc ----- Like row_address in micro mode 66550276Spetermicro_up mcuu1 str Zd ----- Like cursor_up in micro mode 66650276Speterorder_of_pins porder str Ze ----- Match software bits to print-head pins 66750276Speterparm_down_micro mcud str Zf ----- Like parm_down_cursor in micro mode 66850276Speterparm_left_micro mcub str Zg ----- Like parm_left_cursor in micro mode 66950276Speterparm_right_micro mcuf str Zh ----- Like parm_right_cursor in micro mode 67050276Speterparm_up_micro mcuu str Zi ----- Like parm_up_cursor in micro mode 67150276Speterselect_char_set scs str Zj ----- Select character set 67250276Speterset_bottom_margin smgb str Zk ----- Set bottom margin at current line 67350276Speterset_bottom_margin_parm smgbp str Zl ----- Set bottom margin at line #1 or #2 lines from bottom 67450276Speterset_left_margin_parm smglp str Zm ----- Set left (right) margin at column #1 (#2) 67550276Speterset_right_margin_parm smgrp str Zn ----- Set right margin at column #1 67650276Speterset_top_margin smgt str Zo ----- Set top margin at current line 67750276Speterset_top_margin_parm smgtp str Zp ----- Set top (bottom) margin at row #1 (#2) 67850276Speterstart_bit_image sbim str Zq ----- Start printing bit image graphics 67950276Speterstart_char_set_def scsd str Zr ----- Start character set definition 68050276Speterstop_bit_image rbim str Zs ----- Stop printing bit image graphics 68150276Speterstop_char_set_def rcsd str Zt ----- End definition of character set 68250276Spetersubscript_characters subcs str Zu ----- List of subscriptable characters 68350276Spetersuperscript_characters supcs str Zv ----- List of superscriptable characters 68450276Speterthese_cause_cr docr str Zw ----- Printing any of these characters causes CR 68550276Speterzero_motion zerom str Zx ----- No motion for subsequent character 68650276Speter#%.TE 68750276Speter#%.ad 68850276Speter#% 68950276Speter#%The following string capabilities are present in the SVr4.0 term structure, 69050276Speter#%but were originally not documented in the man page. 69150276Speter#% 69250276Speter#%.na 69350276Speter#%.TS H 69450276Speter#%center expand; 69550276Speter#%c l l c 69650276Speter#%c l l c 69750276Speter#%lw25 lw6 lw2 lw18. 69850276Speter#%\fBVariable Cap- TCap Description\fR 69950276Speter#%\fBString name Code\fR 70050276Speterchar_set_names csnm str Zy ----- List of character set names 70150276Speterkey_mouse kmous str Km ----- Mouse event has occurred 70250276Spetermouse_info minfo str Mi ----- Mouse status information 70350276Speterreq_mouse_pos reqmp str RQ ----- Request mouse position 70450276Speterget_mouse getm str Gm ----- Curses should get button events 70550276Speterset_a_foreground setaf str AF ----- Set foreground color using ANSI escape 70650276Speterset_a_background setab str AB ----- Set background color using ANSI escape 70750276Speterpkey_plab pfxl str xl ----- Program function key #1 to type string #2 and show string #3 70850276Speterdevice_type devt str dv ----- Indicate language/codeset support 70950276Spetercode_set_init csin str ci ----- Init sequence for multiple codesets 71050276Speterset0_des_seq s0ds str s0 ----- Shift to code set 0 (EUC set 0, ASCII) 71150276Speterset1_des_seq s1ds str s1 ----- Shift to code set 1 71250276Speterset2_des_seq s2ds str s2 ----- Shift to code set 2 71350276Speterset3_des_seq s3ds str s3 ----- Shift to code set 3 71450276Speterset_lr_margin smglr str ML ----- Set both left and right margins to #1, #2 71550276Speterset_tb_margin smgtb str MT ----- Sets both top and bottom margins to #1, #2 71650276Speterbit_image_repeat birep str Xy ----- Repeat bit image cell #1 #2 times 71750276Speterbit_image_newline binel str Zz ----- Move to next row of the bit image 71850276Speterbit_image_carriage_return bicr str Yv ----- Move to beginning of same row 71950276Spetercolor_names colornm str Yw ----- Give name for color #1 72050276Speterdefine_bit_image_region defbi str Yx ----- Define rectangualar bit image region 72150276Speterend_bit_image_region endbi str Yy ----- End a bit-image region 72250276Speterset_color_band setcolor str Yz ----- Change to ribbon color #1 72350276Speterset_page_length slines str YZ ----- Set page length to #1 lines 72450276Speter# 72550276Speter# SVr4 added these capabilities for direct PC-clone support 72650276Speter# 72750276Speterdisplay_pc_char dispc str S1 ----- Display PC character 72850276Speterenter_pc_charset_mode smpch str S2 ----- Enter PC character display mode 72950276Speterexit_pc_charset_mode rmpch str S3 ----- Exit PC character display mode 73050276Speterenter_scancode_mode smsc str S4 ----- Enter PC scancode mode 73150276Speterexit_scancode_mode rmsc str S5 ----- Exit PC scancode mode 73250276Speterpc_term_options pctrm str S6 ----- PC terminal options 73350276Speterscancode_escape scesc str S7 ----- Escape for scancode emulation 73450276Speteralt_scancode_esc scesa str S8 ----- Alternate escape for scancode emulation 73550276Speter#%.TE 73650276Speter#%.ad 73750276Speter#% 73850276Speter#%.in .8i 73950276Speter#%The XSI Curses standard added these. They are some post-4.1 74050276Speter#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x. 74150276Speter#%The \fBncurses\fR termcap names for them are invented; according to the 74250276Speter#%XSI Curses standard, they have no termcap names. If your compiled terminfo 74350276Speter#%entries use these, they may not be binary-compatible with System V terminfo 74450276Speter#%entries after SVr4.1; beware! 74550276Speter#% 74650276Speter#%.na 74750276Speter#%.TS H 74850276Speter#%center expand; 74950276Speter#%c l l c 75050276Speter#%c l l c 75150276Speter#%lw25 lw6 lw2 lw20. 75250276Speter#%\fBVariable Cap- TCap Description\fR 75350276Speter#%\fBString name Code\fR 75450276Speterenter_horizontal_hl_mode ehhlm str Xh ----- Enter horizontal highlight mode 75550276Speterenter_left_hl_mode elhlm str Xl ----- Enter left highlight mode 75650276Speterenter_low_hl_mode elohlm str Xo ----- Enter low highlight mode 75750276Speterenter_right_hl_mode erhlm str Xr ----- Enter right highlight mode 75850276Speterenter_top_hl_mode ethlm str Xt ----- Enter top highlight mode 75950276Speterenter_vertical_hl_mode evhlm str Xv ----- Enter vertical highlight mode 76050276Speterset_a_attributes sgr1 str sA ----- Define second set of video attributes #1-#6 76150276Speterset_pglen_inch slength str sL ----- YI Set page length to #1 hundredth of an inch 76250276Speter#%.TE 76350276Speter#%.ad 76450276Speter# 76550276Speter# The magic token below tells the tic compiler-generator code that all the caps 76650276Speter# past it should be ignored (not written out) when dumping terminfo objects. It 76750276Speter# also tells the man page table generator not to pass through following lines 76850276Speter# This means we can have obsolete capabilities and pseudo-capabilities that are 76950276Speter# recognized for termcap or terminfo compilation, but not output. 77050276Speter# 77150276Speter# %%-STOP-HERE-%% 77250276Speter# 77350276Speter# Don't move this casually! In fact, don't move it at all unless you're 77450276Speter# either doing it to add System V or XPG4 extensions, or have decided you 77550276Speter# don't care about SVr4 binary compatibility. 77650276Speter# 77750276Speter############################################################################# 77850276Speter# 77950276Speter# TERMCAP EXTENSION CAPABILITIES 78050276Speter# 78150276Speter# The capabilities below are either obsolete or extensions on certain systems. 78250276Speter# They are not used by SVR4 terminfo. Some are used by captoinfo to translate 78350276Speter# termcap sources; the rest are listed for completeness, and in case somebody 78450276Speter# cares about them enough to hack in code that will translate them into 78550276Speter# terminfo capabilities. 78650276Speter# 78750276Speter# The first part of the list is from Ross Ridge's `mytinfo' package 78850276Speter# (comp.sources.unix, volume 26); the variable names and terminfo names (as 78950276Speter# well as the termcap codes) match his list. 79050276Speter# 79150276Speter# This group of codes is not marked obsolete in 4.4BSD, but have no direct 79250276Speter# terminfo equivalents. The rs capability is specially translated to terminfo 79350276Speter# r2, and vice versa, if an entry does not already have an r2. Similarly, 79450276Speter# i2 is translated to r3 if there is no r3 (because SV terminfo maps is to i2). 79550276Speter# The ug capability is thrown away, but assumed to be whatever sg is if the 79650276Speter# latter is nonzero and we're dumping in termcap format. 79750276Speter# 79850276Spetertermcap_init2 OTi2 str i2 YB--- secondary initialization string 79950276Spetertermcap_reset OTrs str rs YB-G- terminal reset string 80050276Spetermagic_cookie_glitch_ul OTug num ug YBCGE number of blanks left by ul 80150276Speter# 80250276Speter# Obsolete termcap capabilities. Some are used for termcap translation. The 80350276Speter# code uses the 'OT' prefix we put on obsolete capabilities to suppress 80450276Speter# printing them in terminfo source dumps of compiled entries. 80550276Speter# 80650276Speterbackspaces_with_bs OTbs bool bs YBCGE uses ^H to move left 80750276Spetercrt_no_scrolling OTns bool ns YBCG- crt cannot scroll 80850276Speterno_correctly_working_cr OTnc bool nc YBCG- no way to go to start of line 80950276Spetercarriage_return_delay OTdC num dC YB-G- pad needed for CR 81050276Speternew_line_delay OTdN num dN YB-G- pad needed for LF 81150276Speterlinefeed_if_not_lf OTnl str nl YBCGE use to move down 81250276Speterbackspace_if_not_bs OTbc str bc YBCGE move left, if not ^H 81350276Speter# 81450276Speter# GNU termcap library extensions. The GNU termcap file distributed with 81550276Speter# Emacs no longer uses these, but MT showed up in pre-9.0 versions of the 81650276Speter# BSD termcap file. The name clash with terminfo MT is resolved by type 81750276Speter# info; MT is converted to km. 81850276Speter# 81950276Spetergnu_has_meta_key OTMT bool MT ----E has meta key 82050276Speter# gnu_tab_width OTtw num tw ----E tab width in spaces 82150276Speter# 82250276Speter# GNU termcap *does* include the following extended capability, Only the 82350276Speter# now-obsolete Ann Arbor terminals used it. 82450276Speter# 82550276Speter# gnu_change_scroll_region OTcS str cS ---GE alternate set scrolling region 82650276Speter# 82750276Speter# The following comments describe capnames so ancient that I believe no 82850276Speter# software uses them any longer. Some of these have to go because they 82950276Speter# clash with terminfo names in ways that cannot be resolved by type 83050276Speter# information. 83150276Speter# 83250276Speter# These mytinfo codes are not used in the 4.4BSD curses code. They are 83350276Speter# marked obsolete in the 4.4BSD manual pages. 83450276Speter# 83550276Speter# There is one conflict with terminfo; ma is in both. This conflict is 83650276Speter# resolved by type information. 83750276Speter# 83850276Speter# The `ko' capability is translated by special code. It should contain a 83950276Speter# comma-separated list of capabilities for which there are corresponding keys. 84050276Speter# The `kn' code is accepted but ignored. 84150276Speter# 84250276Speter# The `ma' capability seems to have been designed to map between the rogue(2) 84350276Speter# motion keys (including jkhl) and characters emitted by arrow keys on some 84450276Speter# primitive pre-ANSI terminals. It's so obsolete it's fossilized... 84550276Speter# 84650276Speter# Here is a description of memory_lock_above and memory_unlock: 84750276Speter# "You can 'freeze' data on the screen by turning on Memory Lock in a line of 84850276Speter# text. All lines above the cursor's current line become locked in place on 84950276Speter# the screen. Then enter data normally. When the screen fills up, any 85050276Speter# further data entered forces the first line of unfrozen line text to scroll 85150276Speter# under the frozen data. Lines scrolled off the screen are inserted into 85250276Speter# memory immediately preceding the first frozen line." (from the HP 700/96 85350276Speter# User's manual). VT100/ANSI memory lock set is \E[>2h, reset is \E[>2l. 85450276Speter# 85550276Speter# Applications that use terminfo are supposed to behave as though xr is 85650276Speter# always true. 85750276Speter# 85850276Speterlinefeed_is_newline OTNL bool NL YB--- move down with \n 85950276Speter# even_parity OTEP bool EP -B--- terminal requires even parity 86050276Speter# odd_parity OTOP bool OP -B--- terminal requires odd parity 86150276Speter# half_duplex OTHD bool HD -B--- terminal is half-duplex 86250276Speter# lower_case_only OTLC bool LC -B--- terminal has only lower case 86350276Speter# upper_case_only OTUC bool UC -B--- terminal has only upper case 86450276Speterbackspace_delay OTdB num dB YB-G- padding required for ^H 86550276Speter# form_feed_delay OTdF num dF -B-G- padding required for ^L 86650276Speterhorizontal_tab_delay OTdT num dT YB-G- padding required for ^I 86750276Speter# vertical_tab_delay OTdV num dV -B--- padding required for ^V 86850276Speternumber_of_function_keys OTkn num kn -B-G- count of function keys 86950276Speterother_non_function_keys OTko str ko -B-G- list of self-mapped keycaps 87050276Speterarrow_key_map OTma str ma YBC-- map arrow keys rogue(1) motion keys 87150276Speter# memory_lock_above OTml str ml -B--- lock visible screen memory above the current line 87250276Speter# memory_unlock OTmu str mu -B--- unlock visible screen memory above the current line 87350276Speterhas_hardware_tabs OTpt bool pt YB--- has 8-char tabs invoked with ^I 87450276Speterreturn_does_clr_eol OTxr bool xr YB--- return clears the line 87550276Speter# tek_4025_insert_line OTxx bool xx -BC-- Tektronix 4025 insert-line glitch 87650276Speter# 87750276Speter# mytinfo described this as a termcap capability, but it's not listed in the 87850276Speter# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses 87950276Speter# package, like System V, behaves as though it is always true. 88050276Speter# 88150276Speter# rind_only_at_top OTxq bool xq ----- reverse index only works from top line 88250276Speter# 88350276Speter# University of Waterloo termcap extensions (as described in mytinfo). 88450276Speter# The `xl' termcap file clashes with a terminfo name; this ambiguity cannot 88550276Speter# be resolved by a type check. The descriptions are guesses from what was 88650276Speter# in the mytinfo tables. 88750276Speter# 88850276Speter# key_interrupt_char OTki str ki ----- string set by interrupt key (?) 88950276Speter# key_kill_char OTkk str kk ----- string set by kill key (?) 89050276Speter# key_suspend_char OTkz str kz ----- string set by suspend key (?) 89150276Speter# initialization_messy OTxc bool xc ----- initialization leaves garbage on the screen (?) 89250276Speter# ind_at_bottom_does_cr OTxl bool xl ----- index does a carriage return 89350276Speter# 89450276Speter# Nonstandard capabilities unique to Ross Ridge's `mytinfo' package. 89550276Speter# SR clashes with a terminfo name; this ambiguity cannot be resolved by a type 89650276Speter# check. 89750276Speter# 89850276Speter# scroll_left OTsl1 str Sl ----- scroll screen leftward 89950276Speter# scroll_right OTsr1 str Sr ----- scroll screen rightward 90050276Speter# parm_scroll_left OTsl str SL ----- scroll screen leftward #1 characters 90150276Speter# parm_scroll_right OTsr str SR ----- scroll screen rightward #1 characters 90250276Speter# 90350276Speter# The mytinfo capabilities end here. 90450276Speter# 90550276Speter# XENIX extensions: 90650276Speter# 90750276Speter# Xenix defined its own set of forms-drawing capabilities: 90850276Speter# 90950276Speter# cap IBM ASCII description ACS ASCII 91050276Speter# --- ----------- -------------------- ------------- ------ 91150276Speter# G1 191 \277 M-? single upper right ACS_URCORNER 91250276Speter# G2 218 \332 M-Z single upper left ACS_ULCORNER 91350276Speter# G3 192 \300 M-@ single lower left ACS_LLCORNER 91450276Speter# G4 217 \331 M-Y single lower right ACS_LRCORNER 91550276Speter# G5 187 \273 M-; double upper right 91650276Speter# G6 201 \311 M-I double upper left 91750276Speter# G7 200 \310 M-H double lower left 91850276Speter# G8 188 \274 M-< double lower right 91950276Speter# GC 197 \305 M-E single intersection ACS_PLUS _ _ 92050276Speter# GD 194 \302 M-B single down-tick ACS_TTEE | 92150276Speter# GH 196 \304 M-D single horizontal line ACS_HLINE 92250276Speter# GL 180 \264 M-4 single left tick ACS_RTEE -| 92350276Speter# GR 195 \303 M-C single right tick ACS_LTEE |- 92450276Speter# GU 193 \301 M-A single up tick ACS_BTEE _|_ 92550276Speter# GV 179 \263 M-3 single vertical line ACS_VLINE 92650276Speter# Gc 206 \316 M-N double intersection 92750276Speter# Gd 203 \313 M-K double down tick 92850276Speter# Gh 205 \315 M-M double horizontal line 92950276Speter# Gl 204 \204 M-L double left tick 93050276Speter# Gr 185 \271 M-9 double right tick 93150276Speter# Gu 202 \312 M-J double up tick 93250276Speter# Gv 186 \272 M-: double vertical line 93350276Speter# 93450276Speter# The compiler will translate the single-line caps and discard the others 93550276Speter# (via IGNORE aliases further down). We don't want to do normal pad 93650276Speter# translation on these, they're often single-character printable ASCII 93750276Speter# strings that happen to be numerics. There's awk code in parametrized.sh 93850276Speter# that detects the acs_ prefix and uses it to suppress pad translation. 93950276Speter# These terminfo names are invented. 94050276Speter# 94150276Speteracs_ulcorner OTG2 str G2 ----- single upper left 94250276Speteracs_llcorner OTG3 str G3 ----- single lower left 94350276Speteracs_urcorner OTG1 str G1 ----- single upper right 94450276Speteracs_lrcorner OTG4 str G4 ----- single lower right 94550276Speteracs_ltee OTGR str GR ----- tee pointing right 94650276Speteracs_rtee OTGL str GL ----- tee pointing left 94750276Speteracs_btee OTGU str GU ----- tee pointing up 94850276Speteracs_ttee OTGD str GD ----- tee pointing down 94950276Speteracs_hline OTGH str GH ----- single horizontal line 95050276Speteracs_vline OTGV str GV ----- single vertical line 95150276Speteracs_plus OTGC str GC ----- single intersection 95250276Speter# 95350276Speter############################################################################# 95450276Speter# 95550276Speter# TERMINFO EXTENSION CAPABILITIES 95650276Speter# 95750276Speter# This section is almost all comments. What it's mainly for is to describe 95850276Speter# what capabilities need to be squeezed out to get down to the XSI Curses 95950276Speter# standard set. They are flagged with K. 96050276Speter# 96150276Speter# HP extensions 96250276Speter# 96350276Speter# These extensions follow ptr_non (replacing everything after it) in HP 96450276Speter# terminfo files. Except for memory_lock and memory_unlock, they are 96550276Speter# functionally identical to SVr4 extensions, but they make the binary format 96650276Speter# different. Grrr.... 96750276Speter# 96850276Spetermemory_lock meml str ml ----K memory lock above 96950276Spetermemory_unlock memu str mu ----K memory unlock 97050276Speter#plab_norm pln str pn ----- program label #1 to show string #2 97150276Speter#label_on smln str LO ----- turn on soft labels 97250276Speter#label_off rmln str LF ----- turn off soft labels 97350276Speter#key_f11 kf11 str F1 ----- F11 function key 97450276Speter#key_f12 kf12 str F2 ----- F12 function key 97550276Speter#key_f13 kf13 str F3 ----- F13 function key 97650276Speter#key_f14 kf14 str F4 ----- F14 function key 97750276Speter#key_f15 kf15 str F5 ----- F15 function key 97850276Speter#key_f16 kf16 str F6 ----- F16 function key 97950276Speter#key_f17 kf17 str F7 ----- F17 function key 98050276Speter#key_f18 kf18 str F8 ----- F18 function key 98150276Speter#key_f19 kf19 str F9 ----- F19 function key 98250276Speter#key_f20 kf20 str FA ----- F20 function key 98350276Speter#key_f21 kf21 str FB ----- F21 function key 98450276Speter#key_f22 kf22 str FC ----- F22 function key 98550276Speter#key_f23 kf23 str FD ----- F23 function key 98650276Speter#key_f24 kf24 str FE ----- F24 function key 98750276Speter#key_f25 kf25 str FF ----- F25 function key 98850276Speter#key_f26 kf26 str FG ----- F26 function key 98950276Speter#key_f27 kf27 str FH ----- F27 function key 99050276Speter#key_f28 kf28 str FI ----- F28 function key 99150276Speter#key_f29 kf29 str FJ ----- F29 function key 99250276Speter#key_f30 kf30 str FK ----- F30 function key 99350276Speter#key_f31 kf31 str FL ----- F31 function key 99450276Speter#key_f32 kf32 str FM ----- F32 function key 99550276Speter#key_f33 kf33 str FN ----- F33 function key 99650276Speter#key_f34 kf34 str FO ----- F34 function key 99750276Speter#key_f35 kf35 str FP ----- F35 function key 99850276Speter#key_f36 kf36 str FQ ----- F36 function key 99950276Speter#key_f37 kf37 str FR ----- F37 function key 100050276Speter#key_f38 kf38 str FS ----- F38 function key 100150276Speter#key_f39 kf39 str FT ----- F39 function key 100250276Speter#key_f40 kf40 str FU ----- F40 function key 100350276Speter#key_f41 kf41 str FV ----- F41 function key 100450276Speter#key_f42 kf42 str FW ----- F42 function key 100550276Speter#key_f43 kf43 str FX ----- F43 function key 100650276Speter#key_f44 kf44 str FY ----- F44 function key 100750276Speter#key_f45 kf45 str FZ ----- F45 function key 100850276Speter#key_f46 kf46 str Fa ----- F46 function key 100950276Speter#key_f47 kf47 str Fb ----- F47 function key 101050276Speter#key_f48 kf48 str Fc ----- F48 function key 101150276Speter#key_f49 kf49 str Fd ----- F49 function key 101250276Speter#key_f50 kf50 str Fe ----- F50 function key 101350276Speter#key_f51 kf51 str Ff ----- F51 function key 101450276Speter#key_f52 kf52 str Fg ----- F52 function key 101550276Speter#key_f53 kf53 str Fh ----- F53 function key 101650276Speter#key_f54 kf54 str Fi ----- F54 function key 101750276Speter#key_f55 kf55 str Fj ----- F55 function key 101850276Speter#key_f56 kf56 str Fk ----- F56 function key 101950276Speter#key_f57 kf57 str Fl ----- F57 function key 102050276Speter#key_f58 kf58 str Fm ----- F58 function key 102150276Speter#key_f59 kf59 str Fn ----- F59 function key 102250276Speter#key_f60 kf60 str Fo ----- F60 function key 102350276Speter#key_f61 kf61 str Fp ----- F61 function key 102450276Speter#key_f62 kf62 str Fq ----- F62 function key 102550276Speter#key_f63 kf63 str Fr ----- F63 function key 102650276Speter# 102750276Speter# IBM extensions 102850276Speter# 102950276Speter# These extensions follow ptr_non (replacing everything after it) in IBM 103050276Speter# terminfo files. 103150276Speter# 103250276Speter# The places in the box[12] capabilities correspond to acsc characters, here is 103350276Speter# the mapping: 103450276Speter# 103550276Speter# box1[0] = ACS_ULCORNER 103650276Speter# box1[1] = ACS_HLINE 103750276Speter# box1[2] = ACS_URCORNER 103850276Speter# box1[3] = ACS_VLINE 103950276Speter# box1[4] = ACS_LRCORNER 104050276Speter# box1[5] = ACS_LLCORNER 104150276Speter# box1[6] = ACS_TTEE 104250276Speter# box1[7] = ACS_RTEE 104350276Speter# box1[8] = ACS_BTEE 104450276Speter# box1[9] = ACS_LTEE 104550276Speter# box1[10] = ACS_PLUS 104650276Speter# 104750276Speter# The box2 characters are the double-line versions of these forms graphics. 104850276Speter# 104950276Speterbox_chars_1 box1 str bx ----K box characters primary set 105050276Speter#box_chars_2 box2 str by ----K box characters secondary set 105150276Speter#box_attr_1 batt1 str Bx ----K attributes for box1 105250276Speter#box_attr_2 batt2 str By ----K attributes for box2 105350276Speter#color_bg_0 colb0 str d0 ----K background color 0 105450276Speter#color_bg_1 colb1 str d1 ----K background color 1 105550276Speter#color_bg_2 colb2 str d2 ----K background color 2 105650276Speter#color_bg_3 colb3 str d3 ----K background color 3 105750276Speter#color_bg_4 colb4 str d4 ----K background color 4 105850276Speter#color_bg_5 colb5 str d5 ----K background color 5 105950276Speter#color_bg_6 colb6 str d6 ----K background color 6 106050276Speter#color_bg_7 colb7 str d7 ----K background color 7 106150276Speter#color_fg_0 colf0 str c0 ----K foreground color 0 106250276Speter#color_fg_1 colf1 str c1 ----K foreground color 1 106350276Speter#color_fg_2 colf2 str c2 ----K foreground color 2 106450276Speter#color_fg_3 colf3 str c3 ----K foreground color 3 106550276Speter#color_fg_4 colf4 str c4 ----K foreground color 4 106650276Speter#color_fg_5 colf5 str c5 ----K foreground color 5 106750276Speter#color_fg_6 colf6 str c6 ----K foreground color 6 106850276Speter#color_fg_7 colf7 str c7 ----K foreground color 7 106950276Speter#font_0 font0 str f0 ----- select font 0 107050276Speter#font_1 font1 str f1 ----- select font 1 107150276Speter#font_2 font2 str f2 ----- select font 2 107250276Speter#font_3 font3 str f3 ----- select font 3 107350276Speter#font_4 font4 str f4 ----K select font 4 107450276Speter#font_5 font5 str f5 ----K select font 5 107550276Speter#font_6 font6 str f6 ----K select font 6 107650276Speter#font_7 font7 str f7 ----K select font 7 107750276Speter#key_back_tab kbtab str k0 ----- backtab key 107850276Speter#key_do kdo str ki ----K do request key 107950276Speter#key_command kcmd str kd ----K command-request key 108050276Speter#key_command_pane kcpn str kW ----K command-pane key 108150276Speter#key_end kend str kw ----- end key 108250276Speter#key_help khlp str kq ----- help key 108350276Speter#key_newline knl str nl ----K newline key 108450276Speter#key_next_pane knpn str kv ----K next-pane key 108550276Speter#key_prev_cmd kppn str kp ----K previous-command key 108650276Speter#key_prev_pane kppn str kV ----K previous-pane key 108750276Speter#key_quit kquit str kQ ----K quit key 108850276Speter#key_select ksel str kU ----- select key 108950276Speter#key_scroll_left kscl str kz ----K scroll left 109050276Speter#key_scroll_right kscr str kZ ----K scroll right 109150276Speter#key_tab ktab str ko ----K tab key 109250276Speter#key_smap_in1 kmpf1 str Kv ----K special mapped key 1 input 109350276Speter#key_smap_out1 kmpt1 str KV ----K special mapped key 1 output 109450276Speter#key_smap_in2 kmpf2 str Kw ----K special mapped key 2 input 109550276Speter#key_smap_out2 kmpt2 str KW ----K special mapped key 2 output 109650276Speter#key_smap_in3 kmpf3 str Kx ----K special mapped key 3 input 109750276Speter#key_smap_out3 kmpt3 str KX ----K special mapped key 3 output 109850276Speter#key_smap_in4 kmpf4 str Ky ----K special mapped key 4 input 109950276Speter#key_smap_out4 kmpt4 str KY ----K special mapped key 4 output 110050276Speter#key_smap_in5 kmpf5 str Kz ----K special mapped key 5 input 110150276Speter#key_smap_out5 kmpt5 str KZ ----K special mapped key 5 output 110250276Speter#appl_defined_str apstr str za ----K application-defined string 110350276Speter# The key_smap_in[6789] and key_smap_out[6789] capabilities aren't described in 110450276Speter# the IBM manual pages, so the cap name strings are guesses. The terminfo 110550276Speter# names are almost certainly right, the termcap ones almost certainly wrong. 110650276Speter#key_smap_in6 kmpf6 str k! ----K special mapped key 6 input 110750276Speter#key_smap_out6 kmpt6 str K@ ----K special mapped key 6 output 110850276Speter#key_smap_in7 kmpf7 str k# ----K special mapped key 7 input 110950276Speter#key_smap_out7 kmpt7 str K$ ----K special mapped key 7 output 111050276Speter#key_smap_in8 kmpf8 str k% ----K special mapped key 8 input 111150276Speter#key_smap_out8 kmpt8 str K^ ----K special mapped key 8 output 111250276Speter#key_smap_in9 kmpf9 str k& ----K special mapped key 9 input 111350276Speter#key_smap_out9 kmpt9 str K* ----K special mapped key 9 output 111450276Speter# Undocumented capabilities end here 111550276Speter#key_sf1 ksf1 str S1 ----K special function key 1 111650276Speter#key_sf2 ksf2 str S2 ----K special function key 2 111750276Speter#key_sf3 ksf3 str S3 ----K special function key 3 111850276Speter#key_sf4 ksf4 str S4 ----K special function key 4 111950276Speter#key_sf5 ksf5 str S5 ----K special function key 5 112050276Speter#key_sf6 ksf6 str S6 ----K special function key 6 112150276Speter#key_sf7 ksf7 str S7 ----K special function key 7 112250276Speter#key_sf8 ksf8 str S8 ----K special function key 8 112350276Speter#key_sf9 ksf9 str S9 ----K special function key 9 112450276Speter#key_sf10 ksf10 str SA ----K special function key 10 112550276Speter#key_f11 kf11 str k< ----- function key 11 112650276Speter#key_f12 kf12 str k> ----- function key 12 112750276Speter# The key_f13 through key_f64 capabilities aren't described in 112850276Speter# the IBM manual pages, so the cap name strings are guesses. The terminfo 112950276Speter# names are almost certainly right, the termcap ones certainly wrong. 113050276Speter#key_f13 kf13 str k+ ----- function key 13 113150276Speter#key_f14 kf14 str k+ ----- function key 14 113250276Speter#key_f15 kf15 str k+ ----- function key 15 113350276Speter#key_f16 kf16 str k+ ----- function key 16 113450276Speter#key_f17 kf17 str k+ ----- function key 17 113550276Speter#key_f18 kf18 str k+ ----- function key 18 113650276Speter#key_f19 kf19 str k+ ----- function key 19 113750276Speter#key_f20 kf20 str k+ ----- function key 20 113850276Speter#key_f21 kf21 str k+ ----- function key 21 113950276Speter#key_f22 kf22 str k+ ----- function key 22 114050276Speter#key_f23 kf23 str k+ ----- function key 23 114150276Speter#key_f24 kf24 str k+ ----- function key 24 114250276Speter#key_f25 kf25 str k+ ----- function key 25 114350276Speter#key_f26 kf26 str k+ ----- function key 26 114450276Speter#key_f27 kf26 str k+ ----- function key 26 114550276Speter#key_f28 kf28 str k+ ----- function key 28 114650276Speter#key_f29 kf29 str k+ ----- function key 29 114750276Speter#key_f30 kf30 str k+ ----- function key 30 114850276Speter#key_f31 kf31 str k+ ----- function key 31 114950276Speter#key_f32 kf31 str k+ ----- function key 32 115050276Speter#key_f33 kf33 str k+ ----- function key 33 115150276Speter#key_f34 kf34 str k+ ----- function key 34 115250276Speter#key_f35 kf35 str k+ ----- function key 35 115350276Speter#key_f36 kf36 str k+ ----- function key 36 115450276Speter#key_f37 kf37 str k+ ----- function key 37 115550276Speter#key_f38 kf38 str k+ ----- function key 38 115650276Speter#key_f39 kf39 str k+ ----- function key 39 115750276Speter#key_f40 kf40 str k+ ----- function key 40 115850276Speter#key_f41 kf41 str k+ ----- function key 41 115950276Speter#key_f42 kf42 str k+ ----- function key 42 116050276Speter#key_f43 kf43 str k+ ----- function key 43 116150276Speter#key_f44 kf44 str k+ ----- function key 44 116250276Speter#key_f45 kf45 str k+ ----- function key 45 116350276Speter#key_f46 kf46 str k+ ----- function key 46 116450276Speter#key_f47 kf47 str k+ ----- function key 47 116550276Speter#key_f48 kf48 str k+ ----- function key 48 116650276Speter#key_f49 kf49 str k+ ----- function key 49 116750276Speter#key_f50 kf50 str k+ ----- function key 50 116850276Speter#key_f51 kf51 str k+ ----- function key 51 116950276Speter#key_f52 kf52 str k+ ----- function key 52 117050276Speter#key_f53 kf53 str k+ ----- function key 53 117150276Speter#key_f54 kf54 str k+ ----- function key 54 117250276Speter#key_f55 kf55 str k+ ----- function key 55 117350276Speter#key_f56 kf56 str k+ ----- function key 56 117450276Speter#key_f57 kf57 str k+ ----- function key 57 117550276Speter#key_f58 kf58 str k+ ----- function key 58 117650276Speter#key_f59 kf59 str k+ ----- function key 59 117750276Speter#key_f60 kf60 str k+ ----- function key 60 117850276Speter#key_f61 kf61 str k+ ----- function key 61 117950276Speter#key_f62 kf62 str k+ ----- function key 62 118050276Speter#key_f63 kf63 str k+ ----- function key 63 118150276Speter# Undocumented capabilities end here. 118250276Speter#key_action kact str kJ ----K sent by action key 118350276Speter# The IBM docs say these capabilities are for table-drawing, and are 118450276Speter# valid only for aixterm descriptions. 118550276Speter#enter_topline_mode topl str tp ----K start top-line mode 118650276Speter#enter_bottom_mode btml str bm ----K start bottom-line mode 118750276Speter#enter_rvert_mode rvert str rv ----K start right-vertical mode 118850276Speter#enter_lvert_mode lvert str lv ----K start left-vertical mode 118950276Speter# 119050276Speter############################################################################# 119150276Speter# 119250276Speter# ALIAS DECLARATIONS 119350276Speter# 119450276Speter# Here we set up aliases for translating extensions into standard terminfo. 119550276Speter# 119650276Speter#---------------------------------- Termcap aliases ------------------------- 119750276Speter# 119850276Speter# BSD aliases: 119950276Speter# 120050276Speter# This is a common error in many termcap files. We'll get notified during 120150276Speter# translation when this (or any other alias) fires. 120250276Speter# 120350276Spetercapalias sb sr BSD scroll text down 120450276Speter# 120550276Speter# AT&T extensions: 120650276Speter# 120750276Speter# The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of 120850276Speter# nonstandard capabilities. Its signature is the KM capability, used to name 120950276Speter# some sort of keymap file. EE, BO, CI, CV, XS, DS, FL and FE are in this 121050276Speter# set. Comments in the original, and a little cross-checking with other AT&T 121150276Speter# documentation, seem to establish the following mappings: 121250276Speter# 121350276Spetercapalias BO mr AT&T enter_reverse_mode 121450276Spetercapalias CI vi AT&T cursor_invisible 121550276Spetercapalias CV ve AT&T cursor_normal 121650276Spetercapalias DS mh AT&T enter_dim_mode 121750276Speter#capalias EE me AT&T exit_attribute_mode 121850276Spetercapalias FE LF AT&T label_on 121950276Spetercapalias FL LO AT&T label_off 122050276Spetercapalias XS mk AT&T enter_secure_mode 122150276Speter# 122250276Speter# We comment out EE because the conflicting XENIX EE is more common in 122350276Speter# old entries. 122450276Speter# 122550276Speter# XENIX extensions: 122650276Speter# 122750276Speter# These are the ones we know how to translate directly: 122850276Speter# 122950276Spetercapalias EE mh XENIX exit_attribute_mode 123050276Spetercapalias GE ae XENIX exit_alt_charset_mode 123150276Spetercapalias GS as XENIX enter_alt_charset_mode 123250276Spetercapalias CF vi XENIX cursor_invis 123350276Spetercapalias CO ve XENIX cursor_normal 123450276Spetercapalias EN @7 XENIX key_end 123550276Spetercapalias HM kh XENIX key_home 123650276Spetercapalias LD kL XENIX key_dl 123750276Spetercapalias PD kN XENIX key_npage 123850276Spetercapalias PN po XENIX prtr_off 123950276Spetercapalias PS pf XENIX prtr_on 124050276Spetercapalias PU kP XENIX key_ppage 124150276Spetercapalias RT @8 XENIX kent 124250276Spetercapalias UP ku XENIX kcuu1 124350276Spetercapalias G6 IGNORE XENIX double-ACS_ULCORNER 124450276Spetercapalias G7 IGNORE XENIX double-ACS_LLCORNER 124550276Spetercapalias G5 IGNORE XENIX double-ACS_URCORNER 124650276Spetercapalias G8 IGNORE XENIX double-ACS_LRCORNER 124750276Spetercapalias Gr IGNORE XENIX double-ACS_LTEE 124850276Spetercapalias Gr IGNORE XENIX double-ACS_RTEE 124950276Spetercapalias Gu IGNORE XENIX double-ACS_BTEE 125050276Spetercapalias Gd IGNORE XENIX double ACS_TTEE 125150276Spetercapalias Gh IGNORE XENIX double-ACS_HLINE 125250276Spetercapalias Gv IGNORE XENIX double-ACS_VLINE 125350276Spetercapalias Gc IGNORE XENIX double-ACS_PLUS 125450276Spetercapalias GG IGNORE XENIX acs-glitch 125550276Speter# 125650276Speter# IBM extensions: 125750276Speter# 125850276Spetercapalias kq %1 IBM key_help 125950276Speter# 126050276Speter# Iris extensions: 126150276Speter# 126250276Spetercapalias HS mh IRIS enter_dim_mode 126350276Speter# 126450276Speter# Tektronix extensions: 126550276Speter# 126650276Spetercapalias KA k; Tek key_f10 126750276Spetercapalias KB F1 Tek key_f11 126850276Spetercapalias KC F2 Tek key_f12 126950276Spetercapalias KD F3 Tek key_f13 127050276Spetercapalias KE F4 Tek key_f14 127150276Spetercapalias KF F5 Tek key_f15 127250276Spetercapalias BC Sb Tek set_background 127350276Spetercapalias FC Sf Tek set_foreground 127450276Speter# 127550276Speter# There are also the following: 127650276Speter# 127750276Speter# XENIX XENIX variable name name clash with terminfo? 127850276Speter# ----- ------------------- ------------------------- 127950276Speter# CL key_char_left 128050276Speter# CR key_char_right 128150276Speter# CW key_change_window 128250276Speter# HP ?? 128350276Speter# LF key_linefeed label_off 128450276Speter# NU key_next_unlocked_cell 128550276Speter# PL ?? 128650276Speter# PR ?? 128750276Speter# RC key_recalc remove_clock 128850276Speter# RF key_toggle_ref req_for_input 128950276Speter# WL key_word_left 129050276Speter# WR key_word_right 129150276Speter# 129250276Speter# If you know what any of the question-marked ones mean, please tell us. 129350276Speter# 129450276Speter#--------------------------------- Terminfo aliases ------------------------ 129550276Speter# 129650276Speter# IBM extensions: 129750276Speter# 129850276Speterinfoalias font0 s0ds IBM set0_des_seq 129950276Speterinfoalias font1 s1ds IBM set1_des_seq 130050276Speterinfoalias font2 s2ds IBM set2_des_seq 130150276Speterinfoalias font3 s3ds IBM set3_des_seq 130250276Speterinfoalias kbtab kcbt IBM key_backtab 130350276Speterinfoalias ksel kslt IBM key_select 130450276Speter# 130550276Speter# Some others are identical to SVr4/XPG4 capabilities, in particular: 130650276Speter# kcmd, kend, khlp, and kf11...kf63. 130750276Speter# 130850276Speter############################################################################# 130950276Speter# 131050276Speter# The following sets edit modes for GNU EMACS 131150276Speter# Local Variables: 131250276Speter# case-fold-search:nil 131350276Speter# truncate-lines:t 131450276Speter# End: 1315