| ############################################################################## |
| # Copyright 2019,2020 Thomas E. Dickey # |
| # # |
| # Permission is hereby granted, free of charge, to any person obtaining a # |
| # copy of this software and associated documentation files (the "Software"), # |
| # to deal in the Software without restriction, including without limitation # |
| # the rights to use, copy, modify, merge, publish, distribute, distribute # |
| # with modifications, sublicense, and/or sell copies of the Software, and to # |
| # permit persons to whom the Software is furnished to do so, subject to the # |
| # following conditions: # |
| # # |
| # The above copyright notice and this permission notice shall be included in # |
| # all copies or substantial portions of the Software. # |
| # # |
| # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # |
| # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # |
| # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # |
| # THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # |
| # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # |
| # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # |
| # DEALINGS IN THE SOFTWARE. # |
| # # |
| # Except as contained in this notice, the name(s) of the above copyright # |
| # holders shall not be used in advertising or otherwise to promote the sale, # |
| # use or other dealings in this Software without prior written # |
| # authorization. # |
| ############################################################################## |
| # |
| # Author: Thomas E. Dickey |
| # |
| # $Id: Caps-ncurses,v 1.8 2020/02/02 23:34:34 tom Exp $ |
| # |
| ############################################################################# |
| # |
| # TERMINFO EXTENSION CAPABILITIES |
| # |
| # This section is all comments (selected lines are copied/uncommented into |
| # specific "Caps" files). The section describes what capabilities need to be |
| # squeezed out to get down to the XSI Curses standard set. They are flagged |
| # with K. |
| # |
| # HP extensions |
| # |
| # These extensions follow ptr_non (replacing everything after it) in HP |
| # terminfo files. Except for memory_lock and memory_unlock, they are |
| # functionally identical to SVr4 extensions, but they make the binary format |
| # different. Grrr.... |
| # |
| #memory_lock meml str ml - - ----K lock memory above cursor |
| #memory_unlock memu str mu - - ----K unlock memory |
| #plab_norm pln str pn - - ----- program label #1 to show string #2 |
| #label_on smln str LO - - ----- turn on soft labels |
| #label_off rmln str LF - - ----- turn off soft labels |
| #key_f11 kf11 str F1 - - ----- F11 function key |
| #key_f12 kf12 str F2 - - ----- F12 function key |
| #key_f13 kf13 str F3 - - ----- F13 function key |
| #key_f14 kf14 str F4 - - ----- F14 function key |
| #key_f15 kf15 str F5 - - ----- F15 function key |
| #key_f16 kf16 str F6 - - ----- F16 function key |
| #key_f17 kf17 str F7 - - ----- F17 function key |
| #key_f18 kf18 str F8 - - ----- F18 function key |
| #key_f19 kf19 str F9 - - ----- F19 function key |
| #key_f20 kf20 str FA - - ----- F20 function key |
| #key_f21 kf21 str FB - - ----- F21 function key |
| #key_f22 kf22 str FC - - ----- F22 function key |
| #key_f23 kf23 str FD - - ----- F23 function key |
| #key_f24 kf24 str FE - - ----- F24 function key |
| #key_f25 kf25 str FF - - ----- F25 function key |
| #key_f26 kf26 str FG - - ----- F26 function key |
| #key_f27 kf27 str FH - - ----- F27 function key |
| #key_f28 kf28 str FI - - ----- F28 function key |
| #key_f29 kf29 str FJ - - ----- F29 function key |
| #key_f30 kf30 str FK - - ----- F30 function key |
| #key_f31 kf31 str FL - - ----- F31 function key |
| #key_f32 kf32 str FM - - ----- F32 function key |
| #key_f33 kf33 str FN - - ----- F33 function key |
| #key_f34 kf34 str FO - - ----- F34 function key |
| #key_f35 kf35 str FP - - ----- F35 function key |
| #key_f36 kf36 str FQ - - ----- F36 function key |
| #key_f37 kf37 str FR - - ----- F37 function key |
| #key_f38 kf38 str FS - - ----- F38 function key |
| #key_f39 kf39 str FT - - ----- F39 function key |
| #key_f40 kf40 str FU - - ----- F40 function key |
| #key_f41 kf41 str FV - - ----- F41 function key |
| #key_f42 kf42 str FW - - ----- F42 function key |
| #key_f43 kf43 str FX - - ----- F43 function key |
| #key_f44 kf44 str FY - - ----- F44 function key |
| #key_f45 kf45 str FZ - - ----- F45 function key |
| #key_f46 kf46 str Fa - - ----- F46 function key |
| #key_f47 kf47 str Fb - - ----- F47 function key |
| #key_f48 kf48 str Fc - - ----- F48 function key |
| #key_f49 kf49 str Fd - - ----- F49 function key |
| #key_f50 kf50 str Fe - - ----- F50 function key |
| #key_f51 kf51 str Ff - - ----- F51 function key |
| #key_f52 kf52 str Fg - - ----- F52 function key |
| #key_f53 kf53 str Fh - - ----- F53 function key |
| #key_f54 kf54 str Fi - - ----- F54 function key |
| #key_f55 kf55 str Fj - - ----- F55 function key |
| #key_f56 kf56 str Fk - - ----- F56 function key |
| #key_f57 kf57 str Fl - - ----- F57 function key |
| #key_f58 kf58 str Fm - - ----- F58 function key |
| #key_f59 kf59 str Fn - - ----- F59 function key |
| #key_f60 kf60 str Fo - - ----- F60 function key |
| #key_f61 kf61 str Fp - - ----- F61 function key |
| #key_f62 kf62 str Fq - - ----- F62 function key |
| #key_f63 kf63 str Fr - - ----- F63 function key |
| # |
| # IBM extensions |
| # |
| # These extensions follow ptr_non (replacing everything after it) in IBM |
| # terminfo files. |
| # |
| # The places in the box[12] capabilities correspond to acsc characters, here is |
| # the mapping: |
| # |
| # box1[0] = ACS_ULCORNER |
| # box1[1] = ACS_HLINE |
| # box1[2] = ACS_URCORNER |
| # box1[3] = ACS_VLINE |
| # box1[4] = ACS_LRCORNER |
| # box1[5] = ACS_LLCORNER |
| # box1[6] = ACS_TTEE |
| # box1[7] = ACS_RTEE |
| # box1[8] = ACS_BTEE |
| # box1[9] = ACS_LTEE |
| # box1[10] = ACS_PLUS |
| # |
| # The box2 characters are the double-line versions of these forms graphics. |
| # |
| #box_chars_1 box1 str bx - - ----K box characters primary set |
| #box_chars_2 box2 str by - - ----K box characters secondary set |
| #box_attr_1 batt1 str Bx - - ----K attributes for box1 |
| #box_attr_2 batt2 str By - - ----K attributes for box2 |
| #color_bg_0 colb0 str d0 - - ----K background color 0 |
| #color_bg_1 colb1 str d1 - - ----K background color 1 |
| #color_bg_2 colb2 str d2 - - ----K background color 2 |
| #color_bg_3 colb3 str d3 - - ----K background color 3 |
| #color_bg_4 colb4 str d4 - - ----K background color 4 |
| #color_bg_5 colb5 str d5 - - ----K background color 5 |
| #color_bg_6 colb6 str d6 - - ----K background color 6 |
| #color_bg_7 colb7 str d7 - - ----K background color 7 |
| #color_fg_0 colf0 str c0 - - ----K foreground color 0 |
| #color_fg_1 colf1 str c1 - - ----K foreground color 1 |
| #color_fg_2 colf2 str c2 - - ----K foreground color 2 |
| #color_fg_3 colf3 str c3 - - ----K foreground color 3 |
| #color_fg_4 colf4 str c4 - - ----K foreground color 4 |
| #color_fg_5 colf5 str c5 - - ----K foreground color 5 |
| #color_fg_6 colf6 str c6 - - ----K foreground color 6 |
| #color_fg_7 colf7 str c7 - - ----K foreground color 7 |
| #font_0 font0 str f0 - - ----- select font 0 |
| #font_1 font1 str f1 - - ----- select font 1 |
| #font_2 font2 str f2 - - ----- select font 2 |
| #font_3 font3 str f3 - - ----- select font 3 |
| #font_4 font4 str f4 - - ----K select font 4 |
| #font_5 font5 str f5 - - ----K select font 5 |
| #font_6 font6 str f6 - - ----K select font 6 |
| #font_7 font7 str f7 - - ----K select font 7 |
| #key_back_tab kbtab str k0 - - ----- backtab key |
| #key_do kdo str ki - - ----K do request key |
| #key_command kcmd str kd - - ----K command-request key |
| #key_command_pane kcpn str kW - - ----K command-pane key |
| #key_end kend str kw - - ----- end key |
| #key_help khlp str kq - - ----- help key |
| #key_newline knl str nl - - ----K newline key |
| #key_next_pane knpn str kv - - ----K next-pane key |
| #key_prev_cmd kppn str kp - - ----K previous-command key |
| #key_prev_pane kppn str kV - - ----K previous-pane key |
| #key_quit kquit str kQ - - ----K quit key |
| #key_select ksel str kU - - ----- select key |
| #key_scroll_left kscl str kz - - ----K scroll left |
| #key_scroll_right kscr str kZ - - ----K scroll right |
| #key_tab ktab str ko - - ----K tab key |
| #key_smap_in1 kmpf1 str Kv - - ----K special mapped key 1 input |
| #key_smap_out1 kmpt1 str KV - - ----K special mapped key 1 output |
| #key_smap_in2 kmpf2 str Kw - - ----K special mapped key 2 input |
| #key_smap_out2 kmpt2 str KW - - ----K special mapped key 2 output |
| #key_smap_in3 kmpf3 str Kx - - ----K special mapped key 3 input |
| #key_smap_out3 kmpt3 str KX - - ----K special mapped key 3 output |
| #key_smap_in4 kmpf4 str Ky - - ----K special mapped key 4 input |
| #key_smap_out4 kmpt4 str KY - - ----K special mapped key 4 output |
| #key_smap_in5 kmpf5 str Kz - - ----K special mapped key 5 input |
| #key_smap_out5 kmpt5 str KZ - - ----K special mapped key 5 output |
| #appl_defined_str apstr str za - - ----K application-defined string |
| # The key_smap_in[6789] and key_smap_out[6789] capabilities aren't described in |
| # the IBM manual pages, so the cap name strings are guesses. The terminfo |
| # names are almost certainly right, the termcap ones almost certainly wrong. |
| #key_smap_in6 kmpf6 str k! - - ----K special mapped key 6 input |
| #key_smap_out6 kmpt6 str K@ - - ----K special mapped key 6 output |
| #key_smap_in7 kmpf7 str k# - - ----K special mapped key 7 input |
| #key_smap_out7 kmpt7 str K$ - - ----K special mapped key 7 output |
| #key_smap_in8 kmpf8 str k% - - ----K special mapped key 8 input |
| #key_smap_out8 kmpt8 str K^ - - ----K special mapped key 8 output |
| #key_smap_in9 kmpf9 str k& - - ----K special mapped key 9 input |
| #key_smap_out9 kmpt9 str K* - - ----K special mapped key 9 output |
| # Undocumented capabilities end here |
| #key_sf1 ksf1 str S1 - - ----K special function key 1 |
| #key_sf2 ksf2 str S2 - - ----K special function key 2 |
| #key_sf3 ksf3 str S3 - - ----K special function key 3 |
| #key_sf4 ksf4 str S4 - - ----K special function key 4 |
| #key_sf5 ksf5 str S5 - - ----K special function key 5 |
| #key_sf6 ksf6 str S6 - - ----K special function key 6 |
| #key_sf7 ksf7 str S7 - - ----K special function key 7 |
| #key_sf8 ksf8 str S8 - - ----K special function key 8 |
| #key_sf9 ksf9 str S9 - - ----K special function key 9 |
| #key_sf10 ksf10 str SA - - ----K special function key 10 |
| # AIX version 3 documents different codes for F11, F12 and does not mention |
| # F13-F64. AIX version 4 uses the same naming for F0-F63 as above. |
| #key_f11 kf11 str k< - - ----- function key 11 |
| #key_f12 kf12 str k> - - ----- function key 12 |
| # Undocumented capabilities end here. |
| #key_action kact str kJ - - ----K sent by action key |
| # The IBM docs say these capabilities are for table-drawing, and are |
| # valid only for aixterm descriptions. |
| #enter_topline_mode topl str tp - - ----K start top-line mode |
| #enter_bottom_mode btml str bm - - ----K start bottom-line mode |
| #enter_rvert_mode rvert str rv - - ----K start right-vertical mode |
| #enter_lvert_mode lvert str lv - - ----K start left-vertical mode |
| # |
| ############################################################################# |
| # |
| # ALIAS DECLARATIONS |
| # |
| # Here we set up aliases for translating extensions into standard terminfo. |
| # |
| #---------------------------------- Termcap aliases ------------------------- |
| # |
| # BSD aliases: |
| # |
| # This is a common error in many termcap files. We'll get notified during |
| # translation when this (or any other alias) fires. |
| # |
| capalias sb sr BSD scroll text down |
| # |
| # AT&T extensions: |
| # |
| # The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of |
| # nonstandard capabilities. Its signature is the KM capability, used to name |
| # some sort of keymap file. EE, BO, CI, CV, XS, DS, FL and FE are in this |
| # set. Comments in the original, and a little cross-checking with other AT&T |
| # documentation, seem to establish the following mappings: |
| # |
| capalias BO mr AT&T enter_reverse_mode |
| capalias CI vi AT&T cursor_invisible |
| capalias CV ve AT&T cursor_normal |
| capalias DS mh AT&T enter_dim_mode |
| #capalias EE me AT&T exit_attribute_mode |
| capalias FE LF AT&T label_on |
| capalias FL LO AT&T label_off |
| capalias XS mk AT&T enter_secure_mode |
| # |
| # We comment out EE because the conflicting XENIX EE is more common in |
| # old entries. |
| # |
| # XENIX extensions: |
| # |
| # These are the ones we know how to translate directly: |
| # |
| capalias EE mh XENIX exit_attribute_mode |
| capalias GE ae XENIX exit_alt_charset_mode |
| capalias GS as XENIX enter_alt_charset_mode |
| capalias CF vi XENIX cursor_invis |
| capalias CO ve XENIX cursor_normal |
| capalias EN @7 XENIX key_end |
| capalias HM kh XENIX key_home |
| capalias LD kL XENIX key_dl |
| capalias PD kN XENIX key_npage |
| capalias PN po XENIX prtr_off |
| capalias PS pf XENIX prtr_on |
| capalias PU kP XENIX key_ppage |
| capalias RT @8 XENIX kent |
| capalias UP ku XENIX kcuu1 |
| capalias G6 IGNORE XENIX double-ACS_ULCORNER |
| capalias G7 IGNORE XENIX double-ACS_LLCORNER |
| capalias G5 IGNORE XENIX double-ACS_URCORNER |
| capalias G8 IGNORE XENIX double-ACS_LRCORNER |
| capalias Gr IGNORE XENIX double-ACS_LTEE |
| capalias Gr IGNORE XENIX double-ACS_RTEE |
| capalias Gu IGNORE XENIX double-ACS_BTEE |
| capalias Gd IGNORE XENIX double ACS_TTEE |
| capalias Gh IGNORE XENIX double-ACS_HLINE |
| capalias Gv IGNORE XENIX double-ACS_VLINE |
| capalias Gc IGNORE XENIX double-ACS_PLUS |
| capalias GG IGNORE XENIX acs-glitch |
| # |
| # IBM extensions: |
| # |
| capalias kq %1 IBM key_help |
| # |
| # Iris extensions: |
| # |
| capalias HS mh IRIS enter_dim_mode |
| # |
| # Tektronix extensions: |
| # |
| capalias KA k; Tek key_f10 |
| capalias KB F1 Tek key_f11 |
| capalias KC F2 Tek key_f12 |
| capalias KD F3 Tek key_f13 |
| capalias KE F4 Tek key_f14 |
| capalias KF F5 Tek key_f15 |
| capalias BC Sb Tek set_background |
| capalias FC Sf Tek set_foreground |
| # |
| # There are also the following: |
| # |
| # XENIX XENIX variable name name clash with terminfo? |
| # ----- ------------------- ------------------------- |
| # CL key_char_left |
| # CR key_char_right |
| # CW key_change_window |
| # HP ?? |
| # LF key_linefeed label_off |
| # NU key_next_unlocked_cell |
| # PL ?? |
| # PR ?? |
| # RC key_recalc remove_clock |
| # RF key_toggle_ref req_for_input |
| # WL key_word_left |
| # WR key_word_right |
| # |
| # If you know what any of the question-marked ones mean, please tell us. |
| # |
| #--------------------------------- Terminfo aliases ------------------------ |
| # |
| # IBM extensions: |
| # |
| infoalias font0 s0ds IBM set0_des_seq |
| infoalias font1 s1ds IBM set1_des_seq |
| infoalias font2 s2ds IBM set2_des_seq |
| infoalias font3 s3ds IBM set3_des_seq |
| infoalias kbtab kcbt IBM key_backtab |
| infoalias ksel kslt IBM key_select |
| # |
| # Some others are identical to SVr4/XPG4 capabilities, in particular: |
| # kcmd, kend, khlp, and kf11...kf63. |
| # |
| ############################################################################# |
| # This is a table of ncurses user-definable capabilities which applications |
| # developers may have used. ncurses may use the table to check consistency of |
| # types/parameters. Applications may have defined others (such as screen's |
| # LP and NF), but where a standard capability is available, those alternatives |
| # are not listed here. |
| # |
| used_by ncurses |
| userdef E3 str - clears the terminal's scrollback buffer. |
| userdef RGB bool - use direct colors with 1/3 of color-pair bits per color. |
| userdef RGB num n use direct colors with given number of bits per color. |
| userdef RGB str - use direct colors with given bit-layout. |
| userdef TS str - like "tsl", but uses no parameter. |
| userdef U8 num n terminal does/does not support VT100 SI/SO when processing UTF-8 encoding. |
| userdef XM str n initialize alternate xterm mouse mode |
| userdef grbom str - disable real bold (not intensity bright) mode. |
| userdef gsbom str - enable real bold (not intensity bright) mode. |
| userdef xm str - mouse response, no parameters |
| userdef xm str n mouse response, p1 = y-ordinate |
| userdef xm str nn mouse response, p2 = x-ordinate |
| userdef xm str nnn mouse response, p3 = button |
| userdef xm str nnns mouse response, p4 = state, e.g., pressed or released |
| userdef xm str nnnsn mouse response, p5 = y-ordinate starting region |
| userdef xm str nnnsnn mouse response, p6 = x-ordinate starting region |
| userdef xm str nnnsnnn mouse response, p7 = y-ordinate ending region |
| userdef xm str nnnsnnnn mouse response, p8 = x-ordinate ending region |
| # |
| used_by screen |
| userdef AN bool - turn on autonuke. |
| userdef AX bool - understands ANSI set default fg/bg color (\E[39m / \E[49m). |
| userdef C0 str - use the string as a conversion table for font '0', like acsc. |
| userdef C8 bool - terminal shows bold as high-intensity colors. |
| userdef CE str - switch cursor-keys back to normal mode. |
| userdef CS str - switch cursor-keys to application mode. |
| userdef E0 str - switch charset 'G0' back to standard charset. Default is '\E(B'. |
| userdef G0 bool - terminal can deal with ISO 2022 font selection sequences. |
| userdef KJ str s set the encoding of the terminal. |
| userdef OL num n set the screen program's output buffer limit. |
| userdef S0 str s switch charset 'G0' to the specified charset. Default is '\E(%.'. |
| userdef TF bool - add missing capabilities to screen's termcap/info entry. (Set by default). |
| userdef WS str nn resize display. This capability has the desired width and height as arguments. SunView(tm) example: '\E[8;%d;%dt'. |
| userdef XC str s describe a translation of characters to strings depending on the current font. |
| userdef XT bool - terminal understands special xterm sequences (OSC, mouse tracking). |
| userdef Z0 str - change width to 132 columns. |
| userdef Z1 str - change width to 80 columns. |
| # |
| used_by tmux |
| userdef Cr str - restore the default cursor color. |
| userdef Cs str s set the cursor color. |
| userdef Csr str n change the cursor style, overriding Ss. |
| userdef Ms str ss store the current buffer in the host terminal's selection (clipboard). |
| userdef Se str - reset the cursor style to the terminal initial state. |
| userdef Smulx str n modify the appearance of underlines in VTE. |
| userdef Ss str n change the cursor style. |
| userdef rmxx str - reset ECMA-48 strikeout/crossed-out attributes. |
| userdef smxx str - set ECMA-48 strikeout/crossed-out attributes. |
| # |
| used_by xterm |
| userdef kDC3 str - alt delete-character |
| userdef kDC4 str - shift+alt delete-character |
| userdef kDC5 str - control delete-character |
| userdef kDC6 str - shift+control delete-character |
| userdef kDC7 str - alt+control delete-character |
| userdef kDN str - shift down-cursor |
| userdef kDN3 str - alt down-cursor |
| userdef kDN4 str - shift+alt down-cursor |
| userdef kDN5 str - control down-cursor |
| userdef kDN6 str - shift+control down-cursor |
| userdef kDN7 str - alt+control down-cursor |
| userdef kEND3 str - alt end |
| userdef kEND4 str - shift+alt end |
| userdef kEND5 str - control end |
| userdef kEND6 str - shift+control end |
| userdef kEND7 str - alt+control end |
| userdef kHOM3 str - alt home |
| userdef kHOM4 str - shift+alt home |
| userdef kHOM5 str - control home |
| userdef kHOM6 str - shift+control home |
| userdef kHOM7 str - alt+control home |
| userdef kIC3 str - alt insert-character |
| userdef kIC4 str - shift+alt insert-character |
| userdef kIC5 str - control insert-character |
| userdef kIC6 str - shift+control insert-character |
| userdef kIC7 str - alt+control insert-character |
| userdef kLFT3 str - alt left-cursor |
| userdef kLFT4 str - shift+alt left-cursor |
| userdef kLFT5 str - control left-cursor |
| userdef kLFT6 str - shift+control left-cursor |
| userdef kLFT7 str - alt+control left-cursor |
| userdef kNXT3 str - alt next |
| userdef kNXT4 str - shift+alt next |
| userdef kNXT5 str - control next |
| userdef kNXT6 str - shift+control next |
| userdef kNXT7 str - alt+control next |
| userdef kPRV3 str - alt previous |
| userdef kPRV4 str - shift+alt previous |
| userdef kPRV5 str - control previous |
| userdef kPRV6 str - shift+control previous |
| userdef kPRV7 str - alt+control previous |
| userdef kRIT3 str - alt right-cursor |
| userdef kRIT4 str - shift+alt right-cursor |
| userdef kRIT5 str - control right-cursor |
| userdef kRIT6 str - shift+control right-cursor |
| userdef kRIT7 str - alt+control right-cursor |
| userdef kUP str - shift up-cursor |
| userdef kUP3 str - alt up-cursor |
| userdef kUP4 str - shift+alt up-cursor |
| userdef kUP5 str - control up-cursor |
| userdef kUP6 str - shift+control up-cursor |
| userdef kUP7 str - alt+control up-cursor |
| userdef ka2 str - vt220-keypad extensions |
| userdef kb1 str - vt220-keypad extensions |
| userdef kb3 str - vt220-keypad extensions |
| userdef kc2 str - vt220-keypad extensions |
| ############################################################################# |