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