X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=include%2FCaps.osf1r5;h=beb71c342fb6dd8924867e2df229fbd1db27d750;hp=c3144c06bf039d1384f416a903da24322102045e;hb=HEAD;hpb=81c758ae6facb0256dbc8a9d1d93795dd093d683 diff --git a/include/Caps.osf1r5 b/include/Caps.osf1r5 index c3144c06..ece14aef 100644 --- a/include/Caps.osf1r5 +++ b/include/Caps.osf1r5 @@ -1,5 +1,6 @@ ############################################################################## -# Copyright (c) 2002-2016,2019 Free Software Foundation, Inc. # +# Copyright 2019-2023,2024 Thomas E. Dickey # +# Copyright 2002-2015,2016 Free Software Foundation, Inc. # # # # Permission is hereby granted, free of charge, to any person obtaining a # # copy of this software and associated documentation files (the "Software"), # @@ -28,7 +29,7 @@ # # Author: Thomas Dickey # -# $Id: Caps.osf1r5,v 1.10 2019/04/13 19:56:20 tom Exp $ +# $Id: Caps.osf1r5,v 1.24 2024/04/20 21:05:02 tom Exp $ # # This is an adaptation of ncurses' termcap/terminfo capability table, which # is designed to align with OSF/1 version 5 (Tru64) terminfo. @@ -47,7 +48,7 @@ # # Column 1: terminfo variable name # Column 2: terminfo capability name -# Column 3: capability type (boolean, numeric, or string) +# Column 3: capability type (Boolean, numeric, or string) # Column 4: termcap capability name # Column 5: KEY_xxx name, if any, `-' otherwise # Column 6: value for KEY_xxx name, if any, `-' otherwise @@ -57,7 +58,7 @@ # # The codes following [Y-] in column 7 describe the versions of termcap which # use the given capability. This information is not used by the curses library -# proper; rather, it's there to help the terminfo maintainer avoid emitting +# proper; rather, it is there to help the terminfo maintainer avoid emitting # termcap entry translations that are more than 1023 bytes long (and tank a # lot of old termcap-using programs). The codes read as follows: # B = mentioned in the BSD man page for 4.4BSD curses @@ -97,8 +98,8 @@ # 3. List it in the standard table. You almost certainly do *not* want # to do this -- the capabilities in that one, and their order, have been # carefully chosen to be SVr4-binary-compatible when they're written out -# as a terminfo object, and breaking this would be bad. It's up to the ncurses -# library what to do with the terminfo data after it's read in. +# as a terminfo object, and breaking this would be bad. It is up to the ncurses +# library what to do with the terminfo data after it is read in. # # 4. List it in the aliases table with an IGNORE target field. If you # do this, the capability will be ignored on input (though the user will @@ -107,7 +108,7 @@ # 5. List it in the extensions table. If you do this, the compiler will # silently accept the capability, but the curses library proper will never # see it (because it won't be written out as part of the terminfo object -# format). It's up to you what you have the compiler do with it. +# format). It is up to you what you have the compiler do with it. # # There are two opposite reasons to choose option 5. One is when you want # to eat the capability silently and discard it when doing translations @@ -152,63 +153,103 @@ # to buy space for non-essentials Emacs is still using. Capabilities high # on that hit list: rc, sc, uc. # +# FORMATTING THE TABLES +# +# We manually specify a (minimum) column width for the capability name +# and terminfo code columns in the tables to achieve a consistent +# arrangement; as used here, tbl(1) cannot know the width required by +# one table's data while formatting another's. +# +# The longest capability names (C variables) are +# "enter_near_letter_quality" and "bit_image_carriage_return" (tied at +# 25n), and the longest terminfo code is "setcolor" (8n). +# +# The tables are a tight fit on traditional man(7) implementations that +# use a line length of 65n, and the "Description" column has little room +# within which the formatter can make breaking or adjustment decisions. +# Words like "micro_..._address" and "parm_..._micro" don't break. +# Reducing the inter-column gaps to 2 ens gives them enough room. --GBR +# ############################################################################# # # STANDARD CAPABILITIES # -#%The following is a complete table of the capabilities included in a -#%terminfo description block and available to terminfo-using code. In each -#%line of the table, -#% -#%The \fBvariable\fR is the name by which the programmer (at the terminfo level) -#%accesses the capability. -#% -#%The \fBcapname\fR is the short name used in the text of the database, -#%and is used by a person updating the database. -#%Whenever possible, capnames are chosen to be the same as or similar to -#%the ANSI X3.64-1979 standard (now superseded by ECMA-48, which uses -#%identical or very similar names). Semantics are also intended to match -#%those of the specification. -#% -#%The termcap code is the old -#%.B termcap -#%capability name (some capabilities are new, and have names which termcap -#%did not originate). -#%.P -#%Capability names have no hard length limit, but an informal limit of 5 -#%characters has been adopted to keep them short and to allow the tabs in -#%the source file -#%.B Caps +#%Tables of capabilities +#%.I \%ncurses +#%recognizes in a +#%.I \%term\%info +#%terminal type description and available to +#%.IR \%term\%info -using +#%code follow. +#%.bP +#%The capability name identifies the symbol by which the programmer +#%using the +#%.I \%term\%info +#%API accesses the capability. +#%.bP +#%The TI +#%.RI ( \%term\%info ) +#%code is the short name used by a person composing or updating a +#%terminal type entry. +#%.IP +#%Whenever possible, +#%these codes are the same as or similar to those of the ANSI X3.64-1979 +#%standard +#%(now superseded by ECMA-48, +#%which uses identical or very similar names). +#%Semantics are also intended to match those of the specification. +#%.IP +#%.I \%term\%info +#%codes have no hard length limit, +#%but +#%.I \%ncurses +#%maintains an informal one of 5 characters to keep them short and to +#%allow the tabs in the source file +#%.I Caps #%to line up nicely. -#% -#%Finally, the description field attempts to convey the semantics of the -#%capability. You may find some codes in the description field: -#%.TP -#%(P) -#%indicates that padding may be specified +#%(Some standard codes exceed this limit regardless.) +#%.bP +#%The TC +#%.RI ( termcap ) +#%code is that used by the corresponding API of +#%.IR \%ncurses . +#%(Some capabilities are new, +#%and have names that BSD +#%.I termcap +#%did not originate.) +#%.bP +#%The description field attempts to convey the capability's semantics. +#%.PP +#%The description field employs a handful of notations. #%.TP -#%#[1-9] -#%in the description field indicates that the string is passed through tparm with -#%parms as given (#\fIi\fP). +#%.B (P) +#%indicates that padding may be specified. #%.TP -#%(P*) -#%indicates that padding may vary in proportion to the number of -#%lines affected +#%.B (P*) +#%indicates that padding may vary in proportion to the number of output +#%lines affected. #%.TP -#%(#\d\fIi\fP\u) -#%indicates the \fIi\fP\uth\d parameter. -#% +#%.BI # i +#%indicates the +#%.IR i th +#%parameter of a string capability; +#%the programmer should pass the string to \fB\%tparm\fP(3X) with the +#%parameters listed. +#%.IP +#%If the description lists no parameters, +#%passing the string to \fB\%tparm\fP(3X) may produce unexpected +#%behavior, +#%for instance if the string contains percent signs. +#%. #%.PP -#% These are the boolean capabilities: -#% -#%.na -#%.TS H -#%center expand; -#%c l l c -#%c l l c -#%lw25 lw6 lw2 lw20. -#%\fBVariable Cap- TCap Description\fR -#%\fBBooleans name Code\fR +#%.TS +#%center; +#%Lb Cb S Lb +#%Lb Lb Lb Lb +#%Lbw(25n)2 Lbw(8n)2 Lb2 Lx. +#%\& Code \& +#%Boolean Capability Name TI TC Description +#%_ auto_left_margin bw bool bw - - YB-G- cub1 wraps from column 0 to last column auto_right_margin am bool am - - YBCGE terminal has automatic margins no_esc_ctlc xsb bool xb - - YBCG- beehive (f1=escape, f2=ctrl C) @@ -247,18 +288,16 @@ prtr_silent mc5i bool 5i - - ----- printer will not echo on screen row_addr_glitch xvpa bool YD - - ----- only positive motion for vpa/mvpa caps semi_auto_right_margin sam bool YE - - ----- printing in last column causes cr #%.TE -#%.ad -#% -#%These are the numeric capabilities: -#% -#%.na -#%.TS H -#%center expand; -#%c l l c -#%c l l c -#%lw25 lw6 lw2 lw20. -#%\fBVariable Cap- TCap Description\fR -#%\fBNumeric name Code\fR +#%.PP +#%. +#%.TS +#%center; +#%Lb Cb S Lb +#%Lb Lb Lb Lb +#%Lbw(25n)2 Lbw(8n)2 Lb2 Lx. +#%\& Code \& +#%Numeric Capability Name TI TC Description +#%_ columns cols num co - - YBCGE number of columns in a line init_tabs it num it - - YB-G- tabs initially every # spaces lines lines num li - - YBCGE number of lines on screen or page @@ -293,18 +332,16 @@ output_res_vert_inch orvi num Yl - - ----- vertical resolution in units per inc print_rate cps num Ym - - ----- print rate in characters per second wide_char_size widcs num Yn - - ----- character step size when in double wide mode #%.TE -#%.ad -#% -#%These are the string capabilities: -#% -#%.na -#%.TS H -#%center expand; -#%c l l c -#%c l l c -#%lw25 lw6 lw2 lw20. -#%\fBVariable Cap- TCap Description\fR -#%\fBString name Code\fR +#%.PP +#%. +#%.TS +#%center; +#%Lb Cb S Lb +#%Lb Lb Lb Lb +#%Lbw(25n)2 Lbw(8n)2 Lb2 Lx. +#%\& Code \& +#%String Capability Name TI TC Description +#%_ back_tab cbt str bt - - YBCGE back tab (P) bell bel str bl - - YB-GE audible signal (bell) (P) carriage_return cr str cr - - YBCGE carriage return (P*) (P*) @@ -367,6 +404,10 @@ key_ctab kctab str kt KEY_CTAB 0525 -B-G-* clear-tab key key_dc kdch1 str kD KEY_DC 0512 YB-G- delete-character key key_dl kdl1 str kL KEY_DL 0510 -B-G-* delete-line key key_down kcud1 str kd KEY_DOWN 0402 YBCGE down-arrow key +#%.TE +#%.TS +#%center; +#%Lbw(25n)2 Lbw(8n)2 Lb2 Lx. key_eic krmir str kM KEY_EIC 0514 -B-G-* sent by rmir or smir in insert mode key_eol kel str kE KEY_EOL 0517 -B-G-* clear-to-end-of-line key key_eos ked str kS KEY_EOS 0516 -B-G-* clear-to-end-of-screen key @@ -429,6 +470,10 @@ prtr_on mc5 str po - - -B-G-* turn on printer repeat_char rep str rp - - YB-GE repeat char #1 #2 times (P*) reset_1string rs1 str r1 - - -B--- reset string reset_2string rs2 str r2 - - -B--- reset string +#%.TE +#%.TS +#%center; +#%Lbw(25n)2 Lbw(8n)2 Lb2 Lx. reset_3string rs3 str r3 - - -B--- reset string reset_file rf str rf - - -B--- name of reset file restore_cursor rc str rc - - YBCG- restore cursor to position of last save_cursor @@ -584,6 +629,10 @@ ena_acs enacs str eA - - ----- enable alternate char set end_bit_image_region endbi str Yy - - ----- End a bit-image region enter_am_mode smam str SA - - ----- turn on automatic margins enter_doublewide_mode swidm str ZF - - ----- Enter double-wide mode +#%.TE +#%.TS +#%center; +#%Lbw(25n)2 Lbw(8n)2 Lb2 Lx. enter_draft_quality sdrfq str ZG - - ----- Enter draft-quality mode enter_italics_mode sitm str ZH - - ----- Enter italic mode enter_leftward_mode slm str ZI - - ----- Start leftward carriage motion @@ -630,6 +679,10 @@ key_f39 kf39 str FT KEY_F(39) - ----E F39 function key key_f40 kf40 str FU KEY_F(40) - ----E F40 function key key_f41 kf41 str FV KEY_F(41) - ----E F41 function key key_f42 kf42 str FW KEY_F(42) - ----E F42 function key +#%.TE +#%.TS +#%center; +#%Lbw(25n)2 Lbw(8n)2 Lb2 Lx. key_f43 kf43 str FX KEY_F(43) - ----E F43 function key key_f44 kf44 str FY KEY_F(44) - ----E F44 function key key_f45 kf45 str FZ KEY_F(45) - ----E F45 function key @@ -668,6 +721,10 @@ key_replace krpl str &3 KEY_REPLACE 0566 ----- replace key key_restart krst str &4 KEY_RESTART 0567 ----- restart key key_resume kres str &5 KEY_RESUME 0570 ----- resume key key_save ksav str &6 KEY_SAVE 0571 ----- save key +#%.TE +#%.TS +#%center; +#%Lbw(25n)2 Lbw(8n)2 Lb2 Lx. key_sbeg kBEG str &9 KEY_SBEG 0572 ----- shifted begin key key_scancel kCAN str &0 KEY_SCANCEL 0573 ----- shifted cancel key key_scommand kCMD str *1 KEY_SCOMMAND 0574 ----- shifted command key @@ -738,7 +795,7 @@ set_clock sclk str SC - - ----- set clock, #1 hrs #2 mins #3 secs set_color_band setcolor str Yz - - ----- Change to ribbon color #1 set_color_pair scp str sp - - ----- Set current color pair to #1 set_foreground setf str Sf - - ----- Set foreground color #1 -set_left_margin smgl str ML - - ----- set left soft margin at current column. See smgl. (ML is not in BSD termcap). +set_left_margin smgl str ML - - ----- set left soft margin at current column (not in BSD \fItermcap\fP) set_left_margin_parm smglp str Zm - - ----- Set left (right) margin at column #1 set_lr_margin smglr str ML - - ----- Set both left and right margins to #1, #2. (ML is not in BSD termcap). set_page_length slines str YZ - - ----- Set page length to #1 lines @@ -851,9 +908,9 @@ gnu_has_meta_key OTMT bool MT - - ----E has meta key # comma-separated list of capabilities for which there are corresponding keys. # The `kn' code is accepted but ignored. # -# The `ma' capability seems to have been designed to map between the rogue(2) -# motion keys (including jkhl) and characters emitted by arrow keys on some -# primitive pre-ANSI terminals. It's so obsolete it's fossilized... +# The `ma' capability was a 4.0BSD feature used by vi version 2. +# It consists of pairs of characters corresponding to kl, kr, ku, kd, and kh. +# Besides being obsolete, that interpretation conflicts with max_attributes. # # Here is a description of memory_lock_above and memory_unlock: # "You can 'freeze' data on the screen by turning on Memory Lock in a line of @@ -879,14 +936,14 @@ horizontal_tab_delay OTdT num dT - - YB-G- padding required for ^I # vertical_tab_delay OTdV num dV - - -B--- padding required for ^V number_of_function_keys OTkn num kn - - -B-G- count of function keys other_non_function_keys OTko str ko - - -B-G- list of self-mapped keycaps -arrow_key_map OTma str ma - - YBC-- map arrow keys rogue(1) motion keys +arrow_key_map OTma str ma - - YBC-- map motion-keys for vi version 2 # memory_lock_above OTml str ml - - -B--- lock visible screen memory above the current line # memory_unlock OTmu str mu - - -B--- unlock visible screen memory above the current line has_hardware_tabs OTpt bool pt - - YB--- has 8-char tabs invoked with ^I return_does_clr_eol OTxr bool xr - - YB--- return clears the line # tek_4025_insert_line OTxx bool xx - - -BC-- Tektronix 4025 insert-line glitch # -# mytinfo described this as a termcap capability, but it's not listed in the +# mytinfo described this as a termcap capability, but it is not listed in the # 4.4BSD man pages, and not found in the 4.4BSD termcap file. The ncurses # package, like System V, behaves as though it is always true. #