blob: ebf392b8bcc83942d8c22430b1fd80347450f08e [file] [log] [blame]
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05301##############################################################################
Steve Kondikae271bc2015-11-15 02:50:53 +01002# Copyright (c) 2001-2013,2015 Free Software Foundation, Inc. #
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05303# #
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# and: Ilya Zakharevich
31#
Steve Kondikae271bc2015-11-15 02:50:53 +010032# $Id: Caps.keys,v 1.8 2015/04/26 15:25:55 tom Exp $
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053033#
34# This is an adaptation of ncurses' termcap/terminfo capability table, which
35# is illustrates an experimental extension to describe alt-, shift- and
36# control-modifiers applied to function and normal keys, as done on IBM pc's.
37#
38# This table is used to generate initializers for tables that drive tic,
39# infocmp, and the library compilation code used to support the termcap
40# compatibility hack. It is also used to generate the tabular portion of the
41# terminfo(5) man page; lines beginning with `#%' are passed through to become
42# the terminfo table.
43#
44# This file has three major sections; a standard-capabilities table, two
45# extension-capability tables, and a section of aliases declarations.
46# The first two have the same format, as follows:
47#
48# FILE FORMAT
49#
50# Column 1: terminfo variable name
51# Column 2: terminfo capability name
52# Column 3: capability type (boolean, numeric, or string)
53# Column 4: termcap capability name
54# Column 5: KEY_xxx name, if any, `-' otherwise
55# Column 6: value for KEY_xxx name, if any, `-' otherwise
56# Column 7: Lead with `Y' if capability should be emitted in termcap
57# translations, `-' otherwise
58# Column 8: capability description
59#
60# The codes following [Y-] in column 7 describe the versions of termcap which
61# use the given capability. This information is not used by the curses library
62# proper; rather, it's there to help the terminfo maintainer avoid emitting
63# termcap entry translations that are more than 1023 bytes long (and tank a
64# lot of old termcap-using programs). The codes read as follows:
65# B = mentioned in the BSD man page for 4.4BSD curses
66# C = used by the 4.4BSD curses library
67# G = mentioned in the documentation for GNU termcap
68# E = used by GNU Emacs
69# K = remove this terminfo capability when translating to standard format
70# The important codes are C and E. A cap with C or E should be preserved in
71# translation if possible. The problem is that preserving all such caps may
72# lead to some termcap translations being too long. The termcap maintainer
73# has a bit of a juggling act to do...potential problem cases are marked with
74# an asterisk (*).
75#
76# The aliases section has the following format:
77#
78# Column 1: either `capalias' or `infoalias'
79# Column 2: name to be aliased
80# Column 3: what name it should translate to. The name IGNORE means it
81# should be discarded with a warning message.
82# Column 4: name of the extension set (used for compiler warning messages)
83# Column 5: capability description (usually an associated terminfo variable)
84#
85# HANDLING TERMCAP AND TERMINFO EXTENSIONS
86#
87# There are basically five different ways to handle termcap and terminfo
88# extensions:
89#
90# 1. Don't list the capname here, or list it but comment it out (the latter
91# is preferable; someone might want to handle it in the future). If you do
92# this, the capability will be treated as unknown and raise a warning from
93# the compiler.
94#
95# 2. Alias it. This is appropriate if the capability has the same meaning
96# as an already-supported one. The compiler will handle aliasing, emitting
97# an appropriate informational message whenever an alias fires.
98#
99# 3. List it in the standard table. You almost certainly do *not* want
100# to do this -- the capabilities in that one, and their order, have been
101# carefully chosen to be SVr4-binary-compatible when they're written out
Steve Kondikae271bc2015-11-15 02:50:53 +0100102# as a terminfo object, and breaking this would be bad. It's up to the ncurses
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530103# library what to do with the terminfo data after it's read in.
104#
105# 4. List it in the aliases table with an IGNORE target field. If you
106# do this, the capability will be ignored on input (though the user will
107# get a warning message about it).
108#
109# 5. List it in the extensions table. If you do this, the compiler will
110# silently accept the capability, but the curses library proper will never
111# see it (because it won't be written out as part of the terminfo object
112# format). It's up to you what you have the compiler do with it.
113#
114# There are two opposite reasons to choose option 5. One is when you want
115# to eat the capability silently and discard it when doing translations
116# to terminfo with tic -I. Some very old obsolete BSD caps like :kn: are
117# in this class. Nothing will ever use them again.
118#
119# More usually, you want the compiler to try to deduce something from the
120# capability value that it can use to translate it into your output format.
121# You'll need to write custom code, probably in postprocess_termcap() or
122# postprocess_terminfo(), to handle the translation.
123#
124# CONTROLLING ENTRY LENGTH
125#
126# Notes on specific elisions made to fit translations within 1023 bytes:
127#
128# Machines with IBM PC-like keyboards want to be able to define the following
129# keys: key_npage, key_ppage, key_home, key_ll (which is used for in termcap-
130# only environments for End or Home-Down), key_dc, and key_ic. This is also
131# the set of keys the `joe' editor will be upset if it can't see. So don't
132# trim those out of the set to be translated to termcap, or various users of
133# the termcap file will become irate.
134#
135# It might look tempting to leave those long init strings out of translations.
136# We can't do it (yet); 4.4BSD tput and tset use them.
137#
138# We retain the sgr capability in translation in spite of the fact that neither
139# 4.4BSD nor GNU Emacs uses it, because (a) some entry naming distinctions are
140# hard to understand without it, and (b) the entries in which it is long tend
141# to be older types that don't use up a lot of string space on function keys.
142# The tic(1) translation code will complain and elide it if it makes a critical
143# difference (there is special code in tic to recognize this situation).
144#
145# Yes, BSD tset(1) uses hpa. We elide hpa/vpa anyway because the motion
146# optimizer in BSD curses didn't use them. This omission seems to be the
147# single most effective one, it shortened the resolved length of all thirteen
148# problem entries in the 9.9.0 version of the terminfo master below critical.
149#
150# It would be nice to keep f11 and f12 for Emacs use, but a couple of termcap
151# translations go back over critical if we do this. As 4.4BSD curses fades
152# into history and GNU termcap's application base shrinks towards being GNU
153# Emacs only, we'll probably elide out some BSD-only capabilities in order
154# to buy space for non-essentials Emacs is still using. Capabilities high
155# on that hit list: rc, sc, uc.
156#
157#############################################################################
158#
159# STANDARD CAPABILITIES
160#
161#%The following is a complete table of the capabilities included in a
162#%terminfo description block and available to terminfo-using code. In each
163#%line of the table,
164#%
165#%The \fBvariable\fR is the name by which the programmer (at the terminfo level)
166#%accesses the capability.
167#%
168#%The \fBcapname\fR is the short name used in the text of the database,
169#%and is used by a person updating the database.
170#%Whenever possible, capnames are chosen to be the same as or similar to
171#%the ANSI X3.64-1979 standard (now superseded by ECMA-48, which uses
172#%identical or very similar names). Semantics are also intended to match
173#%those of the specification.
174#%
175#%The termcap code is the old
176#%.B termcap
177#%capability name (some capabilities are new, and have names which termcap
178#%did not originate).
179#%.P
180#%Capability names have no hard length limit, but an informal limit of 5
181#%characters has been adopted to keep them short and to allow the tabs in
182#%the source file
183#%.B Caps
184#%to line up nicely.
185#%
186#%Finally, the description field attempts to convey the semantics of the
187#%capability. You may find some codes in the description field:
188#%.TP
189#%(P)
190#%indicates that padding may be specified
191#%.TP
192#%#[1-9]
193#%in the description field indicates that the string is passed through tparm with
194#%parms as given (#\fIi\fP).
195#%.TP
196#%(P*)
197#%indicates that padding may vary in proportion to the number of
198#%lines affected
199#%.TP
200#%(#\d\fIi\fP\u)
201#%indicates the \fIi\fP\uth\d parameter.
202#%
203#%.PP
204#% These are the boolean capabilities:
205#%
206#%.na
207#%.TS H
208#%center expand;
209#%c l l c
210#%c l l c
211#%lw25 lw6 lw2 lw20.
212#%\fBVariable Cap- TCap Description\fR
213#%\fBBooleans name Code\fR
214auto_left_margin bw bool bw - - YB-G- cub1 wraps from column 0 to last column
215auto_right_margin am bool am - - YBCGE terminal has automatic margins
216no_esc_ctlc xsb bool xb - - YBCG- beehive (f1=escape, f2=ctrl C)
217ceol_standout_glitch xhp bool xs - - YBCGE standout not erased by overwriting (hp)
218eat_newline_glitch xenl bool xn - - YBCGE newline ignored after 80 cols (concept)
219erase_overstrike eo bool eo - - YBCG- can erase overstrikes with a blank
220generic_type gn bool gn - - YB-G- generic line type
221hard_copy hc bool hc - - YBCG- hardcopy terminal
222has_meta_key km bool km - - YB-GE Has a meta key (i.e., sets 8th-bit)
223has_status_line hs bool hs - - YB-G- has extra status line
224insert_null_glitch in bool in - - YBCGE insert mode distinguishes nulls
225memory_above da bool da - - YBCG- display may be retained above the screen
226memory_below db bool db - - YB-GE display may be retained below the screen
227move_insert_mode mir bool mi - - YBCGE safe to move while in insert mode
228move_standout_mode msgr bool ms - - YBCGE safe to move while in standout mode
229over_strike os bool os - - YBCG- terminal can overstrike
230status_line_esc_ok eslok bool es - - YB-G- escape can be used on the status line
231dest_tabs_magic_smso xt bool xt - - YBCGE tabs destructive, magic so char (t1061)
Steve Kondikae271bc2015-11-15 02:50:53 +0100232tilde_glitch hz bool hz - - YB-GE cannot print ~'s (Hazeltine)
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530233transparent_underline ul bool ul - - YBCGE underline character overstrikes
234xon_xoff xon bool xo - - YB--- terminal uses xon/xoff handshaking
Steve Kondikae271bc2015-11-15 02:50:53 +0100235needs_xon_xoff nxon bool nx - - ----- padding will not work, xon/xoff required
236prtr_silent mc5i bool 5i - - ----- printer will not echo on screen
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530237hard_cursor chts bool HC - - ----- cursor is hard to see
238non_rev_rmcup nrrmc bool NR - - ----- smcup does not reverse rmcup
239no_pad_char npc bool NP - - ----- pad character does not exist
240non_dest_scroll_region ndscr bool ND - - ----- scrolling region is non-destructive
241can_change ccc bool cc - - ----- terminal can re-define existing colors
242back_color_erase bce bool ut - - ----- screen erased with background color
243hue_lightness_saturation hls bool hl - - ----- terminal uses only HLS color notation (Tektronix)
244col_addr_glitch xhpa bool YA - - ----- only positive motion for hpa/mhpa caps
245cr_cancels_micro_mode crxm bool YB - - ----- using cr turns off micro mode
246has_print_wheel daisy bool YC - - ----- printer needs operator to change character set
247row_addr_glitch xvpa bool YD - - ----- only positive motion for vpa/mvpa caps
248semi_auto_right_margin sam bool YE - - ----- printing in last column causes cr
249cpi_changes_res cpix bool YF - - ----- changing character pitch changes resolution
250lpi_changes_res lpix bool YG - - ----- changing line pitch changes resolution
251#%.TE
252#%.ad
253#%
254#%These are the numeric capabilities:
255#%
256#%.na
257#%.TS H
258#%center expand;
259#%c l l c
260#%c l l c
261#%lw25 lw6 lw2 lw20.
262#%\fBVariable Cap- TCap Description\fR
263#%\fBNumeric name Code\fR
264columns cols num co - - YBCGE number of columns in a line
265init_tabs it num it - - YB-G- tabs initially every # spaces
266lines lines num li - - YBCGE number of lines on screen or page
267lines_of_memory lm num lm - - YB-G- lines of memory if > line. 0 means varies
268magic_cookie_glitch xmc num sg - - YBCGE number of blank characters left by smso or rmso
269padding_baud_rate pb num pb - - YB-GE lowest baud rate where padding needed
270virtual_terminal vt num vt - - YB--- virtual terminal number (CB/unix)
271width_status_line wsl num ws - - YB-G- number of columns in status line
272num_labels nlab num Nl - - ----- number of labels on screen
273label_height lh num lh - - ----- rows in each label
274label_width lw num lw - - ----- columns in each label
275max_attributes ma num ma - - YBC-- maximum combined attributes terminal can handle
Steve Kondikae271bc2015-11-15 02:50:53 +0100276maximum_windows wnum num MW - - ----- maximum number of definable windows
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530277# These came in with SVr4's color support
278max_colors colors num Co - - ----- maximum number of colors on screen
279max_pairs pairs num pa - - ----- maximum number of color-pairs on the screen
Steve Kondikae271bc2015-11-15 02:50:53 +0100280no_color_video ncv num NC - - ----- video attributes that cannot be used with colors
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530281#%.TE
282#%.ad
283#%
284#%The following numeric capabilities are present in the SVr4.0 term structure,
285#%but are not yet documented in the man page. They came in with SVr4's
286#%printer support.
287#%
288#%.na
289#%.TS H
290#%center expand;
291#%c l l c
292#%c l l c
293#%lw25 lw6 lw2 lw20.
294#%\fBVariable Cap- TCap Description\fR
295#%\fBNumeric name Code\fR
296buffer_capacity bufsz num Ya - - ----- numbers of bytes buffered before printing
297dot_vert_spacing spinv num Yb - - ----- spacing of pins vertically in pins per inch
298dot_horz_spacing spinh num Yc - - ----- spacing of dots horizontally in dots per inch
299max_micro_address maddr num Yd - - ----- maximum value in micro_..._address
300max_micro_jump mjump num Ye - - ----- maximum value in parm_..._micro
301micro_col_size mcs num Yf - - ----- character step size when in micro mode
302micro_line_size mls num Yg - - ----- line step size when in micro mode
303number_of_pins npins num Yh - - ----- numbers of pins in print-head
304output_res_char orc num Yi - - ----- horizontal resolution in units per line
305output_res_line orl num Yj - - ----- vertical resolution in units per line
306output_res_horz_inch orhi num Yk - - ----- horizontal resolution in units per inch
307output_res_vert_inch orvi num Yl - - ----- vertical resolution in units per inch
308print_rate cps num Ym - - ----- print rate in characters per second
309wide_char_size widcs num Yn - - ----- character step size when in double wide mode
310buttons btns num BT - - ----- number of buttons on mouse
311bit_image_entwining bitwin num Yo - - ----- number of passes for each bit-image row
312bit_image_type bitype num Yp - - ----- type of bit-image device
313#%.TE
314#%.ad
315#%
316#%These are the string capabilities:
317#%
318#%.na
319#%.TS H
320#%center expand;
321#%c l l c
322#%c l l c
323#%lw25 lw6 lw2 lw20.
324#%\fBVariable Cap- TCap Description\fR
325#%\fBString name Code\fR
326back_tab cbt str bt - - YBCGE back tab (P)
327bell bel str bl - - YB-GE audible signal (bell) (P)
328carriage_return cr str cr - - YBCGE carriage return (P*) (P*)
329change_scroll_region csr str cs - - YBCGE change region to line #1 to line #2 (P)
330clear_all_tabs tbc str ct - - YB-G- clear all tab stops (P)
331clear_screen clear str cl - - YBCGE clear screen and home cursor (P*)
332clr_eol el str ce - - YBCGE clear to end of line (P)
333clr_eos ed str cd - - YBCGE clear to end of screen (P*)
334column_address hpa str ch - - -B-GE* horizontal position #1, absolute (P)
335command_character cmdch str CC - - YB-G- terminal settable cmd character in prototype !?
336cursor_address cup str cm - - YBCGE move to row #1 columns #2
337cursor_down cud1 str do - - YBCGE down one line
338cursor_home home str ho - - YBCGE home cursor (if no cup)
339cursor_invisible civis str vi - - YB-G- make cursor invisible
340cursor_left cub1 str le - - YBCGE move left one space
341cursor_mem_address mrcup str CM - - YB-G- memory relative cursor addressing, move to row #1 columns #2
342cursor_normal cnorm str ve - - YBCGE make cursor appear normal (undo civis/cvvis)
343cursor_right cuf1 str nd - - YBCGE non-destructive space (move right one space)
344cursor_to_ll ll str ll - - YBCGE last line, first column (if no cup)
345cursor_up cuu1 str up - - YBCGE up one line
346cursor_visible cvvis str vs - - YBCGE make cursor very visible
347delete_character dch1 str dc - - YBCGE delete character (P*)
348delete_line dl1 str dl - - YBCGE delete line (P*)
349dis_status_line dsl str ds - - YB-G- disable status line
350down_half_line hd str hd - - YB-G- half a line down
351enter_alt_charset_mode smacs str as - - YB-G- start alternate character set (P)
352enter_blink_mode blink str mb - - YB-G- turn on blinking
353enter_bold_mode bold str md - - YB-G- turn on bold (extra bright) mode
354enter_ca_mode smcup str ti - - YBCGE string to start programs using cup
355enter_delete_mode smdc str dm - - YBCGE enter delete mode
356enter_dim_mode dim str mh - - YB-G- turn on half-bright mode
357enter_insert_mode smir str im - - YBCGE enter insert mode
358enter_secure_mode invis str mk - - -B-G-* turn on blank mode (characters invisible)
359enter_protected_mode prot str mp - - -B-G-* turn on protected mode
360enter_reverse_mode rev str mr - - YB-G- turn on reverse video mode
361enter_standout_mode smso str so - - YBCGE begin standout mode
362enter_underline_mode smul str us - - YBCGE begin underline mode
363erase_chars ech str ec - - YB-G- erase #1 characters (P)
364exit_alt_charset_mode rmacs str ae - - YB-G- end alternate character set (P)
365exit_attribute_mode sgr0 str me - - YB-GE turn off all attributes
366exit_ca_mode rmcup str te - - YBCGE strings to end programs using cup
367exit_delete_mode rmdc str ed - - YBCGE end delete mode
368exit_insert_mode rmir str ei - - YBCGE exit insert mode
369exit_standout_mode rmso str se - - YBCGE exit standout mode
370exit_underline_mode rmul str ue - - YBCGE exit underline mode
371flash_screen flash str vb - - YBCGE visible bell (may not move cursor)
372form_feed ff str ff - - YB-G- hardcopy terminal page eject (P*)
373from_status_line fsl str fs - - YB-G- return from status line
374init_1string is1 str i1 - - YB-G- initialization string
375init_2string is2 str is - - YB-G- initialization string
376init_3string is3 str i3 - - YB-G- initialization string
377init_file if str if - - YB-G- name of initialization file
378insert_character ich1 str ic - - YBCGE insert character (P)
379insert_line il1 str al - - YBCGE insert line (P*)
380insert_padding ip str ip - - YBCGE insert padding after inserted character
381key_backspace kbs str kb KEY_BACKSPACE 0407 YB-G- backspace key
382key_catab ktbc str ka KEY_CATAB 0526 -B-G-* clear-all-tabs key
383key_clear kclr str kC KEY_CLEAR 0515 -B-G-* clear-screen or erase key
384key_ctab kctab str kt KEY_CTAB 0525 -B-G-* clear-tab key
385key_dc kdch1 str kD KEY_DC 0512 YB-G- delete-character key
386key_dl kdl1 str kL KEY_DL 0510 -B-G-* delete-line key
387key_down kcud1 str kd KEY_DOWN 0402 YBCGE down-arrow key
388key_eic krmir str kM KEY_EIC 0514 -B-G-* sent by rmir or smir in insert mode
389key_eol kel str kE KEY_EOL 0517 -B-G-* clear-to-end-of-line key
390key_eos ked str kS KEY_EOS 0516 -B-G-* clear-to-end-of-screen key
391key_f0 kf0 str k0 KEY_F(0) 0410 YBCGE F0 function key
392key_f1 kf1 str k1 KEY_F(1) - YBCGE F1 function key
393key_f10 kf10 str k; KEY_F(10) - ----E F10 function key
394key_f2 kf2 str k2 KEY_F(2) - YBCGE F2 function key
395key_f3 kf3 str k3 KEY_F(3) - YBCGE F3 function key
396key_f4 kf4 str k4 KEY_F(4) - YBCGE F4 function key
397key_f5 kf5 str k5 KEY_F(5) - YBCGE F5 function key
398key_f6 kf6 str k6 KEY_F(6) - YBCGE F6 function key
399key_f7 kf7 str k7 KEY_F(7) - YBCGE F7 function key
400key_f8 kf8 str k8 KEY_F(8) - YBCGE F8 function key
401key_f9 kf9 str k9 KEY_F(9) - YBCGE F9 function key
402key_home khome str kh KEY_HOME 0406 YBCGE home key
403key_ic kich1 str kI KEY_IC 0513 YB-GE insert-character key
404key_il kil1 str kA KEY_IL 0511 -B-G-* insert-line key
405key_left kcub1 str kl KEY_LEFT 0404 YBCGE left-arrow key
406key_ll kll str kH KEY_LL 0533 YB-G- lower-left key (home down)
407key_npage knp str kN KEY_NPAGE 0522 YB-GE next-page key
408key_ppage kpp str kP KEY_PPAGE 0523 YB-GE previous-page key
409key_right kcuf1 str kr KEY_RIGHT 0405 YBCGE right-arrow key
410key_sf kind str kF KEY_SF 0520 -B-G-* scroll-forward key
411key_sr kri str kR KEY_SR 0521 -B-G-* scroll-backward key
412key_stab khts str kT KEY_STAB 0524 -B-G-* set-tab key
413key_up kcuu1 str ku KEY_UP 0403 YBCGE up-arrow key
414keypad_local rmkx str ke - - YBCGE leave 'keyboard_transmit' mode
415keypad_xmit smkx str ks - - YBCGE enter 'keyboard_transmit' mode
416lab_f0 lf0 str l0 - - -B-G-* label on function key f0 if not f0
417lab_f1 lf1 str l1 - - -B-G-* label on function key f1 if not f1
418lab_f10 lf10 str la - - ----- label on function key f10 if not f10
419lab_f2 lf2 str l2 - - -B-G-* label on function key f2 if not f2
420lab_f3 lf3 str l3 - - -B-G-* label on function key f3 if not f3
421lab_f4 lf4 str l4 - - -B-G-* label on function key f4 if not f4
422lab_f5 lf5 str l5 - - -B-G-* label on function key f5 if not f5
423lab_f6 lf6 str l6 - - -B-G-* label on function key f6 if not f6
424lab_f7 lf7 str l7 - - -B-G-* label on function key f7 if not f7
425lab_f8 lf8 str l8 - - -B-G-* label on function key f8 if not f8
426lab_f9 lf9 str l9 - - -B-G-* label on function key f9 if not f9
427meta_off rmm str mo - - YB-G-* turn off meta mode
428meta_on smm str mm - - YB-G-* turn on meta mode (8th-bit on)
429newline nel str nw - - YB-G-* newline (behave like cr followed by lf)
430pad_char pad str pc - - YBCGE padding char (instead of null)
431parm_dch dch str DC - - YB-GE delete #1 characters (P*)
432parm_delete_line dl str DL - - YBCGE delete #1 lines (P*)
433parm_down_cursor cud str DO - - YBCGE down #1 lines (P*)
434parm_ich ich str IC - - YB-GE insert #1 characters (P*)
435parm_index indn str SF - - YBCG- scroll forward #1 lines (P)
436parm_insert_line il str AL - - YBCGE insert #1 lines (P*)
437parm_left_cursor cub str LE - - YBCGE move #1 characters to the left (P)
438parm_right_cursor cuf str RI - - YBCGE move #1 characters to the right (P*)
439parm_rindex rin str SR - - YBCG- scroll back #1 lines (P)
440parm_up_cursor cuu str UP - - YBCGE up #1 lines (P*)
441pkey_key pfkey str pk - - -B--- program function key #1 to type string #2
442pkey_local pfloc str pl - - -B--- program function key #1 to execute string #2
443pkey_xmit pfx str px - - -B--- program function key #1 to transmit string #2
444print_screen mc0 str ps - - -B-G-* print contents of screen
445prtr_off mc4 str pf - - -B-G-* turn off printer
446prtr_on mc5 str po - - -B-G-* turn on printer
447repeat_char rep str rp - - YB-GE repeat char #1 #2 times (P*)
448reset_1string rs1 str r1 - - -B--- reset string
449reset_2string rs2 str r2 - - -B--- reset string
450reset_3string rs3 str r3 - - -B--- reset string
451reset_file rf str rf - - -B--- name of reset file
452restore_cursor rc str rc - - YBCG- restore cursor to position of last save_cursor
453row_address vpa str cv - - -B-GE* vertical position #1 absolute (P)
454save_cursor sc str sc - - YBCG- save current cursor position (P)
455scroll_forward ind str sf - - YBCGE scroll text up (P)
456scroll_reverse ri str sr - - YBCGE scroll text down (P)
457set_attributes sgr str sa - - YB-G- define video attributes #1-#9 (PG9)
458set_tab hts str st - - YB-G- set a tab in every row, current columns
459set_window wind str wi - - -B-GE current window is lines #1-#2 cols #3-#4
460tab ht str ta - - YBCGE tab to next 8-space hardware tab stop
461to_status_line tsl str ts - - YB-G- move to status line, column #1
462underline_char uc str uc - - YBCG- underline char and move past it
463up_half_line hu str hu - - YB-G- half a line up
464init_prog iprog str iP - - -B--- path name of program for initialization
465key_a1 ka1 str K1 KEY_A1 0534 YB-GE upper left of keypad
466key_a3 ka3 str K3 KEY_A3 0535 YB-GE upper right of keypad
467key_b2 kb2 str K2 KEY_B2 0536 YB-GE center of keypad
468key_c1 kc1 str K4 KEY_C1 0537 YB-GE lower left of keypad
469key_c3 kc3 str K5 KEY_C3 0540 YB-GE lower right of keypad
470prtr_non mc5p str pO - - -B-G-* turn on printer for #1 bytes
471#
472# SVr1 capabilities stop here. IBM's version of terminfo is the same as
473# SVr4 up to this point, but has a different set afterwards.
474#
475char_padding rmp str rP - - ----- like ip but when in insert mode
476acs_chars acsc str ac - - ----- graphics charset pairs, based on vt100
477plab_norm pln str pn - - ----- program label #1 to show string #2
478key_btab kcbt str kB KEY_BTAB 0541 ----- back-tab key
479enter_xon_mode smxon str SX - - ----- turn on xon/xoff handshaking
480exit_xon_mode rmxon str RX - - ----- turn off xon/xoff handshaking
481enter_am_mode smam str SA - - ----- turn on automatic margins
482exit_am_mode rmam str RA - - ----- turn off automatic margins
483xon_character xonc str XN - - ----- XON character
484xoff_character xoffc str XF - - ----- XOFF character
485ena_acs enacs str eA - - ----- enable alternate char set
486label_on smln str LO - - ----- turn on soft labels
487label_off rmln str LF - - ----- turn off soft labels
488key_beg kbeg str @1 KEY_BEG 0542 ----- begin key
489key_cancel kcan str @2 KEY_CANCEL 0543 ----- cancel key
490key_close kclo str @3 KEY_CLOSE 0544 ----- close key
491key_command kcmd str @4 KEY_COMMAND 0545 ----- command key
492key_copy kcpy str @5 KEY_COPY 0546 ----- copy key
493key_create kcrt str @6 KEY_CREATE 0547 ----- create key
494key_end kend str @7 KEY_END 0550 ----- end key
495key_enter kent str @8 KEY_ENTER 0527 ----- enter/send key
496key_exit kext str @9 KEY_EXIT 0551 ----- exit key
497key_find kfnd str @0 KEY_FIND 0552 ----- find key
498key_help khlp str %1 KEY_HELP 0553 ----- help key
499key_mark kmrk str %2 KEY_MARK 0554 ----- mark key
500key_message kmsg str %3 KEY_MESSAGE 0555 ----- message key
501key_move kmov str %4 KEY_MOVE 0556 ----- move key
502key_next knxt str %5 KEY_NEXT 0557 ----- next key
503key_open kopn str %6 KEY_OPEN 0560 ----- open key
504key_options kopt str %7 KEY_OPTIONS 0561 ----- options key
505key_previous kprv str %8 KEY_PREVIOUS 0562 ----- previous key
506key_print kprt str %9 KEY_PRINT 0532 ----- print key
507key_redo krdo str %0 KEY_REDO 0563 ----- redo key
508key_reference kref str &1 KEY_REFERENCE 0564 ----- reference key
509key_refresh krfr str &2 KEY_REFRESH 0565 ----- refresh key
510key_replace krpl str &3 KEY_REPLACE 0566 ----- replace key
511key_restart krst str &4 KEY_RESTART 0567 ----- restart key
512key_resume kres str &5 KEY_RESUME 0570 ----- resume key
513key_save ksav str &6 KEY_SAVE 0571 ----- save key
514key_suspend kspd str &7 KEY_SUSPEND 0627 ----- suspend key
515key_undo kund str &8 KEY_UNDO 0630 ----- undo key
516key_sbeg kBEG str &9 KEY_SBEG 0572 ----- shifted begin key
517key_scancel kCAN str &0 KEY_SCANCEL 0573 ----- shifted cancel key
518key_scommand kCMD str *1 KEY_SCOMMAND 0574 ----- shifted command key
519key_scopy kCPY str *2 KEY_SCOPY 0575 ----- shifted copy key
520key_screate kCRT str *3 KEY_SCREATE 0576 ----- shifted create key
521key_sdc kDC str *4 KEY_SDC 0577 ----- shifted delete-character key
522key_sdl kDL str *5 KEY_SDL 0600 ----- shifted delete-line key
523key_select kslt str *6 KEY_SELECT 0601 ----- select key
524key_send kEND str *7 KEY_SEND 0602 ----- shifted end key
525key_seol kEOL str *8 KEY_SEOL 0603 ----- shifted clear-to-end-of-line key
526key_sexit kEXT str *9 KEY_SEXIT 0604 ----- shifted exit key
527key_sfind kFND str *0 KEY_SFIND 0605 ----- shifted find key
528key_shelp kHLP str #1 KEY_SHELP 0606 ----- shifted help key
529key_shome kHOM str #2 KEY_SHOME 0607 ----- shifted home key
530key_sic kIC str #3 KEY_SIC 0610 ----- shifted insert-character key
531key_sleft kLFT str #4 KEY_SLEFT 0611 ----- shifted left-arrow key
532key_smessage kMSG str %a KEY_SMESSAGE 0612 ----- shifted message key
533key_smove kMOV str %b KEY_SMOVE 0613 ----- shifted move key
534key_snext kNXT str %c KEY_SNEXT 0614 ----- shifted next key
535key_soptions kOPT str %d KEY_SOPTIONS 0615 ----- shifted options key
536key_sprevious kPRV str %e KEY_SPREVIOUS 0616 ----- shifted previous key
537key_sprint kPRT str %f KEY_SPRINT 0617 ----- shifted print key
538key_sredo kRDO str %g KEY_SREDO 0620 ----- shifted redo key
539key_sreplace kRPL str %h KEY_SREPLACE 0621 ----- shifted replace key
540key_sright kRIT str %i KEY_SRIGHT 0622 ----- shifted right-arrow key
541key_srsume kRES str %j KEY_SRSUME 0623 ----- shifted resume key
542key_ssave kSAV str !1 KEY_SSAVE 0624 ----- shifted save key
543key_ssuspend kSPD str !2 KEY_SSUSPEND 0625 ----- shifted suspend key
544key_sundo kUND str !3 KEY_SUNDO 0626 ----- shifted undo key
545req_for_input rfi str RF - - ----- send next input char (for ptys)
546key_f11 kf11 str F1 KEY_F(11) - ----E F11 function key
547key_f12 kf12 str F2 KEY_F(12) - ----E F12 function key
548key_f13 kf13 str F3 KEY_F(13) - ----E F13 function key
549key_f14 kf14 str F4 KEY_F(14) - ----E F14 function key
550key_f15 kf15 str F5 KEY_F(15) - ----E F15 function key
551key_f16 kf16 str F6 KEY_F(16) - ----E F16 function key
552key_f17 kf17 str F7 KEY_F(17) - ----E F17 function key
553key_f18 kf18 str F8 KEY_F(18) - ----E F18 function key
554key_f19 kf19 str F9 KEY_F(19) - ----E F19 function key
555key_f20 kf20 str FA KEY_F(20) - ----E F20 function key
556key_f21 kf21 str FB KEY_F(21) - ----E F21 function key
557key_f22 kf22 str FC KEY_F(22) - ----E F22 function key
558key_f23 kf23 str FD KEY_F(23) - ----E F23 function key
559key_f24 kf24 str FE KEY_F(24) - ----E F24 function key
560key_f25 kf25 str FF KEY_F(25) - ----E F25 function key
561key_f26 kf26 str FG KEY_F(26) - ----E F26 function key
562key_f27 kf27 str FH KEY_F(27) - ----E F27 function key
563key_f28 kf28 str FI KEY_F(28) - ----E F28 function key
564key_f29 kf29 str FJ KEY_F(29) - ----E F29 function key
565key_f30 kf30 str FK KEY_F(30) - ----E F30 function key
566key_f31 kf31 str FL KEY_F(31) - ----E F31 function key
567key_f32 kf32 str FM KEY_F(32) - ----E F32 function key
568key_f33 kf33 str FN KEY_F(33) - ----E F33 function key
569key_f34 kf34 str FO KEY_F(34) - ----E F34 function key
570key_f35 kf35 str FP KEY_F(35) - ----E F35 function key
571key_f36 kf36 str FQ KEY_F(36) - ----E F36 function key
572key_f37 kf37 str FR KEY_F(37) - ----E F37 function key
573key_f38 kf38 str FS KEY_F(38) - ----E F38 function key
574key_f39 kf39 str FT KEY_F(39) - ----E F39 function key
575key_f40 kf40 str FU KEY_F(40) - ----E F40 function key
576key_f41 kf41 str FV KEY_F(41) - ----E F41 function key
577key_f42 kf42 str FW KEY_F(42) - ----E F42 function key
578key_f43 kf43 str FX KEY_F(43) - ----E F43 function key
579key_f44 kf44 str FY KEY_F(44) - ----E F44 function key
580key_f45 kf45 str FZ KEY_F(45) - ----E F45 function key
581key_f46 kf46 str Fa KEY_F(46) - ----E F46 function key
582key_f47 kf47 str Fb KEY_F(47) - ----E F47 function key
583key_f48 kf48 str Fc KEY_F(48) - ----E F48 function key
584key_f49 kf49 str Fd KEY_F(49) - ----E F49 function key
585key_f50 kf50 str Fe KEY_F(50) - ----E F50 function key
586key_f51 kf51 str Ff KEY_F(51) - ----E F51 function key
587key_f52 kf52 str Fg KEY_F(52) - ----E F52 function key
588key_f53 kf53 str Fh KEY_F(53) - ----E F53 function key
589key_f54 kf54 str Fi KEY_F(54) - ----E F54 function key
590key_f55 kf55 str Fj KEY_F(55) - ----E F55 function key
591key_f56 kf56 str Fk KEY_F(56) - ----E F56 function key
592key_f57 kf57 str Fl KEY_F(57) - ----E F57 function key
593key_f58 kf58 str Fm KEY_F(58) - ----E F58 function key
594key_f59 kf59 str Fn KEY_F(59) - ----E F59 function key
595key_f60 kf60 str Fo KEY_F(60) - ----E F60 function key
596key_f61 kf61 str Fp KEY_F(61) - ----E F61 function key
597key_f62 kf62 str Fq KEY_F(62) - ----E F62 function key
598key_f63 kf63 str Fr KEY_F(63) - ----E F63 function key
599clr_bol el1 str cb - - ----- Clear to beginning of line
600clear_margins mgc str MC - - ----- clear right and left soft margins
601set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap).
602set_right_margin smgr str MR - - ----- set right soft margin at current column
603label_format fln str Lf - - ----- label format
604set_clock sclk str SC - - ----- set clock, #1 hrs #2 mins #3 secs
605display_clock dclk str DK - - ----- display clock
606remove_clock rmclk str RC - - ----- remove clock
607create_window cwin str CW - - ----- define a window #1 from #2,#3 to #4,#5
608goto_window wingo str WG - - ----- go to window #1
609hangup hup str HU - - ----- hang-up phone
610dial_phone dial str DI - - ----- dial number #1
611quick_dial qdial str QD - - ----- dial number #1 without checking
612tone tone str TO - - ----- select touch tone dialing
613pulse pulse str PU - - ----- select pulse dialing
614flash_hook hook str fh - - ----- flash switch hook
615fixed_pause pause str PA - - ----- pause for 2-3 seconds
616wait_tone wait str WA - - ----- wait for dial-tone
617user0 u0 str u0 - - ----- User string #0
618user1 u1 str u1 - - ----- User string #1
619user2 u2 str u2 - - ----- User string #2
620user3 u3 str u3 - - ----- User string #3
621user4 u4 str u4 - - ----- User string #4
622user5 u5 str u5 - - ----- User string #5
623user6 u6 str u6 - - ----- User string #6
624user7 u7 str u7 - - ----- User string #7
625user8 u8 str u8 - - ----- User string #8
626user9 u9 str u9 - - ----- User string #9
627#
628# NCurses extensions for keys accessible on most PC consoles
629#
630key_sup kUP str !5 KEY_SUP + ----- shifted up-arrow key
631key_sdown kDOWN str !6 KEY_SDOWN + ----- shifted down-arrow key
632key_sbackspace kBS str !7 KEY_SBACKSPACE + ----- shifted backspace key
633key_c_delete kcdelete str !8 KEY_C_DELETE + ----- control- delete-character key
634key_c_end kcend str !9 KEY_C_END + ----- control- end key
635key_c_home kchom str !0 KEY_C_HOME + ----- control- home key
636key_c_insert kcinsert str !_ KEY_C_INSERT + ----- control- insert-character key
637key_c_left kclft str %k KEY_C_LEFT + ----- control- left-arrow key
638key_c_next kcnxt str %l KEY_C_NEXT + ----- control- next key
639key_c_previous kcprv str %m KEY_C_PREVIOUS + ----- control- previous key
640key_c_print kcprt str %n KEY_C_PRINT + ----- control- print key
641key_c_right kcrit str %o KEY_C_RIGHT + ----- control- right-arrow key
642key_c_backspace kcbs str %p KEY_C_BACKSPACE + ----- control- backspace key
643key_c_up kcup str %q KEY_C_UP + ----- control- up-arrow key
644key_c_down kcdown str %r KEY_C_DOWN + ----- control- down-arrow key
645key_a_delete kadelete str %s KEY_A_DELETE + ----- alt- delete-character key
646key_a_end kaend str %t KEY_A_END + ----- alt- end key
647key_a_home kahom str %u KEY_A_HOME + ----- alt- home key
648key_a_insert kainsert str %v KEY_A_INSERT + ----- alt- insert-character key
649key_a_left kalft str %w KEY_A_LEFT + ----- alt- left-arrow key
650key_a_next kanxt str %x KEY_A_NEXT + ----- alt- next key
651key_a_previous kaprv str %y KEY_A_PREVIOUS + ----- alt- previous key
652key_a_print kaprt str %z KEY_A_PRINT + ----- alt- print key
653key_a_right karit str %! KEY_A_RIGHT + ----- alt- right-arrow key
654key_a_backspace kabs str %@ KEY_A_BACKSPACE + ----- alt- backspace key
655key_a_up kaup str %# KEY_A_UP + ----- alt- up-arrow key
656key_a_down kadown str %$ KEY_A_DOWN + ----- alt- down-arrow key
657key_a_a kaa str $a KEY_A_A + ----- alt- a key
658key_a_b kab str $b KEY_A_B + ----- alt- b key
659key_a_c kac str $c KEY_A_C + ----- alt- c key
660key_a_d kad str $d KEY_A_D + ----- alt- d key
661key_a_e kae str $e KEY_A_E + ----- alt- e key
662key_a_f kaf str $f KEY_A_F + ----- alt- f key
663key_a_g kag str $g KEY_A_G + ----- alt- g key
664key_a_h kah str $h KEY_A_H + ----- alt- h key
665key_a_i kai str $i KEY_A_I + ----- alt- i key
666key_a_j kaj str $j KEY_A_J + ----- alt- j key
667key_a_k kak str $k KEY_A_K + ----- alt- k key
668key_a_l kal str $l KEY_A_L + ----- alt- l key
669key_a_m kam str $m KEY_A_M + ----- alt- m key
670key_a_n kan str $n KEY_A_N + ----- alt- n key
671key_a_o kao str $o KEY_A_O + ----- alt- o key
672key_a_p kap str $p KEY_A_P + ----- alt- p key
673key_a_q kaq str $q KEY_A_Q + ----- alt- q key
674key_a_r kar str $r KEY_A_R + ----- alt- r key
675key_a_s kas str $s KEY_A_S + ----- alt- s key
676key_a_t kat str $t KEY_A_T + ----- alt- t key
677key_a_u kau str $u KEY_A_U + ----- alt- u key
678key_a_v kav str $v KEY_A_V + ----- alt- v key
679key_a_w kaw str $w KEY_A_W + ----- alt- w key
680key_a_x kax str $x KEY_A_X + ----- alt- x key
681key_a_y kay str $y KEY_A_Y + ----- alt- y key
682key_a_z kaz str $z KEY_A_Z + ----- alt- z key
683key_a_0 ka_0 str $0 KEY_A_0 + ----- alt- 0 key
684key_a_1 ka_1 str $1 KEY_A_1 + ----- alt- 1 key
685key_a_2 ka_2 str $2 KEY_A_2 + ----- alt- 2 key
686key_a_3 ka_3 str $3 KEY_A_3 + ----- alt- 3 key
687key_a_4 ka_4 str $4 KEY_A_4 + ----- alt- 4 key
688key_a_5 ka_5 str $5 KEY_A_5 + ----- alt- 5 key
689key_a_6 ka_6 str $6 KEY_A_6 + ----- alt- 6 key
690key_a_7 ka_7 str $7 KEY_A_7 + ----- alt- 7 key
691key_a_8 ka_8 str $8 KEY_A_8 + ----- alt- 8 key
692key_a_9 ka_9 str $9 KEY_A_9 + ----- alt- 9 key
693key_a_backtick ka_bt str $` KEY_A_BACKTICK + ----- alt- ` key
694key_a_under ka_und str $_ KEY_A_UNDER + ----- alt- _ key
695key_a_equals ka_eq str $= KEY_A_EQUALS + ----- alt- = key
696key_a_bar ka_bsl str $| KEY_A_BAR + ----- alt- | key
697key_a_lbracker ka_lbr str $[ KEY_A_LBRACKER + ----- alt- [ key
698key_a_rbracker ka_rbr str $] KEY_A_RBRACKER + ----- alt- ] key
699key_a_semi ka_semi str $; KEY_A_SEMI + ----- alt- ; key
700key_a_tick ka_tick str $' KEY_A_TICK + ----- alt- ' key
701key_a_comma ka_com str $, KEY_A_COMMA + ----- alt- , key
702key_a_dot ka_dot str $. KEY_A_DOT + ----- alt- . key
703key_a_question ka_sla str $? KEY_A_QUESTION + ----- alt- ? key
704key_a_divide ka_div str $/ KEY_A_DIVIDE + ----- alt- keypad / key
705key_a_multiply ka_mul str $* KEY_A_MULTIPLY + ----- alt- keypad * key
706key_a_add ka_add str $+ KEY_A_ADD + ----- alt- keypad + key
707key_a_subtract ka_sub str $- KEY_A_SUBTRACT + ----- alt- keypad - key
708key_a_kenter ka_kent str $< KEY_A_KENTER + ----- alt- keypad enter key
709key_a_enter ka_ent str $> KEY_A_ENTER + ----- alt- enter key
710key_c_at kcat str %% KEY_C_AT + ----- control- @ key
711key_c_divide kcdiv str %/ KEY_C_DIVIDE + ----- control- keypad / key
712key_c_multiply kcmul str %* KEY_C_MULTIPLY + ----- control- keypad * key
713key_c_add kcadd str %+ KEY_C_ADD + ----- control- keypad + key
714key_c_subtract kcsub str %- KEY_C_SUBTRACT + ----- control- keypad - key
715#
716# SVr4 added these capabilities to support color
717#
718orig_pair op str op - - ----- Set default pair to its original value
719orig_colors oc str oc - - ----- Set all color pairs to the original ones
720initialize_color initc str Ic - - ----- initialize color #1 to (#2,#3,#4)
721initialize_pair initp str Ip - - ----- Initialize color pair #1 to fg=(#2,#3,#4), bg=(#5,#6,#7)
722set_color_pair scp str sp - - ----- Set current color pair to #1
723set_foreground setf str Sf - - ----- Set foreground color #1
724set_background setb str Sb - - ----- Set background color #1
725#
726# SVr4 added these capabilities to support printers
727#
728change_char_pitch cpi str ZA - - ----- Change number of characters per inch to #1
729change_line_pitch lpi str ZB - - ----- Change number of lines per inch to #1
730change_res_horz chr str ZC - - ----- Change horizontal resolution to #1
731change_res_vert cvr str ZD - - ----- Change vertical resolution to #1
732define_char defc str ZE - - ----- Define a character #1, #2 dots wide, descender #3
733enter_doublewide_mode swidm str ZF - - ----- Enter double-wide mode
734enter_draft_quality sdrfq str ZG - - ----- Enter draft-quality mode
735enter_italics_mode sitm str ZH - - ----- Enter italic mode
736enter_leftward_mode slm str ZI - - ----- Start leftward carriage motion
737enter_micro_mode smicm str ZJ - - ----- Start micro-motion mode
738enter_near_letter_quality snlq str ZK - - ----- Enter NLQ mode
739enter_normal_quality snrmq str ZL - - ----- Enter normal-quality mode
740enter_shadow_mode sshm str ZM - - ----- Enter shadow-print mode
741enter_subscript_mode ssubm str ZN - - ----- Enter subscript mode
742enter_superscript_mode ssupm str ZO - - ----- Enter superscript mode
743enter_upward_mode sum str ZP - - ----- Start upward carriage motion
744exit_doublewide_mode rwidm str ZQ - - ----- End double-wide mode
745exit_italics_mode ritm str ZR - - ----- End italic mode
746exit_leftward_mode rlm str ZS - - ----- End left-motion mode
747exit_micro_mode rmicm str ZT - - ----- End micro-motion mode
748exit_shadow_mode rshm str ZU - - ----- End shadow-print mode
749exit_subscript_mode rsubm str ZV - - ----- End subscript mode
750exit_superscript_mode rsupm str ZW - - ----- End superscript mode
751exit_upward_mode rum str ZX - - ----- End reverse character motion
752micro_column_address mhpa str ZY - - ----- Like column_address in micro mode
753micro_down mcud1 str ZZ - - ----- Like cursor_down in micro mode
754micro_left mcub1 str Za - - ----- Like cursor_left in micro mode
755micro_right mcuf1 str Zb - - ----- Like cursor_right in micro mode
756micro_row_address mvpa str Zc - - ----- Like row_address #1 in micro mode
757micro_up mcuu1 str Zd - - ----- Like cursor_up in micro mode
758order_of_pins porder str Ze - - ----- Match software bits to print-head pins
759parm_down_micro mcud str Zf - - ----- Like parm_down_cursor in micro mode
760parm_left_micro mcub str Zg - - ----- Like parm_left_cursor in micro mode
761parm_right_micro mcuf str Zh - - ----- Like parm_right_cursor in micro mode
762parm_up_micro mcuu str Zi - - ----- Like parm_up_cursor in micro mode
763select_char_set scs str Zj - - ----- Select character set, #1
764set_bottom_margin smgb str Zk - - ----- Set bottom margin at current line
765set_bottom_margin_parm smgbp str Zl - - ----- Set bottom margin at line #1 or (if smgtp is not given) #2 lines from bottom
766set_left_margin_parm smglp str Zm - - ----- Set left (right) margin at column #1
767set_right_margin_parm smgrp str Zn - - ----- Set right margin at column #1
768set_top_margin smgt str Zo - - ----- Set top margin at current line
769set_top_margin_parm smgtp str Zp - - ----- Set top (bottom) margin at row #1
770start_bit_image sbim str Zq - - ----- Start printing bit image graphics
771start_char_set_def scsd str Zr - - ----- Start character set definition #1, with #2 characters in the set
772stop_bit_image rbim str Zs - - ----- Stop printing bit image graphics
773stop_char_set_def rcsd str Zt - - ----- End definition of character set #1
774subscript_characters subcs str Zu - - ----- List of subscriptable characters
775superscript_characters supcs str Zv - - ----- List of superscriptable characters
776these_cause_cr docr str Zw - - ----- Printing any of these characters causes CR
777zero_motion zerom str Zx - - ----- No motion for subsequent character
778#%.TE
779#%.ad
780#%
781#%The following string capabilities are present in the SVr4.0 term structure,
782#%but were originally not documented in the man page.
783#%
784#%.na
785#%.TS H
786#%center expand;
787#%c l l c
788#%c l l c
789#%lw25 lw6 lw2 lw18.
790#%\fBVariable Cap- TCap Description\fR
791#%\fBString name Code\fR
792char_set_names csnm str Zy - - ----- Produce #1'th item from list of character set names
793key_mouse kmous str Km KEY_MOUSE 0631 ----- Mouse event has occurred
794mouse_info minfo str Mi - - ----- Mouse status information
795req_mouse_pos reqmp str RQ - - ----- Request mouse position
796get_mouse getm str Gm - - ----- Curses should get button events, parameter #1 not documented.
797set_a_foreground setaf str AF - - ----- Set foreground color to #1, using ANSI escape
798set_a_background setab str AB - - ----- Set background color to #1, using ANSI escape
799pkey_plab pfxl str xl - - ----- Program function key #1 to type string #2 and show string #3
800device_type devt str dv - - ----- Indicate language/codeset support
801code_set_init csin str ci - - ----- Init sequence for multiple codesets
802set0_des_seq s0ds str s0 - - ----- Shift to codeset 0 (EUC set 0, ASCII)
803set1_des_seq s1ds str s1 - - ----- Shift to codeset 1
804set2_des_seq s2ds str s2 - - ----- Shift to codeset 2
805set3_des_seq s3ds str s3 - - ----- Shift to codeset 3
806set_lr_margin smglr str ML - - ----- Set both left and right margins to #1, #2. (ML is not in BSD termcap).
807set_tb_margin smgtb str MT - - ----- Sets both top and bottom margins to #1, #2
808bit_image_repeat birep str Xy - - ----- Repeat bit image cell #1 #2 times
809bit_image_newline binel str Zz - - ----- Move to next row of the bit image
810bit_image_carriage_return bicr str Yv - - ----- Move to beginning of same row
811color_names colornm str Yw - - ----- Give name for color #1
Steve Kondikae271bc2015-11-15 02:50:53 +0100812define_bit_image_region defbi str Yx - - ----- Define rectangular bit image region
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530813end_bit_image_region endbi str Yy - - ----- End a bit-image region
814set_color_band setcolor str Yz - - ----- Change to ribbon color #1
815set_page_length slines str YZ - - ----- Set page length to #1 lines
816#
817# SVr4 added these capabilities for direct PC-clone support
818#
819display_pc_char dispc str S1 - - ----- Display PC character #1
820enter_pc_charset_mode smpch str S2 - - ----- Enter PC character display mode
821exit_pc_charset_mode rmpch str S3 - - ----- Exit PC character display mode
822enter_scancode_mode smsc str S4 - - ----- Enter PC scancode mode
823exit_scancode_mode rmsc str S5 - - ----- Exit PC scancode mode
824pc_term_options pctrm str S6 - - ----- PC terminal options
825scancode_escape scesc str S7 - - ----- Escape for scancode emulation
826alt_scancode_esc scesa str S8 - - ----- Alternate escape for scancode emulation
827#%.TE
828#%.ad
829#%
830#%.in .8i
Steve Kondikae271bc2015-11-15 02:50:53 +0100831#%The XSI Curses standard added these hardcopy capabilities.
832#%They were used in some post-4.1 versions of System V curses,
833#%e.g., Solaris 2.5 and IRIX 6.x.
834#%Except for \fBYI\fP, the \fBncurses\fR termcap names for them are invented.
835#%According to the XSI Curses standard, they have no termcap names.
836#%If your compiled terminfo entries use these,
837#%they may not be binary-compatible with System V terminfo
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530838#%entries after SVr4.1; beware!
839#%
840#%.na
841#%.TS H
842#%center expand;
843#%c l l c
844#%c l l c
845#%lw25 lw6 lw2 lw20.
846#%\fBVariable Cap- TCap Description\fR
847#%\fBString name Code\fR
848enter_horizontal_hl_mode ehhlm str Xh - - ----- Enter horizontal highlight mode
849enter_left_hl_mode elhlm str Xl - - ----- Enter left highlight mode
850enter_low_hl_mode elohlm str Xo - - ----- Enter low highlight mode
851enter_right_hl_mode erhlm str Xr - - ----- Enter right highlight mode
852enter_top_hl_mode ethlm str Xt - - ----- Enter top highlight mode
853enter_vertical_hl_mode evhlm str Xv - - ----- Enter vertical highlight mode
854set_a_attributes sgr1 str sA - - ----- Define second set of video attributes #1-#6
Steve Kondikae271bc2015-11-15 02:50:53 +0100855set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap).
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530856#%.TE
857#%.ad
858#
859# The magic token below tells the tic compiler-generator code that all the caps
860# past it should be ignored (not written out) when dumping terminfo objects. It
861# also tells the man page table generator not to pass through following lines
862# This means we can have obsolete capabilities and pseudo-capabilities that are
863# recognized for termcap or terminfo compilation, but not output.
864#
865# %%-STOP-HERE-%%
866#
867# Don't move this casually! In fact, don't move it at all unless you're
868# either doing it to add System V or XPG4 extensions, or have decided you
869# don't care about SVr4 binary compatibility.
870#
871#############################################################################
872#
873# TERMCAP EXTENSION CAPABILITIES
874#
875# The capabilities below are either obsolete or extensions on certain systems.
876# They are not used by SVR4 terminfo. Some are used by captoinfo to translate
877# termcap sources; the rest are listed for completeness, and in case somebody
878# cares about them enough to hack in code that will translate them into
879# terminfo capabilities.
880#
881# The first part of the list is from Ross Ridge's `mytinfo' package
882# (comp.sources.unix, volume 26); the variable names and terminfo names (as
883# well as the termcap codes) match his list.
884#
885# This group of codes is not marked obsolete in 4.4BSD, but have no direct
886# terminfo equivalents. The rs capability is specially translated to terminfo
887# r2, and vice versa, if an entry does not already have an r2. Similarly,
888# i2 is translated to r3 if there is no r3 (because SV terminfo maps is to i2).
889# The ug capability is thrown away, but assumed to be whatever sg is if the
890# latter is nonzero and we're dumping in termcap format.
891#
892termcap_init2 OTi2 str i2 - - YB--- secondary initialization string
893termcap_reset OTrs str rs - - YB-G- terminal reset string
894magic_cookie_glitch_ul OTug num ug - - YBCGE number of blanks left by ul
895#
896# Obsolete termcap capabilities. Some are used for termcap translation. The
897# code uses the 'OT' prefix we put on obsolete capabilities to suppress
898# printing them in terminfo source dumps of compiled entries.
899#
900backspaces_with_bs OTbs bool bs - - YBCGE uses ^H to move left
901crt_no_scrolling OTns bool ns - - YBCG- crt cannot scroll
902no_correctly_working_cr OTnc bool nc - - YBCG- no way to go to start of line
903carriage_return_delay OTdC num dC - - YB-G- pad needed for CR
904new_line_delay OTdN num dN - - YB-G- pad needed for LF
905linefeed_if_not_lf OTnl str nl - - YBCGE use to move down
906backspace_if_not_bs OTbc str bc - - YBCGE move left, if not ^H
907#
908# GNU termcap library extensions. The GNU termcap file distributed with
909# Emacs no longer uses these, but MT showed up in pre-9.0 versions of the
910# BSD termcap file. The name clash with terminfo MT is resolved by type
911# info; MT is converted to km.
912#
913gnu_has_meta_key OTMT bool MT - - ----E has meta key
914# gnu_tab_width OTtw num tw - - ----E tab width in spaces
915#
916# GNU termcap *does* include the following extended capability, Only the
917# now-obsolete Ann Arbor terminals used it.
918#
919# gnu_change_scroll_region OTcS str cS - - ---GE alternate set scrolling region
920#
921# The following comments describe capnames so ancient that I believe no
922# software uses them any longer. Some of these have to go because they
923# clash with terminfo names in ways that cannot be resolved by type
924# information.
925#
926# These mytinfo codes are not used in the 4.4BSD curses code. They are
927# marked obsolete in the 4.4BSD manual pages.
928#
929# There is one conflict with terminfo; ma is in both. This conflict is
930# resolved by type information.
931#
932# The `ko' capability is translated by special code. It should contain a
933# comma-separated list of capabilities for which there are corresponding keys.
934# The `kn' code is accepted but ignored.
935#
936# The `ma' capability seems to have been designed to map between the rogue(2)
937# motion keys (including jkhl) and characters emitted by arrow keys on some
938# primitive pre-ANSI terminals. It's so obsolete it's fossilized...
939#
940# Here is a description of memory_lock_above and memory_unlock:
941# "You can 'freeze' data on the screen by turning on Memory Lock in a line of
942# text. All lines above the cursor's current line become locked in place on
943# the screen. Then enter data normally. When the screen fills up, any
944# further data entered forces the first line of unfrozen line text to scroll
945# under the frozen data. Lines scrolled off the screen are inserted into
946# memory immediately preceding the first frozen line." (from the HP 700/96
947# User's manual). VT100/ANSI memory lock set is \E[>2h, reset is \E[>2l.
948#
949# Applications that use terminfo are supposed to behave as though xr is
950# always true.
951#
952linefeed_is_newline OTNL bool NL - - YB--- move down with \n
953# even_parity OTEP bool EP - - -B--- terminal requires even parity
954# odd_parity OTOP bool OP - - -B--- terminal requires odd parity
955# half_duplex OTHD bool HD - - -B--- terminal is half-duplex
956# lower_case_only OTLC bool LC - - -B--- terminal has only lower case
957# upper_case_only OTUC bool UC - - -B--- terminal has only upper case
958backspace_delay OTdB num dB - - YB-G- padding required for ^H
959# form_feed_delay OTdF num dF - - -B-G- padding required for ^L
960horizontal_tab_delay OTdT num dT - - YB-G- padding required for ^I
961# vertical_tab_delay OTdV num dV - - -B--- padding required for ^V
962number_of_function_keys OTkn num kn - - -B-G- count of function keys
963other_non_function_keys OTko str ko - - -B-G- list of self-mapped keycaps
964arrow_key_map OTma str ma - - YBC-- map arrow keys rogue(1) motion keys
965# memory_lock_above OTml str ml - - -B--- lock visible screen memory above the current line
966# memory_unlock OTmu str mu - - -B--- unlock visible screen memory above the current line
967has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I
968return_does_clr_eol OTxr bool xr - - YB--- return clears the line
969# tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch
970#
971# mytinfo described this as a termcap capability, but it's not listed in the
972# 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses
973# package, like System V, behaves as though it is always true.
974#
975# rind_only_at_top OTxq bool xq - - ----- reverse index only works from top line
976#
977# University of Waterloo termcap extensions (as described in mytinfo).
978# The `xl' termcap file clashes with a terminfo name; this ambiguity cannot
979# be resolved by a type check. The descriptions are guesses from what was
980# in the mytinfo tables.
981#
982# key_interrupt_char OTki str ki - - ----- string set by interrupt key (?)
983# key_kill_char OTkk str kk - - ----- string set by kill key (?)
984# key_suspend_char OTkz str kz - - ----- string set by suspend key (?)
985# initialization_messy OTxc bool xc - - ----- initialization leaves garbage on the screen (?)
986# ind_at_bottom_does_cr OTxl bool xl - - ----- index does a carriage return
987#
988# Nonstandard capabilities unique to Ross Ridge's `mytinfo' package.
989# SR clashes with a terminfo name; this ambiguity cannot be resolved by a type
990# check.
991#
992# scroll_left OTsl1 str Sl - - ----- scroll screen leftward
993# scroll_right OTsr1 str Sr - - ----- scroll screen rightward
994# parm_scroll_left OTsl str SL - - ----- scroll screen leftward #1 characters
995# parm_scroll_right OTsr str SR - - ----- scroll screen rightward #1 characters
996#
997# The mytinfo capabilities end here.
998#
999# XENIX extensions:
1000#
1001# Xenix defined its own set of forms-drawing capabilities:
1002#
1003# cap IBM ASCII description ACS ASCII
1004# --- ----------- -------------------- ------------- ------
1005# G1 191 \277 M-? single upper right ACS_URCORNER
1006# G2 218 \332 M-Z single upper left ACS_ULCORNER
1007# G3 192 \300 M-@ single lower left ACS_LLCORNER
1008# G4 217 \331 M-Y single lower right ACS_LRCORNER
1009# G5 187 \273 M-; double upper right
1010# G6 201 \311 M-I double upper left
1011# G7 200 \310 M-H double lower left
1012# G8 188 \274 M-< double lower right
1013# GC 197 \305 M-E single intersection ACS_PLUS _ _
1014# GD 194 \302 M-B single down-tick ACS_TTEE |
1015# GH 196 \304 M-D single horizontal line ACS_HLINE
1016# GL 180 \264 M-4 single left tick ACS_RTEE -|
1017# GR 195 \303 M-C single right tick ACS_LTEE |-
1018# GU 193 \301 M-A single up tick ACS_BTEE _|_
1019# GV 179 \263 M-3 single vertical line ACS_VLINE
1020# Gc 206 \316 M-N double intersection
1021# Gd 203 \313 M-K double down tick
1022# Gh 205 \315 M-M double horizontal line
1023# Gl 204 \204 M-L double left tick
1024# Gr 185 \271 M-9 double right tick
1025# Gu 202 \312 M-J double up tick
1026# Gv 186 \272 M-: double vertical line
1027#
1028# The compiler will translate the single-line caps and discard the others
1029# (via IGNORE aliases further down). We don't want to do normal pad
1030# translation on these, they're often single-character printable ASCII
1031# strings that happen to be numerics. There's awk code in parametrized.sh
1032# that detects the acs_ prefix and uses it to suppress pad translation.
1033# These terminfo names are invented.
1034#
1035acs_ulcorner OTG2 str G2 - - ----- single upper left
1036acs_llcorner OTG3 str G3 - - ----- single lower left
1037acs_urcorner OTG1 str G1 - - ----- single upper right
1038acs_lrcorner OTG4 str G4 - - ----- single lower right
1039acs_ltee OTGR str GR - - ----- tee pointing right
1040acs_rtee OTGL str GL - - ----- tee pointing left
1041acs_btee OTGU str GU - - ----- tee pointing up
1042acs_ttee OTGD str GD - - ----- tee pointing down
1043acs_hline OTGH str GH - - ----- single horizontal line
1044acs_vline OTGV str GV - - ----- single vertical line
1045acs_plus OTGC str GC - - ----- single intersection
1046#
1047#############################################################################
1048#
1049# TERMINFO EXTENSION CAPABILITIES
1050#
1051# This section is almost all comments. What it's mainly for is to describe
1052# what capabilities need to be squeezed out to get down to the XSI Curses
1053# standard set. They are flagged with K.
1054#
1055# HP extensions
1056#
1057# These extensions follow ptr_non (replacing everything after it) in HP
1058# terminfo files. Except for memory_lock and memory_unlock, they are
1059# functionally identical to SVr4 extensions, but they make the binary format
1060# different. Grrr....
1061#
1062memory_lock meml str ml - - ----K lock memory above cursor
1063memory_unlock memu str mu - - ----K unlock memory
1064#plab_norm pln str pn - - ----- program label #1 to show string #2
1065#label_on smln str LO - - ----- turn on soft labels
1066#label_off rmln str LF - - ----- turn off soft labels
1067#key_f11 kf11 str F1 - - ----- F11 function key
1068#key_f12 kf12 str F2 - - ----- F12 function key
1069#key_f13 kf13 str F3 - - ----- F13 function key
1070#key_f14 kf14 str F4 - - ----- F14 function key
1071#key_f15 kf15 str F5 - - ----- F15 function key
1072#key_f16 kf16 str F6 - - ----- F16 function key
1073#key_f17 kf17 str F7 - - ----- F17 function key
1074#key_f18 kf18 str F8 - - ----- F18 function key
1075#key_f19 kf19 str F9 - - ----- F19 function key
1076#key_f20 kf20 str FA - - ----- F20 function key
1077#key_f21 kf21 str FB - - ----- F21 function key
1078#key_f22 kf22 str FC - - ----- F22 function key
1079#key_f23 kf23 str FD - - ----- F23 function key
1080#key_f24 kf24 str FE - - ----- F24 function key
1081#key_f25 kf25 str FF - - ----- F25 function key
1082#key_f26 kf26 str FG - - ----- F26 function key
1083#key_f27 kf27 str FH - - ----- F27 function key
1084#key_f28 kf28 str FI - - ----- F28 function key
1085#key_f29 kf29 str FJ - - ----- F29 function key
1086#key_f30 kf30 str FK - - ----- F30 function key
1087#key_f31 kf31 str FL - - ----- F31 function key
1088#key_f32 kf32 str FM - - ----- F32 function key
1089#key_f33 kf33 str FN - - ----- F33 function key
1090#key_f34 kf34 str FO - - ----- F34 function key
1091#key_f35 kf35 str FP - - ----- F35 function key
1092#key_f36 kf36 str FQ - - ----- F36 function key
1093#key_f37 kf37 str FR - - ----- F37 function key
1094#key_f38 kf38 str FS - - ----- F38 function key
1095#key_f39 kf39 str FT - - ----- F39 function key
1096#key_f40 kf40 str FU - - ----- F40 function key
1097#key_f41 kf41 str FV - - ----- F41 function key
1098#key_f42 kf42 str FW - - ----- F42 function key
1099#key_f43 kf43 str FX - - ----- F43 function key
1100#key_f44 kf44 str FY - - ----- F44 function key
1101#key_f45 kf45 str FZ - - ----- F45 function key
1102#key_f46 kf46 str Fa - - ----- F46 function key
1103#key_f47 kf47 str Fb - - ----- F47 function key
1104#key_f48 kf48 str Fc - - ----- F48 function key
1105#key_f49 kf49 str Fd - - ----- F49 function key
1106#key_f50 kf50 str Fe - - ----- F50 function key
1107#key_f51 kf51 str Ff - - ----- F51 function key
1108#key_f52 kf52 str Fg - - ----- F52 function key
1109#key_f53 kf53 str Fh - - ----- F53 function key
1110#key_f54 kf54 str Fi - - ----- F54 function key
1111#key_f55 kf55 str Fj - - ----- F55 function key
1112#key_f56 kf56 str Fk - - ----- F56 function key
1113#key_f57 kf57 str Fl - - ----- F57 function key
1114#key_f58 kf58 str Fm - - ----- F58 function key
1115#key_f59 kf59 str Fn - - ----- F59 function key
1116#key_f60 kf60 str Fo - - ----- F60 function key
1117#key_f61 kf61 str Fp - - ----- F61 function key
1118#key_f62 kf62 str Fq - - ----- F62 function key
1119#key_f63 kf63 str Fr - - ----- F63 function key
1120#
1121# IBM extensions
1122#
1123# These extensions follow ptr_non (replacing everything after it) in IBM
1124# terminfo files.
1125#
1126# The places in the box[12] capabilities correspond to acsc characters, here is
1127# the mapping:
1128#
1129# box1[0] = ACS_ULCORNER
1130# box1[1] = ACS_HLINE
1131# box1[2] = ACS_URCORNER
1132# box1[3] = ACS_VLINE
1133# box1[4] = ACS_LRCORNER
1134# box1[5] = ACS_LLCORNER
1135# box1[6] = ACS_TTEE
1136# box1[7] = ACS_RTEE
1137# box1[8] = ACS_BTEE
1138# box1[9] = ACS_LTEE
1139# box1[10] = ACS_PLUS
1140#
1141# The box2 characters are the double-line versions of these forms graphics.
1142#
1143box_chars_1 box1 str bx - - ----K box characters primary set
1144#box_chars_2 box2 str by - - ----K box characters secondary set
1145#box_attr_1 batt1 str Bx - - ----K attributes for box1
1146#box_attr_2 batt2 str By - - ----K attributes for box2
1147#color_bg_0 colb0 str d0 - - ----K background color 0
1148#color_bg_1 colb1 str d1 - - ----K background color 1
1149#color_bg_2 colb2 str d2 - - ----K background color 2
1150#color_bg_3 colb3 str d3 - - ----K background color 3
1151#color_bg_4 colb4 str d4 - - ----K background color 4
1152#color_bg_5 colb5 str d5 - - ----K background color 5
1153#color_bg_6 colb6 str d6 - - ----K background color 6
1154#color_bg_7 colb7 str d7 - - ----K background color 7
1155#color_fg_0 colf0 str c0 - - ----K foreground color 0
1156#color_fg_1 colf1 str c1 - - ----K foreground color 1
1157#color_fg_2 colf2 str c2 - - ----K foreground color 2
1158#color_fg_3 colf3 str c3 - - ----K foreground color 3
1159#color_fg_4 colf4 str c4 - - ----K foreground color 4
1160#color_fg_5 colf5 str c5 - - ----K foreground color 5
1161#color_fg_6 colf6 str c6 - - ----K foreground color 6
1162#color_fg_7 colf7 str c7 - - ----K foreground color 7
1163#font_0 font0 str f0 - - ----- select font 0
1164#font_1 font1 str f1 - - ----- select font 1
1165#font_2 font2 str f2 - - ----- select font 2
1166#font_3 font3 str f3 - - ----- select font 3
1167#font_4 font4 str f4 - - ----K select font 4
1168#font_5 font5 str f5 - - ----K select font 5
1169#font_6 font6 str f6 - - ----K select font 6
1170#font_7 font7 str f7 - - ----K select font 7
1171#key_back_tab kbtab str k0 - - ----- backtab key
1172#key_do kdo str ki - - ----K do request key
1173#key_command kcmd str kd - - ----K command-request key
1174#key_command_pane kcpn str kW - - ----K command-pane key
1175#key_end kend str kw - - ----- end key
1176#key_help khlp str kq - - ----- help key
1177#key_newline knl str nl - - ----K newline key
1178#key_next_pane knpn str kv - - ----K next-pane key
1179#key_prev_cmd kppn str kp - - ----K previous-command key
1180#key_prev_pane kppn str kV - - ----K previous-pane key
1181#key_quit kquit str kQ - - ----K quit key
1182#key_select ksel str kU - - ----- select key
1183#key_scroll_left kscl str kz - - ----K scroll left
1184#key_scroll_right kscr str kZ - - ----K scroll right
1185#key_tab ktab str ko - - ----K tab key
1186#key_smap_in1 kmpf1 str Kv - - ----K special mapped key 1 input
1187#key_smap_out1 kmpt1 str KV - - ----K special mapped key 1 output
1188#key_smap_in2 kmpf2 str Kw - - ----K special mapped key 2 input
1189#key_smap_out2 kmpt2 str KW - - ----K special mapped key 2 output
1190#key_smap_in3 kmpf3 str Kx - - ----K special mapped key 3 input
1191#key_smap_out3 kmpt3 str KX - - ----K special mapped key 3 output
1192#key_smap_in4 kmpf4 str Ky - - ----K special mapped key 4 input
1193#key_smap_out4 kmpt4 str KY - - ----K special mapped key 4 output
1194#key_smap_in5 kmpf5 str Kz - - ----K special mapped key 5 input
1195#key_smap_out5 kmpt5 str KZ - - ----K special mapped key 5 output
1196#appl_defined_str apstr str za - - ----K application-defined string
1197# The key_smap_in[6789] and key_smap_out[6789] capabilities aren't described in
1198# the IBM manual pages, so the cap name strings are guesses. The terminfo
1199# names are almost certainly right, the termcap ones almost certainly wrong.
1200#key_smap_in6 kmpf6 str k! - - ----K special mapped key 6 input
1201#key_smap_out6 kmpt6 str K@ - - ----K special mapped key 6 output
1202#key_smap_in7 kmpf7 str k# - - ----K special mapped key 7 input
1203#key_smap_out7 kmpt7 str K$ - - ----K special mapped key 7 output
1204#key_smap_in8 kmpf8 str k% - - ----K special mapped key 8 input
1205#key_smap_out8 kmpt8 str K^ - - ----K special mapped key 8 output
1206#key_smap_in9 kmpf9 str k& - - ----K special mapped key 9 input
1207#key_smap_out9 kmpt9 str K* - - ----K special mapped key 9 output
1208# Undocumented capabilities end here
1209#key_sf1 ksf1 str S1 - - ----K special function key 1
1210#key_sf2 ksf2 str S2 - - ----K special function key 2
1211#key_sf3 ksf3 str S3 - - ----K special function key 3
1212#key_sf4 ksf4 str S4 - - ----K special function key 4
1213#key_sf5 ksf5 str S5 - - ----K special function key 5
1214#key_sf6 ksf6 str S6 - - ----K special function key 6
1215#key_sf7 ksf7 str S7 - - ----K special function key 7
1216#key_sf8 ksf8 str S8 - - ----K special function key 8
1217#key_sf9 ksf9 str S9 - - ----K special function key 9
1218#key_sf10 ksf10 str SA - - ----K special function key 10
1219# AIX version 3 documents different codes for F11, F12 and does not mention
1220# F13-F64. AIX version 4 uses the same naming for F0-F63 as above.
1221#key_f11 kf11 str k< - - ----- function key 11
1222#key_f12 kf12 str k> - - ----- function key 12
1223# Undocumented capabilities end here.
1224#key_action kact str kJ - - ----K sent by action key
1225# The IBM docs say these capabilities are for table-drawing, and are
1226# valid only for aixterm descriptions.
1227#enter_topline_mode topl str tp - - ----K start top-line mode
1228#enter_bottom_mode btml str bm - - ----K start bottom-line mode
1229#enter_rvert_mode rvert str rv - - ----K start right-vertical mode
1230#enter_lvert_mode lvert str lv - - ----K start left-vertical mode
1231#
1232#############################################################################
1233#
1234# ALIAS DECLARATIONS
1235#
1236# Here we set up aliases for translating extensions into standard terminfo.
1237#
1238#---------------------------------- Termcap aliases -------------------------
1239#
1240# BSD aliases:
1241#
1242# This is a common error in many termcap files. We'll get notified during
1243# translation when this (or any other alias) fires.
1244#
1245capalias sb sr BSD scroll text down
1246#
1247# AT&T extensions:
1248#
1249# The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of
1250# nonstandard capabilities. Its signature is the KM capability, used to name
1251# some sort of keymap file. EE, BO, CI, CV, XS, DS, FL and FE are in this
1252# set. Comments in the original, and a little cross-checking with other AT&T
1253# documentation, seem to establish the following mappings:
1254#
1255capalias BO mr AT&T enter_reverse_mode
1256capalias CI vi AT&T cursor_invisible
1257capalias CV ve AT&T cursor_normal
1258capalias DS mh AT&T enter_dim_mode
1259#capalias EE me AT&T exit_attribute_mode
1260capalias FE LF AT&T label_on
1261capalias FL LO AT&T label_off
1262capalias XS mk AT&T enter_secure_mode
1263#
1264# We comment out EE because the conflicting XENIX EE is more common in
1265# old entries.
1266#
1267# XENIX extensions:
1268#
1269# These are the ones we know how to translate directly:
1270#
1271capalias EE mh XENIX exit_attribute_mode
1272capalias GE ae XENIX exit_alt_charset_mode
1273capalias GS as XENIX enter_alt_charset_mode
1274capalias CF vi XENIX cursor_invis
1275capalias CO ve XENIX cursor_normal
1276capalias EN @7 XENIX key_end
1277capalias HM kh XENIX key_home
1278capalias LD kL XENIX key_dl
1279capalias PD kN XENIX key_npage
1280capalias PN po XENIX prtr_off
1281capalias PS pf XENIX prtr_on
1282capalias PU kP XENIX key_ppage
1283capalias RT @8 XENIX kent
1284capalias UP ku XENIX kcuu1
1285capalias G6 IGNORE XENIX double-ACS_ULCORNER
1286capalias G7 IGNORE XENIX double-ACS_LLCORNER
1287capalias G5 IGNORE XENIX double-ACS_URCORNER
1288capalias G8 IGNORE XENIX double-ACS_LRCORNER
1289capalias Gr IGNORE XENIX double-ACS_LTEE
1290capalias Gr IGNORE XENIX double-ACS_RTEE
1291capalias Gu IGNORE XENIX double-ACS_BTEE
1292capalias Gd IGNORE XENIX double ACS_TTEE
1293capalias Gh IGNORE XENIX double-ACS_HLINE
1294capalias Gv IGNORE XENIX double-ACS_VLINE
1295capalias Gc IGNORE XENIX double-ACS_PLUS
1296capalias GG IGNORE XENIX acs-glitch
1297#
1298# IBM extensions:
1299#
1300capalias kq %1 IBM key_help
1301#
1302# Iris extensions:
1303#
1304capalias HS mh IRIS enter_dim_mode
1305#
1306# Tektronix extensions:
1307#
1308capalias KA k; Tek key_f10
1309capalias KB F1 Tek key_f11
1310capalias KC F2 Tek key_f12
1311capalias KD F3 Tek key_f13
1312capalias KE F4 Tek key_f14
1313capalias KF F5 Tek key_f15
1314capalias BC Sb Tek set_background
1315capalias FC Sf Tek set_foreground
1316#
1317# There are also the following:
1318#
1319# XENIX XENIX variable name name clash with terminfo?
1320# ----- ------------------- -------------------------
1321# CL key_char_left
1322# CR key_char_right
1323# CW key_change_window
1324# HP ??
1325# LF key_linefeed label_off
1326# NU key_next_unlocked_cell
1327# PL ??
1328# PR ??
1329# RC key_recalc remove_clock
1330# RF key_toggle_ref req_for_input
1331# WL key_word_left
1332# WR key_word_right
1333#
1334# If you know what any of the question-marked ones mean, please tell us.
1335#
1336#--------------------------------- Terminfo aliases ------------------------
1337#
1338# IBM extensions:
1339#
1340infoalias font0 s0ds IBM set0_des_seq
1341infoalias font1 s1ds IBM set1_des_seq
1342infoalias font2 s2ds IBM set2_des_seq
1343infoalias font3 s3ds IBM set3_des_seq
1344infoalias kbtab kcbt IBM key_backtab
1345infoalias ksel kslt IBM key_select
1346#
1347# Some others are identical to SVr4/XPG4 capabilities, in particular:
1348# kcmd, kend, khlp, and kf11...kf63.
1349#
1350#############################################################################