1############################################################################## 2# Copyright (c) 2001-2006,2010 Free Software Foundation, Inc. # 3# # 4# Permission is hereby granted, free of charge, to any person obtaining a # 5# copy of this software and associated documentation files (the "Software"), # 6# to deal in the Software without restriction, including without limitation # 7# the rights to use, copy, modify, merge, publish, distribute, distribute # 8# with modifications, sublicense, and/or sell copies of the Software, and to # 9# permit persons to whom the Software is furnished to do so, subject to the # 10# following conditions: # 11# # 12# The above copyright notice and this permission notice shall be included in # 13# all copies or substantial portions of the Software. # 14# # 15# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # 16# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # 17# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # 18# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # 19# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # 20# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # 21# DEALINGS IN THE SOFTWARE. # 22# # 23# Except as contained in this notice, the name(s) of the above copyright # 24# holders shall not be used in advertising or otherwise to promote the sale, # 25# use or other dealings in this Software without prior written # 26# authorization. # 27############################################################################## 28# 29# Author: Thomas Dickey 30# 31# $Id: Caps.uwin,v 1.5 2010/12/04 18:49:20 tom Exp $ 32# 33# This is an adaptation of ncurses' termcap/terminfo capability table, which 34# is designed to align with U/Win's terminfo. 35# 36# This table is used to generate initializers for tables that drive tic, 37# infocmp, and the library compilation code used to support the termcap 38# compatibility hack. It is also used to generate the tabular portion of the 39# terminfo(5) man page; lines beginning with `#%' are passed through to become 40# the terminfo table. 41# 42# This file has three major sections; a standard-capabilities table, two 43# extension-capability tables, and a section of aliases declarations. 44# The first two have the same format, as follows: 45# 46# FILE FORMAT 47# 48# Column 1: terminfo variable name 49# Column 2: terminfo capability name 50# Column 3: capability type (boolean, numeric, or string) 51# Column 4: termcap capability name 52# Column 5: KEY_xxx name, if any, `-' otherwise 53# Column 6: value for KEY_xxx name, if any, `-' otherwise 54# Column 7: Lead with `Y' if capability should be emitted in termcap 55# translations, `-' otherwise 56# Column 8: capability description 57# 58# The codes following [Y-] in column 7 describe the versions of termcap which 59# use the given capability. This information is not used by the curses library 60# proper; rather, it's there to help the terminfo maintainer avoid emitting 61# termcap entry translations that are more than 1023 bytes long (and tank a 62# lot of old termcap-using programs). The codes read as follows: 63# B = mentioned in the BSD man page for 4.4BSD curses 64# C = used by the 4.4BSD curses library 65# G = mentioned in the documentation for GNU termcap 66# E = used by GNU Emacs 67# K = remove this terminfo capability when translating to standard format 68# The important codes are C and E. A cap with C or E should be preserved in 69# translation if possible. The problem is that preserving all such caps may 70# lead to some termcap translations being too long. The termcap maintainer 71# has a bit of a juggling act to do...potential problem cases are marked with 72# an asterisk (*). 73# 74# The aliases section has the following format: 75# 76# Column 1: either `capalias' or `infoalias' 77# Column 2: name to be aliased 78# Column 3: what name it should translate to. The name IGNORE means it 79# should be discarded with a warning message. 80# Column 4: name of the extension set (used for compiler warning messages) 81# Column 5: capability description (usually an associated terminfo variable) 82# 83# HANDLING TERMCAP AND TERMINFO EXTENSIONS 84# 85# There are basically five different ways to handle termcap and terminfo 86# extensions: 87# 88# 1. Don't list the capname here, or list it but comment it out (the latter 89# is preferable; someone might want to handle it in the future). If you do 90# this, the capability will be treated as unknown and raise a warning from 91# the compiler. 92# 93# 2. Alias it. This is appropriate if the capability has the same meaning 94# as an already-supported one. The compiler will handle aliasing, emitting 95# an appropriate informational message whenever an alias fires. 96# 97# 3. List it in the standard table. You almost certainly do *not* want 98# to do this -- the capabilities in that one, and their order, have been 99# carefully chosen to be SVr4-binary-compatible when they're written out 100# as a terminfo object, and breaking this would be bad. It's up the ncurses 101# library what to do with the terminfo data after it's read in. 102# 103# 4. List it in the aliases table with an IGNORE target field. If you 104# do this, the capability will be ignored on input (though the user will 105# get a warning message about it). 106# 107# 5. List it in the extensions table. If you do this, the compiler will 108# silently accept the capability, but the curses library proper will never 109# see it (because it won't be written out as part of the terminfo object 110# format). It's up to you what you have the compiler do with it. 111# 112# There are two opposite reasons to choose option 5. One is when you want 113# to eat the capability silently and discard it when doing translations 114# to terminfo with tic -I. Some very old obsolete BSD caps like :kn: are 115# in this class. Nothing will ever use them again. 116# 117# More usually, you want the compiler to try to deduce something from the 118# capability value that it can use to translate it into your output format. 119# You'll need to write custom code, probably in postprocess_termcap() or 120# postprocess_terminfo(), to handle the translation. 121# 122# CONTROLLING ENTRY LENGTH 123# 124# Notes on specific elisions made to fit translations within 1023 bytes: 125# 126# Machines with IBM PC-like keyboards want to be able to define the following 127# keys: key_npage, key_ppage, key_home, key_ll (which is used for in termcap- 128# only environments for End or Home-Down), key_dc, and key_ic. This is also 129# the set of keys the `joe' editor will be upset if it can't see. So don't 130# trim those out of the set to be translated to termcap, or various users of 131# the termcap file will become irate. 132# 133# It might look tempting to leave those long init strings out of translations. 134# We can't do it (yet); 4.4BSD tput and tset use them. 135# 136# We retain the sgr capability in translation in spite of the fact that neither 137# 4.4BSD nor GNU Emacs uses it, because (a) some entry naming distinctions are 138# hard to understand without it, and (b) the entries in which it is long tend 139# to be older types that don't use up a lot of string space on function keys. 140# The tic(1) translation code will complain and elide it if it makes a critical 141# difference (there is special code in tic to recognize this situation). 142# 143# Yes, BSD tset(1) uses hpa. We elide hpa/vpa anyway because the motion 144# optimizer in BSD curses didn't use them. This omission seems to be the 145# single most effective one, it shortened the resolved length of all thirteen 146# problem entries in the 9.9.0 version of the terminfo master below critical. 147# 148# It would be nice to keep f11 and f12 for Emacs use, but a couple of termcap 149# translations go back over critical if we do this. As 4.4BSD curses fades 150# into history and GNU termcap's application base shrinks towards being GNU 151# Emacs only, we'll probably elide out some BSD-only capabilities in order 152# to buy space for non-essentials Emacs is still using. Capabilities high 153# on that hit list: rc, sc, uc. 154# 155############################################################################# 156# 157# STANDARD CAPABILITIES 158# 159#%The following is a complete table of the capabilities included in a 160#%terminfo description block and available to terminfo-using code. In each 161#%line of the table, 162#% 163#%The \fBvariable\fR is the name by which the programmer (at the terminfo level) 164#%accesses the capability. 165#% 166#%The \fBcapname\fR is the short name used in the text of the database, 167#%and is used by a person updating the database. 168#%Whenever possible, capnames are chosen to be the same as or similar to 169#%the ANSI X3.64-1979 standard (now superseded by ECMA-48, which uses 170#%identical or very similar names). Semantics are also intended to match 171#%those of the specification. 172#% 173#%The termcap code is the old 174#%.B termcap 175#%capability name (some capabilities are new, and have names which termcap 176#%did not originate). 177#%.P 178#%Capability names have no hard length limit, but an informal limit of 5 179#%characters has been adopted to keep them short and to allow the tabs in 180#%the source file 181#%.B Caps 182#%to line up nicely. 183#% 184#%Finally, the description field attempts to convey the semantics of the 185#%capability. You may find some codes in the description field: 186#%.TP 187#%(P) 188#%indicates that padding may be specified 189#%.TP 190#%#[1-9] 191#%in the description field indicates that the string is passed through tparm with 192#%parms as given (#\fIi\fP). 193#%.TP 194#%(P*) 195#%indicates that padding may vary in proportion to the number of 196#%lines affected 197#%.TP 198#%(#\d\fIi\fP\u) 199#%indicates the \fIi\fP\uth\d parameter. 200#% 201#%.PP 202#% These are the boolean capabilities: 203#% 204#%.na 205#%.TS H 206#%center expand; 207#%c l l c 208#%c l l c 209#%lw25 lw6 lw2 lw20. 210#%\fBVariable Cap- TCap Description\fR 211#%\fBBooleans name Code\fR 212auto_left_margin bw bool bw - - YB-G- cub1 wraps from column 0 to last column 213auto_right_margin am bool am - - YBCGE terminal has automatic margins 214no_esc_ctlc xsb bool xb - - YBCG- beehive (f1=escape, f2=ctrl C) 215ceol_standout_glitch xhp bool xs - - YBCGE standout not erased by overwriting (hp) 216eat_newline_glitch xenl bool xn - - YBCGE newline ignored after 80 cols (concept) 217erase_overstrike eo bool eo - - YBCG- can erase overstrikes with a blank 218generic_type gn bool gn - - YB-G- generic line type 219hard_copy hc bool hc - - YBCG- hardcopy terminal 220has_meta_key km bool km - - YB-GE Has a meta key (i.e., sets 8th-bit) 221has_status_line hs bool hs - - YB-G- has extra status line 222insert_null_glitch in bool in - - YBCGE insert mode distinguishes nulls 223memory_above da bool da - - YBCG- display may be retained above the screen 224memory_below db bool db - - YB-GE display may be retained below the screen 225move_insert_mode mir bool mi - - YBCGE safe to move while in insert mode 226move_standout_mode msgr bool ms - - YBCGE safe to move while in standout mode 227over_strike os bool os - - YBCG- terminal can overstrike 228status_line_esc_ok eslok bool es - - YB-G- escape can be used on the status line 229dest_tabs_magic_smso xt bool xt - - YBCGE tabs destructive, magic so char (t1061) 230tilde_glitch hz bool hz - - YB-GE cannot print ~'s (hazeltine) 231transparent_underline ul bool ul - - YBCGE underline character overstrikes 232xon_xoff xon bool xo - - YB--- terminal uses xon/xoff handshaking 233needs_xon_xoff nxon bool nx - - ----- padding will not work, xon/xoff required 234prtr_silent mc5i bool 5i - - ----- printer will not echo on screen 235hard_cursor chts bool HC - - ----- cursor is hard to see 236non_rev_rmcup nrrmc bool NR - - ----- smcup does not reverse rmcup 237no_pad_char npc bool NP - - ----- pad character does not exist 238non_dest_scroll_region ndscr bool ND - - ----- scrolling region is non-destructive 239back_color_erase bce bool ut - - ----- screen erased with background color 240can_change ccc bool cc - - ----- terminal can re-define existing colors 241hue_lightness_saturation hls bool hl - - ----- terminal uses only HLS color notation (Tektronix) 242#%.TE 243#%.ad 244#% 245#%These are the numeric capabilities: 246#% 247#%.na 248#%.TS H 249#%center expand; 250#%c l l c 251#%c l l c 252#%lw25 lw6 lw2 lw20. 253#%\fBVariable Cap- TCap Description\fR 254#%\fBNumeric name Code\fR 255columns cols num co - - YBCGE number of columns in a line 256init_tabs it num it - - YB-G- tabs initially every # spaces 257lines lines num li - - YBCGE number of lines on screen or page 258lines_of_memory lm num lm - - YB-G- lines of memory if > line. 0 means varies 259magic_cookie_glitch xmc num sg - - YBCGE number of blank characters left by smso or rmso 260padding_baud_rate pb num pb - - YB-GE lowest baud rate where padding needed 261virtual_terminal vt num vt - - YB--- virtual terminal number (CB/unix) 262width_status_line wsl num ws - - YB-G- number of columns in status line 263num_labels nlab num Nl - - ----- number of labels on screen 264label_height lh num lh - - ----- rows in each label 265label_width lw num lw - - ----- columns in each label 266buttons btns num BT - - ----- number of buttons on mouse 267#max_attributes ma num ma - - YBC-- maximum combined attributes terminal can handle 268#maximum_windows wnum num MW - - ----- maximum number of defineable windows 269# These came in with SVr4's color support 270max_colors colors num Co - - ----- maximum number of colors on screen 271max_pairs pairs num pa - - ----- maximum number of color-pairs on the screen 272no_color_video ncv num NC - - ----- video attributes that cannot be used with colors 273#%.TE 274#%.ad 275#% 276#%The following numeric capabilities are present in the SVr4.0 term structure, 277#%but are not yet documented in the man page. They came in with SVr4's 278#%printer support. 279#% 280#%.na 281#% 282#%These are the string capabilities: 283#% 284#%.na 285#%.TS H 286#%center expand; 287#%c l l c 288#%c l l c 289#%lw25 lw6 lw2 lw20. 290#%\fBVariable Cap- TCap Description\fR 291#%\fBString name Code\fR 292back_tab cbt str bt - - YBCGE back tab (P) 293bell bel str bl - - YB-GE audible signal (bell) (P) 294carriage_return cr str cr - - YBCGE carriage return (P*) (P*) 295change_scroll_region csr str cs - - YBCGE change region to line #1 to line #2 (P) 296clear_all_tabs tbc str ct - - YB-G- clear all tab stops (P) 297clear_screen clear str cl - - YBCGE clear screen and home cursor (P*) 298clr_eol el str ce - - YBCGE clear to end of line (P) 299clr_eos ed str cd - - YBCGE clear to end of screen (P*) 300column_address hpa str ch - - -B-GE* horizontal position #1, absolute (P) 301command_character cmdch str CC - - YB-G- terminal settable cmd character in prototype !? 302cursor_address cup str cm - - YBCGE move to row #1 columns #2 303cursor_down cud1 str do - - YBCGE down one line 304cursor_home home str ho - - YBCGE home cursor (if no cup) 305cursor_invisible civis str vi - - YB-G- make cursor invisible 306cursor_left cub1 str le - - YBCGE move left one space 307cursor_mem_address mrcup str CM - - YB-G- memory relative cursor addressing, move to row #1 columns #2 308cursor_normal cnorm str ve - - YBCGE make cursor appear normal (undo civis/cvvis) 309cursor_right cuf1 str nd - - YBCGE non-destructive space (move right one space) 310cursor_to_ll ll str ll - - YBCGE last line, first column (if no cup) 311cursor_up cuu1 str up - - YBCGE up one line 312cursor_visible cvvis str vs - - YBCGE make cursor very visible 313delete_character dch1 str dc - - YBCGE delete character (P*) 314delete_line dl1 str dl - - YBCGE delete line (P*) 315dis_status_line dsl str ds - - YB-G- disable status line 316down_half_line hd str hd - - YB-G- half a line down 317enter_alt_charset_mode smacs str as - - YB-G- start alternate character set (P) 318enter_blink_mode blink str mb - - YB-G- turn on blinking 319enter_bold_mode bold str md - - YB-G- turn on bold (extra bright) mode 320enter_ca_mode smcup str ti - - YBCGE string to start programs using cup 321enter_delete_mode smdc str dm - - YBCGE enter delete mode 322enter_dim_mode dim str mh - - YB-G- turn on half-bright mode 323enter_insert_mode smir str im - - YBCGE enter insert mode 324enter_secure_mode invis str mk - - -B-G-* turn on blank mode (characters invisible) 325enter_protected_mode prot str mp - - -B-G-* turn on protected mode 326enter_reverse_mode rev str mr - - YB-G- turn on reverse video mode 327enter_standout_mode smso str so - - YBCGE begin standout mode 328enter_underline_mode smul str us - - YBCGE begin underline mode 329erase_chars ech str ec - - YB-G- erase #1 characters (P) 330exit_alt_charset_mode rmacs str ae - - YB-G- end alternate character set (P) 331exit_attribute_mode sgr0 str me - - YB-GE turn off all attributes 332exit_ca_mode rmcup str te - - YBCGE strings to end programs using cup 333exit_delete_mode rmdc str ed - - YBCGE end delete mode 334exit_insert_mode rmir str ei - - YBCGE exit insert mode 335exit_standout_mode rmso str se - - YBCGE exit standout mode 336exit_underline_mode rmul str ue - - YBCGE exit underline mode 337flash_screen flash str vb - - YBCGE visible bell (may not move cursor) 338form_feed ff str ff - - YB-G- hardcopy terminal page eject (P*) 339from_status_line fsl str fs - - YB-G- return from status line 340init_1string is1 str i1 - - YB-G- initialization string 341init_2string is2 str is - - YB-G- initialization string 342init_3string is3 str i3 - - YB-G- initialization string 343init_file if str if - - YB-G- name of initialization file 344insert_character ich1 str ic - - YBCGE insert character (P) 345insert_line il1 str al - - YBCGE insert line (P*) 346insert_padding ip str ip - - YBCGE insert padding after inserted character 347key_backspace kbs str kb KEY_BACKSPACE 0407 YB-G- backspace key 348key_catab ktbc str ka KEY_CATAB 0526 -B-G-* clear-all-tabs key 349key_clear kclr str kC KEY_CLEAR 0515 -B-G-* clear-screen or erase key 350key_ctab kctab str kt KEY_CTAB 0525 -B-G-* clear-tab key 351key_dc kdch1 str kD KEY_DC 0512 YB-G- delete-character key 352key_dl kdl1 str kL KEY_DL 0510 -B-G-* delete-line key 353key_down kcud1 str kd KEY_DOWN 0402 YBCGE down-arrow key 354key_eic krmir str kM KEY_EIC 0514 -B-G-* sent by rmir or smir in insert mode 355key_eol kel str kE KEY_EOL 0517 -B-G-* clear-to-end-of-line key 356key_eos ked str kS KEY_EOS 0516 -B-G-* clear-to-end-of-screen key 357key_f0 kf0 str k0 KEY_F(0) 0410 YBCGE F0 function key 358key_f1 kf1 str k1 KEY_F(1) - YBCGE F1 function key 359key_f10 kf10 str k; KEY_F(10) - ----E F10 function key 360key_f2 kf2 str k2 KEY_F(2) - YBCGE F2 function key 361key_f3 kf3 str k3 KEY_F(3) - YBCGE F3 function key 362key_f4 kf4 str k4 KEY_F(4) - YBCGE F4 function key 363key_f5 kf5 str k5 KEY_F(5) - YBCGE F5 function key 364key_f6 kf6 str k6 KEY_F(6) - YBCGE F6 function key 365key_f7 kf7 str k7 KEY_F(7) - YBCGE F7 function key 366key_f8 kf8 str k8 KEY_F(8) - YBCGE F8 function key 367key_f9 kf9 str k9 KEY_F(9) - YBCGE F9 function key 368key_home khome str kh KEY_HOME 0406 YBCGE home key 369key_ic kich1 str kI KEY_IC 0513 YB-GE insert-character key 370key_il kil1 str kA KEY_IL 0511 -B-G-* insert-line key 371key_left kcub1 str kl KEY_LEFT 0404 YBCGE left-arrow key 372key_ll kll str kH KEY_LL 0533 YB-G- lower-left key (home down) 373key_npage knp str kN KEY_NPAGE 0522 YB-GE next-page key 374key_ppage kpp str kP KEY_PPAGE 0523 YB-GE previous-page key 375key_right kcuf1 str kr KEY_RIGHT 0405 YBCGE right-arrow key 376key_sf kind str kF KEY_SF 0520 -B-G-* scroll-forward key 377key_sr kri str kR KEY_SR 0521 -B-G-* scroll-backward key 378key_stab khts str kT KEY_STAB 0524 -B-G-* set-tab key 379key_up kcuu1 str ku KEY_UP 0403 YBCGE up-arrow key 380keypad_local rmkx str ke - - YBCGE leave 'keyboard_transmit' mode 381keypad_xmit smkx str ks - - YBCGE enter 'keyboard_transmit' mode 382lab_f0 lf0 str l0 - - -B-G-* label on function key f0 if not f0 383lab_f1 lf1 str l1 - - -B-G-* label on function key f1 if not f1 384lab_f10 lf10 str la - - ----- label on function key f10 if not f10 385lab_f2 lf2 str l2 - - -B-G-* label on function key f2 if not f2 386lab_f3 lf3 str l3 - - -B-G-* label on function key f3 if not f3 387lab_f4 lf4 str l4 - - -B-G-* label on function key f4 if not f4 388lab_f5 lf5 str l5 - - -B-G-* label on function key f5 if not f5 389lab_f6 lf6 str l6 - - -B-G-* label on function key f6 if not f6 390lab_f7 lf7 str l7 - - -B-G-* label on function key f7 if not f7 391lab_f8 lf8 str l8 - - -B-G-* label on function key f8 if not f8 392lab_f9 lf9 str l9 - - -B-G-* label on function key f9 if not f9 393meta_off rmm str mo - - YB-G-* turn off meta mode 394meta_on smm str mm - - YB-G-* turn on meta mode (8th-bit on) 395newline nel str nw - - YB-G-* newline (behave like cr followed by lf) 396pad_char pad str pc - - YBCGE padding char (instead of null) 397parm_dch dch str DC - - YB-GE delete #1 characters (P*) 398parm_delete_line dl str DL - - YBCGE delete #1 lines (P*) 399parm_down_cursor cud str DO - - YBCGE down #1 lines (P*) 400parm_ich ich str IC - - YB-GE insert #1 characters (P*) 401parm_index indn str SF - - YBCG- scroll forward #1 lines (P) 402parm_insert_line il str AL - - YBCGE insert #1 lines (P*) 403parm_left_cursor cub str LE - - YBCGE move #1 characters to the left (P) 404parm_right_cursor cuf str RI - - YBCGE move #1 characters to the right (P*) 405parm_rindex rin str SR - - YBCG- scroll back #1 lines (P) 406parm_up_cursor cuu str UP - - YBCGE up #1 lines (P*) 407pkey_key pfkey str pk - - -B--- program function key #1 to type string #2 408pkey_local pfloc str pl - - -B--- program function key #1 to execute string #2 409pkey_xmit pfx str px - - -B--- program function key #1 to transmit string #2 410print_screen mc0 str ps - - -B-G-* print contents of screen 411prtr_off mc4 str pf - - -B-G-* turn off printer 412prtr_on mc5 str po - - -B-G-* turn on printer 413repeat_char rep str rp - - YB-GE repeat char #1 #2 times (P*) 414reset_1string rs1 str r1 - - -B--- reset string 415reset_2string rs2 str r2 - - -B--- reset string 416reset_3string rs3 str r3 - - -B--- reset string 417reset_file rf str rf - - -B--- name of reset file 418restore_cursor rc str rc - - YBCG- restore cursor to position of last save_cursor 419row_address vpa str cv - - -B-GE* vertical position #1 absolute (P) 420save_cursor sc str sc - - YBCG- save current cursor position (P) 421scroll_forward ind str sf - - YBCGE scroll text up (P) 422scroll_reverse ri str sr - - YBCGE scroll text down (P) 423set_attributes sgr str sa - - YB-G- define video attributes #1-#9 (PG9) 424set_tab hts str st - - YB-G- set a tab in every row, current columns 425set_window wind str wi - - -B-GE current window is lines #1-#2 cols #3-#4 426tab ht str ta - - YBCGE tab to next 8-space hardware tab stop 427to_status_line tsl str ts - - YB-G- move to status line, column #1 428underline_char uc str uc - - YBCG- underline char and move past it 429up_half_line hu str hu - - YB-G- half a line up 430init_prog iprog str iP - - -B--- path name of program for initialization 431key_a1 ka1 str K1 KEY_A1 0534 YB-GE upper left of keypad 432key_a3 ka3 str K3 KEY_A3 0535 YB-GE upper right of keypad 433key_b2 kb2 str K2 KEY_B2 0536 YB-GE center of keypad 434key_c1 kc1 str K4 KEY_C1 0537 YB-GE lower left of keypad 435key_c3 kc3 str K5 KEY_C3 0540 YB-GE lower right of keypad 436prtr_non mc5p str pO - - -B-G-* turn on printer for #1 bytes 437# 438# SVr1 capabilities stop here. IBM's version of terminfo is the same as 439# SVr4 up to this point, but has a different set afterwards. 440# 441char_padding rmp str rP - - ----- like ip but when in insert mode 442acs_chars acsc str ac - - ----- graphics charset pairs, based on vt100 443plab_norm pln str pn - - ----- program label #1 to show string #2 444key_btab kcbt str kB KEY_BTAB 0541 ----- back-tab key 445enter_xon_mode smxon str SX - - ----- turn on xon/xoff handshaking 446exit_xon_mode rmxon str RX - - ----- turn off xon/xoff handshaking 447enter_am_mode smam str SA - - ----- turn on automatic margins 448exit_am_mode rmam str RA - - ----- turn off automatic margins 449xon_character xonc str XN - - ----- XON character 450xoff_character xoffc str XF - - ----- XOFF character 451ena_acs enacs str eA - - ----- enable alternate char set 452label_on smln str LO - - ----- turn on soft labels 453label_off rmln str LF - - ----- turn off soft labels 454key_beg kbeg str @1 KEY_BEG 0542 ----- begin key 455key_cancel kcan str @2 KEY_CANCEL 0543 ----- cancel key 456key_close kclo str @3 KEY_CLOSE 0544 ----- close key 457key_command kcmd str @4 KEY_COMMAND 0545 ----- command key 458key_copy kcpy str @5 KEY_COPY 0546 ----- copy key 459key_create kcrt str @6 KEY_CREATE 0547 ----- create key 460key_end kend str @7 KEY_END 0550 ----- end key 461key_enter kent str @8 KEY_ENTER 0527 ----- enter/send key 462key_exit kext str @9 KEY_EXIT 0551 ----- exit key 463key_find kfnd str @0 KEY_FIND 0552 ----- find key 464key_help khlp str %1 KEY_HELP 0553 ----- help key 465key_mark kmrk str %2 KEY_MARK 0554 ----- mark key 466key_message kmsg str %3 KEY_MESSAGE 0555 ----- message key 467key_move kmov str %4 KEY_MOVE 0556 ----- move key 468key_next knxt str %5 KEY_NEXT 0557 ----- next key 469key_open kopn str %6 KEY_OPEN 0560 ----- open key 470key_options kopt str %7 KEY_OPTIONS 0561 ----- options key 471key_previous kprv str %8 KEY_PREVIOUS 0562 ----- previous key 472key_print kprt str %9 KEY_PRINT 0532 ----- print key 473key_redo krdo str %0 KEY_REDO 0563 ----- redo key 474key_reference kref str &1 KEY_REFERENCE 0564 ----- reference key 475key_refresh krfr str &2 KEY_REFRESH 0565 ----- refresh key 476key_replace krpl str &3 KEY_REPLACE 0566 ----- replace key 477key_restart krst str &4 KEY_RESTART 0567 ----- restart key 478key_resume kres str &5 KEY_RESUME 0570 ----- resume key 479key_save ksav str &6 KEY_SAVE 0571 ----- save key 480key_suspend kspd str &7 KEY_SUSPEND 0627 ----- suspend key 481key_undo kund str &8 KEY_UNDO 0630 ----- undo key 482key_sbeg kBEG str &9 KEY_SBEG 0572 ----- shifted begin key 483key_scancel kCAN str &0 KEY_SCANCEL 0573 ----- shifted cancel key 484key_scommand kCMD str *1 KEY_SCOMMAND 0574 ----- shifted command key 485key_scopy kCPY str *2 KEY_SCOPY 0575 ----- shifted copy key 486key_screate kCRT str *3 KEY_SCREATE 0576 ----- shifted create key 487key_sdc kDC str *4 KEY_SDC 0577 ----- shifted delete-character key 488key_sdl kDL str *5 KEY_SDL 0600 ----- shifted delete-line key 489key_select kslt str *6 KEY_SELECT 0601 ----- select key 490key_send kEND str *7 KEY_SEND 0602 ----- shifted end key 491key_seol kEOL str *8 KEY_SEOL 0603 ----- shifted clear-to-end-of-line key 492key_sexit kEXT str *9 KEY_SEXIT 0604 ----- shifted exit key 493key_sfind kFND str *0 KEY_SFIND 0605 ----- shifted find key 494key_shelp kHLP str #1 KEY_SHELP 0606 ----- shifted help key 495key_shome kHOM str #2 KEY_SHOME 0607 ----- shifted home key 496key_sic kIC str #3 KEY_SIC 0610 ----- shifted insert-character key 497key_sleft kLFT str #4 KEY_SLEFT 0611 ----- shifted left-arrow key 498key_smessage kMSG str %a KEY_SMESSAGE 0612 ----- shifted message key 499key_smove kMOV str %b KEY_SMOVE 0613 ----- shifted move key 500key_snext kNXT str %c KEY_SNEXT 0614 ----- shifted next key 501key_soptions kOPT str %d KEY_SOPTIONS 0615 ----- shifted options key 502key_sprevious kPRV str %e KEY_SPREVIOUS 0616 ----- shifted previous key 503key_sprint kPRT str %f KEY_SPRINT 0617 ----- shifted print key 504key_sredo kRDO str %g KEY_SREDO 0620 ----- shifted redo key 505key_sreplace kRPL str %h KEY_SREPLACE 0621 ----- shifted replace key 506key_sright kRIT str %i KEY_SRIGHT 0622 ----- shifted right-arrow key 507key_srsume kRES str %j KEY_SRSUME 0623 ----- shifted resume key 508key_ssave kSAV str !1 KEY_SSAVE 0624 ----- shifted save key 509key_ssuspend kSPD str !2 KEY_SSUSPEND 0625 ----- shifted suspend key 510key_sundo kUND str !3 KEY_SUNDO 0626 ----- shifted undo key 511req_for_input rfi str RF - - ----- send next input char (for ptys) 512key_f11 kf11 str F1 KEY_F(11) - ----E F11 function key 513key_f12 kf12 str F2 KEY_F(12) - ----E F12 function key 514key_f13 kf13 str F3 KEY_F(13) - ----E F13 function key 515key_f14 kf14 str F4 KEY_F(14) - ----E F14 function key 516key_f15 kf15 str F5 KEY_F(15) - ----E F15 function key 517key_f16 kf16 str F6 KEY_F(16) - ----E F16 function key 518key_f17 kf17 str F7 KEY_F(17) - ----E F17 function key 519key_f18 kf18 str F8 KEY_F(18) - ----E F18 function key 520key_f19 kf19 str F9 KEY_F(19) - ----E F19 function key 521key_f20 kf20 str FA KEY_F(20) - ----E F20 function key 522key_f21 kf21 str FB KEY_F(21) - ----E F21 function key 523key_f22 kf22 str FC KEY_F(22) - ----E F22 function key 524key_f23 kf23 str FD KEY_F(23) - ----E F23 function key 525key_f24 kf24 str FE KEY_F(24) - ----E F24 function key 526key_f25 kf25 str FF KEY_F(25) - ----E F25 function key 527key_f26 kf26 str FG KEY_F(26) - ----E F26 function key 528key_f27 kf27 str FH KEY_F(27) - ----E F27 function key 529key_f28 kf28 str FI KEY_F(28) - ----E F28 function key 530key_f29 kf29 str FJ KEY_F(29) - ----E F29 function key 531key_f30 kf30 str FK KEY_F(30) - ----E F30 function key 532key_f31 kf31 str FL KEY_F(31) - ----E F31 function key 533key_f32 kf32 str FM KEY_F(32) - ----E F32 function key 534key_f33 kf33 str FN KEY_F(33) - ----E F33 function key 535key_f34 kf34 str FO KEY_F(34) - ----E F34 function key 536key_f35 kf35 str FP KEY_F(35) - ----E F35 function key 537key_f36 kf36 str FQ KEY_F(36) - ----E F36 function key 538key_f37 kf37 str FR KEY_F(37) - ----E F37 function key 539key_f38 kf38 str FS KEY_F(38) - ----E F38 function key 540key_f39 kf39 str FT KEY_F(39) - ----E F39 function key 541key_f40 kf40 str FU KEY_F(40) - ----E F40 function key 542key_f41 kf41 str FV KEY_F(41) - ----E F41 function key 543key_f42 kf42 str FW KEY_F(42) - ----E F42 function key 544key_f43 kf43 str FX KEY_F(43) - ----E F43 function key 545key_f44 kf44 str FY KEY_F(44) - ----E F44 function key 546key_f45 kf45 str FZ KEY_F(45) - ----E F45 function key 547key_f46 kf46 str Fa KEY_F(46) - ----E F46 function key 548key_f47 kf47 str Fb KEY_F(47) - ----E F47 function key 549key_f48 kf48 str Fc KEY_F(48) - ----E F48 function key 550key_f49 kf49 str Fd KEY_F(49) - ----E F49 function key 551key_f50 kf50 str Fe KEY_F(50) - ----E F50 function key 552key_f51 kf51 str Ff KEY_F(51) - ----E F51 function key 553key_f52 kf52 str Fg KEY_F(52) - ----E F52 function key 554key_f53 kf53 str Fh KEY_F(53) - ----E F53 function key 555key_f54 kf54 str Fi KEY_F(54) - ----E F54 function key 556key_f55 kf55 str Fj KEY_F(55) - ----E F55 function key 557key_f56 kf56 str Fk KEY_F(56) - ----E F56 function key 558key_f57 kf57 str Fl KEY_F(57) - ----E F57 function key 559key_f58 kf58 str Fm KEY_F(58) - ----E F58 function key 560key_f59 kf59 str Fn KEY_F(59) - ----E F59 function key 561key_f60 kf60 str Fo KEY_F(60) - ----E F60 function key 562key_f61 kf61 str Fp KEY_F(61) - ----E F61 function key 563key_f62 kf62 str Fq KEY_F(62) - ----E F62 function key 564key_f63 kf63 str Fr KEY_F(63) - ----E F63 function key 565clr_bol el1 str cb - - ----- Clear to beginning of line 566clear_margins mgc str MC - - ----- clear right and left soft margins 567set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap). 568set_right_margin smgr str MR - - ----- set right soft margin at current column 569device_type devt str dv - - ----- Indicate language/codeset support 570code_set_init csin str ci - - ----- Init sequence for multiple codesets 571set0_des_seq s0ds str s0 - - ----- Shift to codeset 0 (EUC set 0, ASCII) 572set1_des_seq s1ds str s1 - - ----- Shift to codeset 1 573set2_des_seq s2ds str s2 - - ----- Shift to codeset 2 574set3_des_seq s3ds str s3 - - ----- Shift to codeset 3 575key_mouse kmous str Km KEY_MOUSE 0631 ----- Mouse event has occurred 576mouse_info minfo str Mi - - ----- Mouse status information 577req_mouse_pos reqmp str RQ - - ----- Request mouse position 578get_mouse getm str Gm - - ----- Curses should get button events, parameter #1 not documented. 579release_mouse relm str Rm - - ----- Curses should release the mouse */ 580color_names colornm str Yw - - ----- Give name for color #1 581initialize_color initc str Ic - - ----- initialize color #1 to (#2,#3,#4) 582initialize_pair initp str Ip - - ----- Initialize color pair #1 to fg=(#2,#3,#4), bg=(#5,#6,#7) 583orig_colors oc str oc - - ----- Set all color pairs to the original ones 584orig_pair op str op - - ----- Set default pair to its original value 585set_a_background setab str AB - - ----- Set background color to #1, using ANSI escape 586set_a_foreground setaf str AF - - ----- Set foreground color to #1, using ANSI escape 587set_background setb str Sb - - ----- Set background color #1 588set_color_pair scp str sp - - ----- Set current color pair to #1 589set_foreground setf str Sf - - ----- Set foreground color #1 590#%.TE 591#%.ad 592#% 593# The magic token below tells the tic compiler-generator code that all the caps 594# past it should be ignored (not written out) when dumping terminfo objects. It 595# also tells the man page table generator not to pass through following lines 596# This means we can have obsolete capabilities and pseudo-capabilities that are 597# recognized for termcap or terminfo compilation, but not output. 598# 599# %%-STOP-HERE-%% 600# 601# Don't move this casually! In fact, don't move it at all unless you're 602# either doing it to add System V or XPG4 extensions, or have decided you 603# don't care about SVr4 binary compatibility. 604# 605############################################################################# 606# 607# TERMCAP EXTENSION CAPABILITIES 608# 609# The capabilities below are either obsolete or extensions on certain systems. 610# They are not used by SVR4 terminfo. Some are used by captoinfo to translate 611# termcap sources; the rest are listed for completeness, and in case somebody 612# cares about them enough to hack in code that will translate them into 613# terminfo capabilities. 614# 615# The first part of the list is from Ross Ridge's `mytinfo' package 616# (comp.sources.unix, volume 26); the variable names and terminfo names (as 617# well as the termcap codes) match his list. 618# 619# This group of codes is not marked obsolete in 4.4BSD, but have no direct 620# terminfo equivalents. The rs capability is specially translated to terminfo 621# r2, and vice versa, if an entry does not already have an r2. Similarly, 622# i2 is translated to r3 if there is no r3 (because SV terminfo maps is to i2). 623# The ug capability is thrown away, but assumed to be whatever sg is if the 624# latter is nonzero and we're dumping in termcap format. 625# 626termcap_init2 OTi2 str i2 - - YB--- secondary initialization string 627termcap_reset OTrs str rs - - YB-G- terminal reset string 628magic_cookie_glitch_ul OTug num ug - - YBCGE number of blanks left by ul 629# 630# Obsolete termcap capabilities. Some are used for termcap translation. The 631# code uses the 'OT' prefix we put on obsolete capabilities to suppress 632# printing them in terminfo source dumps of compiled entries. 633# 634backspaces_with_bs OTbs bool bs - - YBCGE uses ^H to move left 635crt_no_scrolling OTns bool ns - - YBCG- crt cannot scroll 636no_correctly_working_cr OTnc bool nc - - YBCG- no way to go to start of line 637carriage_return_delay OTdC num dC - - YB-G- pad needed for CR 638new_line_delay OTdN num dN - - YB-G- pad needed for LF 639linefeed_if_not_lf OTnl str nl - - YBCGE use to move down 640backspace_if_not_bs OTbc str bc - - YBCGE move left, if not ^H 641# 642# GNU termcap library extensions. The GNU termcap file distributed with 643# Emacs no longer uses these, but MT showed up in pre-9.0 versions of the 644# BSD termcap file. The name clash with terminfo MT is resolved by type 645# info; MT is converted to km. 646# 647gnu_has_meta_key OTMT bool MT - - ----E has meta key 648# gnu_tab_width OTtw num tw - - ----E tab width in spaces 649# 650# GNU termcap *does* include the following extended capability, Only the 651# now-obsolete Ann Arbor terminals used it. 652# 653# gnu_change_scroll_region OTcS str cS - - ---GE alternate set scrolling region 654# 655# The following comments describe capnames so ancient that I believe no 656# software uses them any longer. Some of these have to go because they 657# clash with terminfo names in ways that cannot be resolved by type 658# information. 659# 660# These mytinfo codes are not used in the 4.4BSD curses code. They are 661# marked obsolete in the 4.4BSD manual pages. 662# 663# There is one conflict with terminfo; ma is in both. This conflict is 664# resolved by type information. 665# 666# The `ko' capability is translated by special code. It should contain a 667# comma-separated list of capabilities for which there are corresponding keys. 668# The `kn' code is accepted but ignored. 669# 670# The `ma' capability seems to have been designed to map between the rogue(2) 671# motion keys (including jkhl) and characters emitted by arrow keys on some 672# primitive pre-ANSI terminals. It's so obsolete it's fossilized... 673# 674# Here is a description of memory_lock_above and memory_unlock: 675# "You can 'freeze' data on the screen by turning on Memory Lock in a line of 676# text. All lines above the cursor's current line become locked in place on 677# the screen. Then enter data normally. When the screen fills up, any 678# further data entered forces the first line of unfrozen line text to scroll 679# under the frozen data. Lines scrolled off the screen are inserted into 680# memory immediately preceding the first frozen line." (from the HP 700/96 681# User's manual). VT100/ANSI memory lock set is \E[>2h, reset is \E[>2l. 682# 683# Applications that use terminfo are supposed to behave as though xr is 684# always true. 685# 686linefeed_is_newline OTNL bool NL - - YB--- move down with \n 687# even_parity OTEP bool EP - - -B--- terminal requires even parity 688# odd_parity OTOP bool OP - - -B--- terminal requires odd parity 689# half_duplex OTHD bool HD - - -B--- terminal is half-duplex 690# lower_case_only OTLC bool LC - - -B--- terminal has only lower case 691# upper_case_only OTUC bool UC - - -B--- terminal has only upper case 692backspace_delay OTdB num dB - - YB-G- padding required for ^H 693# form_feed_delay OTdF num dF - - -B-G- padding required for ^L 694horizontal_tab_delay OTdT num dT - - YB-G- padding required for ^I 695# vertical_tab_delay OTdV num dV - - -B--- padding required for ^V 696number_of_function_keys OTkn num kn - - -B-G- count of function keys 697other_non_function_keys OTko str ko - - -B-G- list of self-mapped keycaps 698arrow_key_map OTma str ma - - YBC-- map arrow keys rogue(1) motion keys 699# memory_lock_above OTml str ml - - -B--- lock visible screen memory above the current line 700# memory_unlock OTmu str mu - - -B--- unlock visible screen memory above the current line 701has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I 702return_does_clr_eol OTxr bool xr - - YB--- return clears the line 703# tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch 704# 705# mytinfo described this as a termcap capability, but it's not listed in the 706# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses 707# package, like System V, behaves as though it is always true. 708# 709# rind_only_at_top OTxq bool xq - - ----- reverse index only works from top line 710# 711# University of Waterloo termcap extensions (as described in mytinfo). 712# The `xl' termcap file clashes with a terminfo name; this ambiguity cannot 713# be resolved by a type check. The descriptions are guesses from what was 714# in the mytinfo tables. 715# 716# key_interrupt_char OTki str ki - - ----- string set by interrupt key (?) 717# key_kill_char OTkk str kk - - ----- string set by kill key (?) 718# key_suspend_char OTkz str kz - - ----- string set by suspend key (?) 719# initialization_messy OTxc bool xc - - ----- initialization leaves garbage on the screen (?) 720# ind_at_bottom_does_cr OTxl bool xl - - ----- index does a carriage return 721# 722# Nonstandard capabilities unique to Ross Ridge's `mytinfo' package. 723# SR clashes with a terminfo name; this ambiguity cannot be resolved by a type 724# check. 725# 726# scroll_left OTsl1 str Sl - - ----- scroll screen leftward 727# scroll_right OTsr1 str Sr - - ----- scroll screen rightward 728# parm_scroll_left OTsl str SL - - ----- scroll screen leftward #1 characters 729# parm_scroll_right OTsr str SR - - ----- scroll screen rightward #1 characters 730# 731# The mytinfo capabilities end here. 732# 733# XENIX extensions: 734# 735# Xenix defined its own set of forms-drawing capabilities: 736# 737# cap IBM ASCII description ACS ASCII 738# --- ----------- -------------------- ------------- ------ 739# G1 191 \277 M-? single upper right ACS_URCORNER 740# G2 218 \332 M-Z single upper left ACS_ULCORNER 741# G3 192 \300 M-@ single lower left ACS_LLCORNER 742# G4 217 \331 M-Y single lower right ACS_LRCORNER 743# G5 187 \273 M-; double upper right 744# G6 201 \311 M-I double upper left 745# G7 200 \310 M-H double lower left 746# G8 188 \274 M-< double lower right 747# GC 197 \305 M-E single intersection ACS_PLUS _ _ 748# GD 194 \302 M-B single down-tick ACS_TTEE | 749# GH 196 \304 M-D single horizontal line ACS_HLINE 750# GL 180 \264 M-4 single left tick ACS_RTEE -| 751# GR 195 \303 M-C single right tick ACS_LTEE |- 752# GU 193 \301 M-A single up tick ACS_BTEE _|_ 753# GV 179 \263 M-3 single vertical line ACS_VLINE 754# Gc 206 \316 M-N double intersection 755# Gd 203 \313 M-K double down tick 756# Gh 205 \315 M-M double horizontal line 757# Gl 204 \204 M-L double left tick 758# Gr 185 \271 M-9 double right tick 759# Gu 202 \312 M-J double up tick 760# Gv 186 \272 M-: double vertical line 761# 762# The compiler will translate the single-line caps and discard the others 763# (via IGNORE aliases further down). We don't want to do normal pad 764# translation on these, they're often single-character printable ASCII 765# strings that happen to be numerics. There's awk code in parametrized.sh 766# that detects the acs_ prefix and uses it to suppress pad translation. 767# These terminfo names are invented. 768# 769acs_ulcorner OTG2 str G2 - - ----- single upper left 770acs_llcorner OTG3 str G3 - - ----- single lower left 771acs_urcorner OTG1 str G1 - - ----- single upper right 772acs_lrcorner OTG4 str G4 - - ----- single lower right 773acs_ltee OTGR str GR - - ----- tee pointing right 774acs_rtee OTGL str GL - - ----- tee pointing left 775acs_btee OTGU str GU - - ----- tee pointing up 776acs_ttee OTGD str GD - - ----- tee pointing down 777acs_hline OTGH str GH - - ----- single horizontal line 778acs_vline OTGV str GV - - ----- single vertical line 779acs_plus OTGC str GC - - ----- single intersection 780# 781############################################################################# 782# 783# TERMINFO EXTENSION CAPABILITIES 784# 785# This section is almost all comments. What it's mainly for is to describe 786# what capabilities need to be squeezed out to get down to the XSI Curses 787# standard set. They are flagged with K. 788# 789# HP extensions 790# 791# These extensions follow ptr_non (replacing everything after it) in HP 792# terminfo files. Except for memory_lock and memory_unlock, they are 793# functionally identical to SVr4 extensions, but they make the binary format 794# different. Grrr.... 795# 796memory_lock meml str ml - - ----K lock memory above cursor 797memory_unlock memu str mu - - ----K unlock memory 798#plab_norm pln str pn - - ----- program label #1 to show string #2 799#label_on smln str LO - - ----- turn on soft labels 800#label_off rmln str LF - - ----- turn off soft labels 801#key_f11 kf11 str F1 - - ----- F11 function key 802#key_f12 kf12 str F2 - - ----- F12 function key 803#key_f13 kf13 str F3 - - ----- F13 function key 804#key_f14 kf14 str F4 - - ----- F14 function key 805#key_f15 kf15 str F5 - - ----- F15 function key 806#key_f16 kf16 str F6 - - ----- F16 function key 807#key_f17 kf17 str F7 - - ----- F17 function key 808#key_f18 kf18 str F8 - - ----- F18 function key 809#key_f19 kf19 str F9 - - ----- F19 function key 810#key_f20 kf20 str FA - - ----- F20 function key 811#key_f21 kf21 str FB - - ----- F21 function key 812#key_f22 kf22 str FC - - ----- F22 function key 813#key_f23 kf23 str FD - - ----- F23 function key 814#key_f24 kf24 str FE - - ----- F24 function key 815#key_f25 kf25 str FF - - ----- F25 function key 816#key_f26 kf26 str FG - - ----- F26 function key 817#key_f27 kf27 str FH - - ----- F27 function key 818#key_f28 kf28 str FI - - ----- F28 function key 819#key_f29 kf29 str FJ - - ----- F29 function key 820#key_f30 kf30 str FK - - ----- F30 function key 821#key_f31 kf31 str FL - - ----- F31 function key 822#key_f32 kf32 str FM - - ----- F32 function key 823#key_f33 kf33 str FN - - ----- F33 function key 824#key_f34 kf34 str FO - - ----- F34 function key 825#key_f35 kf35 str FP - - ----- F35 function key 826#key_f36 kf36 str FQ - - ----- F36 function key 827#key_f37 kf37 str FR - - ----- F37 function key 828#key_f38 kf38 str FS - - ----- F38 function key 829#key_f39 kf39 str FT - - ----- F39 function key 830#key_f40 kf40 str FU - - ----- F40 function key 831#key_f41 kf41 str FV - - ----- F41 function key 832#key_f42 kf42 str FW - - ----- F42 function key 833#key_f43 kf43 str FX - - ----- F43 function key 834#key_f44 kf44 str FY - - ----- F44 function key 835#key_f45 kf45 str FZ - - ----- F45 function key 836#key_f46 kf46 str Fa - - ----- F46 function key 837#key_f47 kf47 str Fb - - ----- F47 function key 838#key_f48 kf48 str Fc - - ----- F48 function key 839#key_f49 kf49 str Fd - - ----- F49 function key 840#key_f50 kf50 str Fe - - ----- F50 function key 841#key_f51 kf51 str Ff - - ----- F51 function key 842#key_f52 kf52 str Fg - - ----- F52 function key 843#key_f53 kf53 str Fh - - ----- F53 function key 844#key_f54 kf54 str Fi - - ----- F54 function key 845#key_f55 kf55 str Fj - - ----- F55 function key 846#key_f56 kf56 str Fk - - ----- F56 function key 847#key_f57 kf57 str Fl - - ----- F57 function key 848#key_f58 kf58 str Fm - - ----- F58 function key 849#key_f59 kf59 str Fn - - ----- F59 function key 850#key_f60 kf60 str Fo - - ----- F60 function key 851#key_f61 kf61 str Fp - - ----- F61 function key 852#key_f62 kf62 str Fq - - ----- F62 function key 853#key_f63 kf63 str Fr - - ----- F63 function key 854# 855# IBM extensions 856# 857# These extensions follow ptr_non (replacing everything after it) in IBM 858# terminfo files. 859# 860# The places in the box[12] capabilities correspond to acsc characters, here is 861# the mapping: 862# 863# box1[0] = ACS_ULCORNER 864# box1[1] = ACS_HLINE 865# box1[2] = ACS_URCORNER 866# box1[3] = ACS_VLINE 867# box1[4] = ACS_LRCORNER 868# box1[5] = ACS_LLCORNER 869# box1[6] = ACS_TTEE 870# box1[7] = ACS_RTEE 871# box1[8] = ACS_BTEE 872# box1[9] = ACS_LTEE 873# box1[10] = ACS_PLUS 874# 875# The box2 characters are the double-line versions of these forms graphics. 876# 877box_chars_1 box1 str bx - - ----K box characters primary set 878#box_chars_2 box2 str by - - ----K box characters secondary set 879#box_attr_1 batt1 str Bx - - ----K attributes for box1 880#box_attr_2 batt2 str By - - ----K attributes for box2 881#color_bg_0 colb0 str d0 - - ----K background color 0 882#color_bg_1 colb1 str d1 - - ----K background color 1 883#color_bg_2 colb2 str d2 - - ----K background color 2 884#color_bg_3 colb3 str d3 - - ----K background color 3 885#color_bg_4 colb4 str d4 - - ----K background color 4 886#color_bg_5 colb5 str d5 - - ----K background color 5 887#color_bg_6 colb6 str d6 - - ----K background color 6 888#color_bg_7 colb7 str d7 - - ----K background color 7 889#color_fg_0 colf0 str c0 - - ----K foreground color 0 890#color_fg_1 colf1 str c1 - - ----K foreground color 1 891#color_fg_2 colf2 str c2 - - ----K foreground color 2 892#color_fg_3 colf3 str c3 - - ----K foreground color 3 893#color_fg_4 colf4 str c4 - - ----K foreground color 4 894#color_fg_5 colf5 str c5 - - ----K foreground color 5 895#color_fg_6 colf6 str c6 - - ----K foreground color 6 896#color_fg_7 colf7 str c7 - - ----K foreground color 7 897#font_0 font0 str f0 - - ----- select font 0 898#font_1 font1 str f1 - - ----- select font 1 899#font_2 font2 str f2 - - ----- select font 2 900#font_3 font3 str f3 - - ----- select font 3 901#font_4 font4 str f4 - - ----K select font 4 902#font_5 font5 str f5 - - ----K select font 5 903#font_6 font6 str f6 - - ----K select font 6 904#font_7 font7 str f7 - - ----K select font 7 905#key_back_tab kbtab str k0 - - ----- backtab key 906#key_do kdo str ki - - ----K do request key 907#key_command kcmd str kd - - ----K command-request key 908#key_command_pane kcpn str kW - - ----K command-pane key 909#key_end kend str kw - - ----- end key 910#key_help khlp str kq - - ----- help key 911#key_newline knl str nl - - ----K newline key 912#key_next_pane knpn str kv - - ----K next-pane key 913#key_prev_cmd kppn str kp - - ----K previous-command key 914#key_prev_pane kppn str kV - - ----K previous-pane key 915#key_quit kquit str kQ - - ----K quit key 916#key_select ksel str kU - - ----- select key 917#key_scroll_left kscl str kz - - ----K scroll left 918#key_scroll_right kscr str kZ - - ----K scroll right 919#key_tab ktab str ko - - ----K tab key 920#key_smap_in1 kmpf1 str Kv - - ----K special mapped key 1 input 921#key_smap_out1 kmpt1 str KV - - ----K special mapped key 1 output 922#key_smap_in2 kmpf2 str Kw - - ----K special mapped key 2 input 923#key_smap_out2 kmpt2 str KW - - ----K special mapped key 2 output 924#key_smap_in3 kmpf3 str Kx - - ----K special mapped key 3 input 925#key_smap_out3 kmpt3 str KX - - ----K special mapped key 3 output 926#key_smap_in4 kmpf4 str Ky - - ----K special mapped key 4 input 927#key_smap_out4 kmpt4 str KY - - ----K special mapped key 4 output 928#key_smap_in5 kmpf5 str Kz - - ----K special mapped key 5 input 929#key_smap_out5 kmpt5 str KZ - - ----K special mapped key 5 output 930#appl_defined_str apstr str za - - ----K application-defined string 931# The key_smap_in[6789] and key_smap_out[6789] capabilities aren't described in 932# the IBM manual pages, so the cap name strings are guesses. The terminfo 933# names are almost certainly right, the termcap ones almost certainly wrong. 934#key_smap_in6 kmpf6 str k! - - ----K special mapped key 6 input 935#key_smap_out6 kmpt6 str K@ - - ----K special mapped key 6 output 936#key_smap_in7 kmpf7 str k# - - ----K special mapped key 7 input 937#key_smap_out7 kmpt7 str K$ - - ----K special mapped key 7 output 938#key_smap_in8 kmpf8 str k% - - ----K special mapped key 8 input 939#key_smap_out8 kmpt8 str K^ - - ----K special mapped key 8 output 940#key_smap_in9 kmpf9 str k& - - ----K special mapped key 9 input 941#key_smap_out9 kmpt9 str K* - - ----K special mapped key 9 output 942# Undocumented capabilities end here 943#key_sf1 ksf1 str S1 - - ----K special function key 1 944#key_sf2 ksf2 str S2 - - ----K special function key 2 945#key_sf3 ksf3 str S3 - - ----K special function key 3 946#key_sf4 ksf4 str S4 - - ----K special function key 4 947#key_sf5 ksf5 str S5 - - ----K special function key 5 948#key_sf6 ksf6 str S6 - - ----K special function key 6 949#key_sf7 ksf7 str S7 - - ----K special function key 7 950#key_sf8 ksf8 str S8 - - ----K special function key 8 951#key_sf9 ksf9 str S9 - - ----K special function key 9 952#key_sf10 ksf10 str SA - - ----K special function key 10 953# AIX version 3 documents different codes for F11, F12 and does not mention 954# F13-F64. AIX version 4 uses the same naming for F0-F63 as above. 955#key_f11 kf11 str k< - - ----- function key 11 956#key_f12 kf12 str k> - - ----- function key 12 957# Undocumented capabilities end here. 958#key_action kact str kJ - - ----K sent by action key 959# The IBM docs say these capabilities are for table-drawing, and are 960# valid only for aixterm descriptions. 961#enter_topline_mode topl str tp - - ----K start top-line mode 962#enter_bottom_mode btml str bm - - ----K start bottom-line mode 963#enter_rvert_mode rvert str rv - - ----K start right-vertical mode 964#enter_lvert_mode lvert str lv - - ----K start left-vertical mode 965# 966############################################################################# 967# 968# ALIAS DECLARATIONS 969# 970# Here we set up aliases for translating extensions into standard terminfo. 971# 972#---------------------------------- Termcap aliases ------------------------- 973# 974# BSD aliases: 975# 976# This is a common error in many termcap files. We'll get notified during 977# translation when this (or any other alias) fires. 978# 979capalias sb sr BSD scroll text down 980# 981# AT&T extensions: 982# 983# The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of 984# nonstandard capabilities. Its signature is the KM capability, used to name 985# some sort of keymap file. EE, BO, CI, CV, XS, DS, FL and FE are in this 986# set. Comments in the original, and a little cross-checking with other AT&T 987# documentation, seem to establish the following mappings: 988# 989capalias BO mr AT&T enter_reverse_mode 990capalias CI vi AT&T cursor_invisible 991capalias CV ve AT&T cursor_normal 992capalias DS mh AT&T enter_dim_mode 993#capalias EE me AT&T exit_attribute_mode 994capalias FE LF AT&T label_on 995capalias FL LO AT&T label_off 996capalias XS mk AT&T enter_secure_mode 997# 998# We comment out EE because the conflicting XENIX EE is more common in 999# old entries. 1000# 1001# XENIX extensions: 1002# 1003# These are the ones we know how to translate directly: 1004# 1005capalias EE mh XENIX exit_attribute_mode 1006capalias GE ae XENIX exit_alt_charset_mode 1007capalias GS as XENIX enter_alt_charset_mode 1008capalias CF vi XENIX cursor_invis 1009capalias CO ve XENIX cursor_normal 1010capalias EN @7 XENIX key_end 1011capalias HM kh XENIX key_home 1012capalias LD kL XENIX key_dl 1013capalias PD kN XENIX key_npage 1014capalias PN po XENIX prtr_off 1015capalias PS pf XENIX prtr_on 1016capalias PU kP XENIX key_ppage 1017capalias RT @8 XENIX kent 1018capalias UP ku XENIX kcuu1 1019capalias G6 IGNORE XENIX double-ACS_ULCORNER 1020capalias G7 IGNORE XENIX double-ACS_LLCORNER 1021capalias G5 IGNORE XENIX double-ACS_URCORNER 1022capalias G8 IGNORE XENIX double-ACS_LRCORNER 1023capalias Gr IGNORE XENIX double-ACS_LTEE 1024capalias Gr IGNORE XENIX double-ACS_RTEE 1025capalias Gu IGNORE XENIX double-ACS_BTEE 1026capalias Gd IGNORE XENIX double ACS_TTEE 1027capalias Gh IGNORE XENIX double-ACS_HLINE 1028capalias Gv IGNORE XENIX double-ACS_VLINE 1029capalias Gc IGNORE XENIX double-ACS_PLUS 1030capalias GG IGNORE XENIX acs-glitch 1031# 1032# IBM extensions: 1033# 1034capalias kq %1 IBM key_help 1035# 1036# Iris extensions: 1037# 1038capalias HS mh IRIS enter_dim_mode 1039# 1040# Tektronix extensions: 1041# 1042capalias KA k; Tek key_f10 1043capalias KB F1 Tek key_f11 1044capalias KC F2 Tek key_f12 1045capalias KD F3 Tek key_f13 1046capalias KE F4 Tek key_f14 1047capalias KF F5 Tek key_f15 1048capalias BC Sb Tek set_background 1049capalias FC Sf Tek set_foreground 1050# 1051# There are also the following: 1052# 1053# XENIX XENIX variable name name clash with terminfo? 1054# ----- ------------------- ------------------------- 1055# CL key_char_left 1056# CR key_char_right 1057# CW key_change_window 1058# HP ?? 1059# LF key_linefeed label_off 1060# NU key_next_unlocked_cell 1061# PL ?? 1062# PR ?? 1063# RC key_recalc remove_clock 1064# RF key_toggle_ref req_for_input 1065# WL key_word_left 1066# WR key_word_right 1067# 1068# If you know what any of the question-marked ones mean, please tell us. 1069# 1070#--------------------------------- Terminfo aliases ------------------------ 1071# 1072# IBM extensions: 1073# 1074infoalias font0 s0ds IBM set0_des_seq 1075infoalias font1 s1ds IBM set1_des_seq 1076infoalias font2 s2ds IBM set2_des_seq 1077infoalias font3 s3ds IBM set3_des_seq 1078infoalias kbtab kcbt IBM key_backtab 1079infoalias ksel kslt IBM key_select 1080# 1081# Some others are identical to SVr4/XPG4 capabilities, in particular: 1082# kcmd, kend, khlp, and kf11...kf63. 1083# 1084############################################################################# 1085