1afe61c15SRodney W. Grimes.\" Copyright (c) 1985, 1991, 1993, 1994 2afe61c15SRodney W. Grimes.\" The Regents of the University of California. All rights reserved. 3afe61c15SRodney W. Grimes.\" 4afe61c15SRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without 5afe61c15SRodney W. Grimes.\" modification, are permitted provided that the following conditions 6afe61c15SRodney W. Grimes.\" are met: 7afe61c15SRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright 8afe61c15SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer. 9afe61c15SRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright 10afe61c15SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer in the 11afe61c15SRodney W. Grimes.\" documentation and/or other materials provided with the distribution. 12dda5b397SEitan Adler.\" 3. Neither the name of the University nor the names of its contributors 13afe61c15SRodney W. Grimes.\" may be used to endorse or promote products derived from this software 14afe61c15SRodney W. Grimes.\" without specific prior written permission. 15afe61c15SRodney W. Grimes.\" 16afe61c15SRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 17afe61c15SRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18afe61c15SRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19afe61c15SRodney W. Grimes.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 20afe61c15SRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21afe61c15SRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22afe61c15SRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23afe61c15SRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24afe61c15SRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25afe61c15SRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26afe61c15SRodney W. Grimes.\" SUCH DAMAGE. 27afe61c15SRodney W. Grimes.\" 28d29578eaSAndrey A. Chernov.\" /*************************************************************************** 29d29578eaSAndrey A. Chernov.\" * COPYRIGHT NOTICE * 30d29578eaSAndrey A. Chernov.\" **************************************************************************** 31d29578eaSAndrey A. Chernov.\" * ncurses is copyright (C) 1992-1995 * 32d29578eaSAndrey A. Chernov.\" * Zeyd M. Ben-Halim * 33d29578eaSAndrey A. Chernov.\" * zmbenhal@netcom.com * 34d29578eaSAndrey A. Chernov.\" * Eric S. Raymond * 35d29578eaSAndrey A. Chernov.\" * esr@snark.thyrsus.com * 36d29578eaSAndrey A. Chernov.\" * * 37d29578eaSAndrey A. Chernov.\" * Permission is hereby granted to reproduce and distribute ncurses * 38d29578eaSAndrey A. Chernov.\" * by any means and for any fee, whether alone or as part of a * 39d29578eaSAndrey A. Chernov.\" * larger distribution, in source or in binary form, PROVIDED * 40d29578eaSAndrey A. Chernov.\" * this notice is included with any such distribution, and is not * 41d29578eaSAndrey A. Chernov.\" * removed from any of its header files. Mention of ncurses in any * 42d29578eaSAndrey A. Chernov.\" * applications linked with it is highly appreciated. * 43d29578eaSAndrey A. Chernov.\" * * 44d29578eaSAndrey A. Chernov.\" * ncurses comes AS IS with no warranty, implied or expressed. * 45d29578eaSAndrey A. Chernov.\" * * 46d29578eaSAndrey A. Chernov.\" ***************************************************************************/ 47d29578eaSAndrey A. Chernov.\" 489190ba05SDoug Barton.Dd December 13, 2009 49afe61c15SRodney W. Grimes.Dt TERMCAP 5 503d45e180SRuslan Ermilov.Os 51afe61c15SRodney W. Grimes.Sh NAME 52afe61c15SRodney W. Grimes.Nm termcap 53afe61c15SRodney W. Grimes.Nd terminal capability data base 54afe61c15SRodney W. Grimes.Sh SYNOPSIS 5536ab9525SJohn-Mark Gurney.Nm 56afe61c15SRodney W. Grimes.Sh DESCRIPTION 57afe61c15SRodney W. GrimesThe 5836ab9525SJohn-Mark Gurney.Nm 59afe61c15SRodney W. Grimesfile 60afe61c15SRodney W. Grimesis a data base describing terminals, 61afe61c15SRodney W. Grimesused, 62afe61c15SRodney W. Grimesfor example, 63afe61c15SRodney W. Grimesby 64afe61c15SRodney W. Grimes.Xr \&vi 1 65afe61c15SRodney W. Grimesand 66436aece8SNik Clayton.Xr ncurses 3 . 67afe61c15SRodney W. GrimesTerminals are described in 6836ab9525SJohn-Mark Gurney.Nm 69afe61c15SRodney W. Grimesby giving a set of capabilities that they have and by describing 70afe61c15SRodney W. Grimeshow operations are performed. 71afe61c15SRodney W. GrimesPadding requirements and initialization sequences 72afe61c15SRodney W. Grimesare included in 734b66483fSRuslan Ermilov.Nm . 74afe61c15SRodney W. Grimes.Pp 75afe61c15SRodney W. GrimesEntries in 7636ab9525SJohn-Mark Gurney.Nm 77afe61c15SRodney W. Grimesconsist of a number of `:'-separated fields. 78afe61c15SRodney W. GrimesThe first entry for each terminal gives the names that are known for the 79afe61c15SRodney W. Grimesterminal, separated by `|' characters. 80afe61c15SRodney W. GrimesThe first name given is the most common abbreviation for the terminal. 81afe61c15SRodney W. GrimesThe last name given should be a long name fully identifying the terminal, 82afe61c15SRodney W. Grimesand all others are understood as synonyms for the terminal name. 83afe61c15SRodney W. GrimesAll names but the last should be in lower case and contain no blanks; 84afe61c15SRodney W. Grimesthe last name may well contain upper case characters and blanks for 85afe61c15SRodney W. Grimesreadability. 86afe61c15SRodney W. Grimes.Pp 87afe61c15SRodney W. GrimesTerminal names (except for the last, verbose entry) 88afe61c15SRodney W. Grimesshould be chosen using the following conventions. 89afe61c15SRodney W. GrimesThe particular piece of hardware making up the terminal 90afe61c15SRodney W. Grimesshould have a root name chosen, thus 91afe61c15SRodney W. Grimes.Dq hp2621 92afe61c15SRodney W. GrimesThis name should not contain hyphens. 93afe61c15SRodney W. GrimesModes that the hardware can be in 94afe61c15SRodney W. Grimesor user preferences 95afe61c15SRodney W. Grimesshould be indicated by appending a hyphen and an indicator of the mode. 96afe61c15SRodney W. GrimesTherefore, a 97afe61c15SRodney W. Grimes.Dq vt100 98afe61c15SRodney W. Grimesin 132-column mode would be 99afe61c15SRodney W. Grimes.Dq vt100-w . 100afe61c15SRodney W. GrimesThe following suffixes should be used where possible: 10146eea498SRuslan Ermilov.Bl -column indent "With automatic margins (usually default)xx" -offset indent 1023136363fSRuslan Ermilov.Sy "Suffix Meaning Example" 103afe61c15SRodney W. Grimes-w Wide mode (more than 80 columns) vt100-w 104afe61c15SRodney W. Grimes-am With automatic margins (usually default) vt100-am 105afe61c15SRodney W. Grimes-nam Without automatic margins vt100-nam 106afe61c15SRodney W. Grimes.Pf \- Ar n Ta No "Number of lines on screen aaa-60" 107afe61c15SRodney W. Grimes-na No arrow keys (leave them in local) concept100-na 108afe61c15SRodney W. Grimes.Pf \- Ar \&np Ta No "Number of pages of memory concept100-4p" 109afe61c15SRodney W. Grimes-rv Reverse video concept100-rv 110afe61c15SRodney W. Grimes.El 111afe61c15SRodney W. Grimes.Sh CAPABILITIES 112d29578eaSAndrey A. ChernovThe description field attempts to convey the semantics of the 1136d249eeeSSheldon Hearncapability. 1146d249eeeSSheldon HearnYou may find some codes in the description field: 115d29578eaSAndrey A. Chernov.Bl -tag -width #[1-9] 116d29578eaSAndrey A. Chernov.It (P) 117d29578eaSAndrey A. Chernovindicates that padding may be specified. 118d29578eaSAndrey A. Chernov.It #[1-9] 119d29578eaSAndrey A. Chernovin the description field indicates that the string is passed through 120c2d6966aSPhilippe Charnier.Xr tparm 3 121d29578eaSAndrey A. Chernovor 122c2d6966aSPhilippe Charnier.Xr tgoto 3 123d29578eaSAndrey A. Chernovwith parms as given (#\fIi\fP). 124d29578eaSAndrey A. Chernov.It (P*) 125d29578eaSAndrey A. Chernovindicates that padding may vary in proportion to the number of 126d29578eaSAndrey A. Chernovlines affected. 127d29578eaSAndrey A. Chernov.It (#\d\fIi\fP\u) 128d29578eaSAndrey A. Chernovindicates the \fIi\fP\uth\d parameter. 129d29578eaSAndrey A. Chernov.El 130d29578eaSAndrey A. Chernov.Pp 131d29578eaSAndrey A. ChernovThese are the boolean capabilities: 132d29578eaSAndrey A. Chernov.Bd -literal 133d29578eaSAndrey A. Chernov\fBBoolean TCap Description\fR 134d29578eaSAndrey A. Chernov\fBVariables Code\fR 135d29578eaSAndrey A. Chernovauto_left_margin bw cursor_left wraps from column 0 to last 136d29578eaSAndrey A. Chernov column 137d29578eaSAndrey A. Chernovauto_right_margin am terminal has automatic margins 138d29578eaSAndrey A. Chernovno_esc_ctlc xb beehive (f1=escape, f2=ctrl C) 139d29578eaSAndrey A. Chernovceol_standout_glitch xs standout not erased by overwriting (hp) 140d29578eaSAndrey A. Chernoveat_newline_glitch xn newline ignored after 80 cols (concept) 141d29578eaSAndrey A. Chernoverase_overstrike eo can erase overstrikes with a blank 142d29578eaSAndrey A. Chernovgeneric_type gn generic line type 143d29578eaSAndrey A. Chernovhard_copy hc hardcopy terminal 144d29578eaSAndrey A. Chernovhas_meta_key km Has a meta key, sets msb high 145d29578eaSAndrey A. Chernovhas_status_line hs has extra status line 146d29578eaSAndrey A. Chernovinsert_null_glitch in insert mode distinguishes nulls 147d29578eaSAndrey A. Chernovmemory_above da display may be retained above the screen 148d29578eaSAndrey A. Chernovmemory_below db display may be retained below the screen 149d29578eaSAndrey A. Chernovmove_insert_mode mi safe to move while in insert mode 150d29578eaSAndrey A. Chernovmove_standout_mode ms safe to move while in standout mode 151d29578eaSAndrey A. Chernovover_strike os terminal can overstrike 152d29578eaSAndrey A. Chernovstatus_line_esc_ok es escape can be used on the status line 153d29578eaSAndrey A. Chernovdest_tabs_magic_smso xt tabs destructive, magic so char (t1061) 1540227791bSRuslan Ermilovtilde_glitch hz cannot print ~'s (hazeltine) 155d29578eaSAndrey A. Chernovtransparent_underline ul underline character overstrikes 156d29578eaSAndrey A. Chernovxon_xoff xo terminal uses xon/xoff handshaking 1570227791bSRuslan Ermilovneeds_xon_xoff nx padding will not work, xon/xoff required 1580227791bSRuslan Ermilovprtr_silent 5i printer will not echo on screen 159d29578eaSAndrey A. Chernovhard_cursor HC cursor is hard to see 160d29578eaSAndrey A. Chernovnon_rev_rmcup NR enter_ca_mode does not reverse exit_ca_mode 161d29578eaSAndrey A. Chernovno_pad_char NP pad character does not exist 162d29578eaSAndrey A. Chernovnon_dest_scroll_region ND scrolling region is non-destructive 163d29578eaSAndrey A. Chernovcan_change cc terminal can re-define existing colors 164d29578eaSAndrey A. Chernovback_color_erase ut screen erased with background color 165d29578eaSAndrey A. Chernovhue_lightness_saturation hl terminal uses only HLS color 166d29578eaSAndrey A. Chernov notation (tektronix) 167d29578eaSAndrey A. Chernovcol_addr_glitch YA only positive motion for column address and 168d29578eaSAndrey A. Chernov micro_column_address caps 169d29578eaSAndrey A. Chernovcr_cancels_micro_mode YB using cr turns off micro mode 170d29578eaSAndrey A. Chernovhas_print_wheel YC printer needs operator to change character 171d29578eaSAndrey A. Chernov set 172d29578eaSAndrey A. Chernovrow_addr_glitch YD only positive motion for row_address and 173d29578eaSAndrey A. Chernov micro_row_address caps 174d29578eaSAndrey A. Chernovsemi_auto_right_margin YE printing in last column causes cr 175d29578eaSAndrey A. Chernovcpi_changes_res YF changing character pitch changes resolution 176d29578eaSAndrey A. Chernovlpi_changes_res YG changing line pitch changes resolution 177afe61c15SRodney W. Grimes.Ed 178afe61c15SRodney W. Grimes.Pp 179d29578eaSAndrey A. ChernovThese are the numeric capabilities: 180d29578eaSAndrey A. Chernov.Bd -literal 181d29578eaSAndrey A. Chernov\fBNumeric TCap Description\fR 182d29578eaSAndrey A. Chernov\fBVariables Code\fR 183d29578eaSAndrey A. Chernovcolumns co number of columns in aline 184d29578eaSAndrey A. Chernovinit_tabs it tabs initially every # spaces 185d29578eaSAndrey A. Chernovlines li number of lines on screen or page 186d29578eaSAndrey A. Chernovlines_of_memory lm lines of memory if > line. 0 => varies 187d29578eaSAndrey A. Chernovmagic_cookie_glitch sg number of blank chars left by 188d29578eaSAndrey A. Chernov enter_standout_mode or exit_standout_mode 189d29578eaSAndrey A. Chernovpadding_baud_rate pb lowest baud rate where padding needed 190d29578eaSAndrey A. Chernovvirtual_terminal vt virtual terminal number (CB/unix) 191d29578eaSAndrey A. Chernovwidth_status_line ws columns in status line 192d29578eaSAndrey A. Chernovnum_labels Nl number of labels on screen 193d29578eaSAndrey A. Chernovlabel_height lh rows in each label 194d29578eaSAndrey A. Chernovlabel_width lw columns in each label 195d29578eaSAndrey A. Chernovmax_attributes ma maximum combined attributes terminal can 196d29578eaSAndrey A. Chernov handle 1971499abeeSPoul-Henning Kampmaximum_windows MW maximum number of definable windows 198d29578eaSAndrey A. Chernovmagic_cookie_glitch_ul ug number of blanks left by underline 199d29578eaSAndrey A. Chernov# 200d29578eaSAndrey A. Chernov# These came in with SVr4's color support 201d29578eaSAndrey A. Chernov# 202d29578eaSAndrey A. Chernovmax_colors Co maximum numbers of colors on screen 203d29578eaSAndrey A. Chernovmax_pairs pa maximum number of color-pairs on the screen 2040227791bSRuslan Ermilovno_color_video NC video attributes that cannot be used with 205d29578eaSAndrey A. Chernov colors 206d29578eaSAndrey A. Chernov# 207d29578eaSAndrey A. Chernov# The following numeric capabilities are present in the SVr4.0 term 208d29578eaSAndrey A. Chernov# structure, but are not yet documented in the man page. 209d29578eaSAndrey A. Chernov# They came in with SVr4's printer support. 210d29578eaSAndrey A. Chernov# 211d29578eaSAndrey A. Chernovbuffer_capacity Ya numbers of bytes buffered before printing 212d29578eaSAndrey A. Chernovdot_vert_spacing Yb spacing of pins vertically in pins per inch 213d29578eaSAndrey A. Chernovdot_horz_spacing Yc spacing of dots horizontally in dots per 214d29578eaSAndrey A. Chernov inch 215d29578eaSAndrey A. Chernovmax_micro_address Yd maximum value in micro_..._address 216d29578eaSAndrey A. Chernovmax_micro_jump Ye maximum value in parm_..._micro 217d29578eaSAndrey A. Chernovmicro_char_size Yf character size when in micro mode 218d29578eaSAndrey A. Chernovmicro_line_size Yg line size when in micro mode 219d29578eaSAndrey A. Chernovnumber_of_pins Yh numbers of pins in print-head 220d29578eaSAndrey A. Chernovoutput_res_char Yi horizontal resolution in units per line 221d29578eaSAndrey A. Chernovoutput_res_line Yj vertical resolution in units per line 222d29578eaSAndrey A. Chernovoutput_res_horz_inch Yk horizontal resolution in units per inch 223d29578eaSAndrey A. Chernovoutput_res_vert_inch Yl vertical resolution in units per inch 224d29578eaSAndrey A. Chernovprint_rate Ym print rate in chars per second 225d29578eaSAndrey A. Chernovwide_char_size Yn character step size when in double wide 226d29578eaSAndrey A. Chernov mode 227d29578eaSAndrey A. Chernovbuttons BT number of buttons on mouse 228d29578eaSAndrey A. Chernovbit_image_entwining Yo number of passed for each bit-image row 229d29578eaSAndrey A. Chernovbit_image_type Yp type of bit-image device 230d29578eaSAndrey A. Chernov.Ed 231d29578eaSAndrey A. Chernov.Pp 232d29578eaSAndrey A. ChernovThese are the string capabilities: 233d29578eaSAndrey A. Chernov.Bd -literal 234d29578eaSAndrey A. Chernov\fBString TCap Description\fR 235d29578eaSAndrey A. Chernov\fBVariables Code\fR 236d29578eaSAndrey A. Chernovback_tab bt back tab (P) 237d29578eaSAndrey A. Chernovbell bl audible signal (bell) (P) 238d29578eaSAndrey A. Chernovcarriage_return cr carriage return (P*) 239d29578eaSAndrey A. Chernovchange_scroll_region cs change region to line #1 to line #2 (P) 240d29578eaSAndrey A. Chernovclear_all_tabs ct clear all tab stops (P) 241d29578eaSAndrey A. Chernovclear_screen cl clear screen and home cursor (P*) 242d29578eaSAndrey A. Chernovclr_eol ce clear to end of line (P) 243d29578eaSAndrey A. Chernovclr_eos cd clear to end of screen (P*) 244d29578eaSAndrey A. Chernovcolumn_address ch horizontal position #1, absolute (P) 245d29578eaSAndrey A. Chernovcommand_character CC terminal settable cmd character in 246d29578eaSAndrey A. Chernov prototype 247d29578eaSAndrey A. Chernovcursor_address cm move to row #1 columns #2 248d29578eaSAndrey A. Chernovcursor_down do down one line 249d29578eaSAndrey A. Chernovcursor_home ho home cursor 250d29578eaSAndrey A. Chernovcursor_invisible vi make cursor invisible 251d29578eaSAndrey A. Chernovcursor_left le move left one space 252d29578eaSAndrey A. Chernovcursor_mem_address CM memory relative cursor addressing 253d29578eaSAndrey A. Chernovcursor_normal ve make cursor appear normal (undo 254d29578eaSAndrey A. Chernov cursor_invisible/cursor_visible) 255d29578eaSAndrey A. Chernovcursor_right nd move right one space 256d29578eaSAndrey A. Chernovcursor_to_ll ll last line, first column 257d29578eaSAndrey A. Chernovcursor_up up up one line 258d29578eaSAndrey A. Chernovcursor_visible vs make cursor very visible 259d29578eaSAndrey A. Chernovdelete_character dc delete character (P*) 260d29578eaSAndrey A. Chernovdelete_line dl delete line (P*) 261d29578eaSAndrey A. Chernovdis_status_line ds disable status line 262d29578eaSAndrey A. Chernovdown_half_line hd half a line down 263d29578eaSAndrey A. Chernoventer_alt_charset_mode as start alternate character set (P) 264d29578eaSAndrey A. Chernoventer_blink_mode mb turn on blinking 265d29578eaSAndrey A. Chernoventer_bold_mode md turn on bold (extra bright) mode 266d29578eaSAndrey A. Chernoventer_ca_mode ti string to start programs using 267d29578eaSAndrey A. Chernov cursor_address 268d29578eaSAndrey A. Chernoventer_delete_mode dm enter delete mode 269d29578eaSAndrey A. Chernoventer_dim_mode mh turn on half-bright mode 270d29578eaSAndrey A. Chernoventer_insert_mode im enter insert mode 271d29578eaSAndrey A. Chernoventer_secure_mode mk turn on blank mode (characters invisible) 272d29578eaSAndrey A. Chernoventer_protected_mode mp turn on protected mode 273d29578eaSAndrey A. Chernoventer_reverse_mode mr turn on reverse video mode 274d29578eaSAndrey A. Chernoventer_standout_mode so begin standout mode 275d29578eaSAndrey A. Chernoventer_underline_mode us begin underline mode 276d29578eaSAndrey A. Chernoverase_chars ec erase #1 characters (P) 277d29578eaSAndrey A. Chernovexit_alt_charset_mode ae end alternate character set (P) 278d29578eaSAndrey A. Chernovexit_attribute_mode me turn off all attributes 279d29578eaSAndrey A. Chernovexit_ca_mode te strings to end programs using cup 280d29578eaSAndrey A. Chernovexit_delete_mode ed end delete mode 281d29578eaSAndrey A. Chernovexit_insert_mode ei exit insert mode 282d29578eaSAndrey A. Chernovexit_standout_mode se exit standout mode 283d29578eaSAndrey A. Chernovexit_underline_mode ue exit underline mode 284d29578eaSAndrey A. Chernovflash_screen vb visible bell (may not move cursor) 285d29578eaSAndrey A. Chernovform_feed ff hardcopy terminal page eject (P*) 286d29578eaSAndrey A. Chernovfrom_status_line fs return from status line 287d29578eaSAndrey A. Chernovinit_1string i1 initialization string 288d29578eaSAndrey A. Chernovinit_2string is initialization string 289d29578eaSAndrey A. Chernovinit_3string i3 initialization string 290d29578eaSAndrey A. Chernovinit_file if name of initialization file 291d29578eaSAndrey A. Chernovinsert_character ic insert character (P) 292d29578eaSAndrey A. Chernovinsert_line al insert line (P*) 293d29578eaSAndrey A. Chernovinsert_padding ip insert padding after inserted character 294d29578eaSAndrey A. Chernovkey_backspace kb backspace key 295d29578eaSAndrey A. Chernovkey_catab ka clear-all-tabs key 296d29578eaSAndrey A. Chernovkey_clear kC clear-screen or erase key 297d29578eaSAndrey A. Chernovkey_ctab kt clear-tab key 298d29578eaSAndrey A. Chernovkey_dc kD delete-character key 299d29578eaSAndrey A. Chernovkey_dl kL delete-line key 300d29578eaSAndrey A. Chernovkey_down kd down-arrow key 301d29578eaSAndrey A. Chernovkey_eic kM sent by rmir or smir in insert mode 302d29578eaSAndrey A. Chernovkey_eol kE clear-to-end-of-line key 303d29578eaSAndrey A. Chernovkey_eos kS clear-to-end-of-screen key 304d29578eaSAndrey A. Chernovkey_f0 k0 F0 function key 305d29578eaSAndrey A. Chernovkey_f1 k1 F1 function key 306d29578eaSAndrey A. Chernovkey_f10 k; F10 function key 307d29578eaSAndrey A. Chernovkey_f2 k2 F2 function key 308d29578eaSAndrey A. Chernovkey_f3 k3 F3 function key 309d29578eaSAndrey A. Chernovkey_f4 k4 F4 function key 310d29578eaSAndrey A. Chernovkey_f5 k5 F5 function key 311d29578eaSAndrey A. Chernovkey_f6 k6 F6 function key 312d29578eaSAndrey A. Chernovkey_f7 k7 F7 function key 3131499abeeSPoul-Henning Kampkey_f8 k8 F8 function key 314d29578eaSAndrey A. Chernovkey_f9 k9 F9 function key 315d29578eaSAndrey A. Chernovkey_home kh home key 316d29578eaSAndrey A. Chernovkey_ic kI insert-character key 317d29578eaSAndrey A. Chernovkey_il kA insert-line key 318d29578eaSAndrey A. Chernovkey_left kl left-arrow key 319d29578eaSAndrey A. Chernovkey_ll kH last-line key 320d29578eaSAndrey A. Chernovkey_npage kN next-page key 321d29578eaSAndrey A. Chernovkey_ppage kP prev-page key 322d29578eaSAndrey A. Chernovkey_right kr right-arrow key 323d29578eaSAndrey A. Chernovkey_sf kF scroll-forward key 324d29578eaSAndrey A. Chernovkey_sr kR scroll-backward key 325d29578eaSAndrey A. Chernovkey_stab kT set-tab key 326d29578eaSAndrey A. Chernovkey_up ku up-arrow key 327d29578eaSAndrey A. Chernovkeypad_local ke leave 'keyboard_transmit' mode 328d29578eaSAndrey A. Chernovkeypad_xmit ks enter 'keyboard_transmit' mode 329d29578eaSAndrey A. Chernovlab_f0 l0 label on function key f0 if not f0 330d29578eaSAndrey A. Chernovlab_f1 l1 label on function key f1 if not f1 331d29578eaSAndrey A. Chernovlab_f10 la label on function key f10 if not f10 332d29578eaSAndrey A. Chernovlab_f2 l2 label on function key f2 if not f2 333d29578eaSAndrey A. Chernovlab_f3 l3 label on function key f3 if not f3 334d29578eaSAndrey A. Chernovlab_f4 l4 label on function key f4 if not f4 335d83e0741STim Vanderhoeklab_f5 l5 label on function key f5 if not f5 336d29578eaSAndrey A. Chernovlab_f6 l6 label on function key f6 if not f6 337d29578eaSAndrey A. Chernovlab_f7 l7 label on function key f7 if not f7 338d29578eaSAndrey A. Chernovlab_f8 l8 label on function key f8 if not f8 339d29578eaSAndrey A. Chernovlab_f9 l9 label on function key f9 if not f9 340d29578eaSAndrey A. Chernovmeta_off mo turn off meta mode 341d29578eaSAndrey A. Chernovmeta_on mm turn on meta mode (8th-bit on) 342d29578eaSAndrey A. Chernovnewline nw newline (behave like cr followed by lf) 343d29578eaSAndrey A. Chernovpad_char pc padding char (instead of null) 344d29578eaSAndrey A. Chernovparm_dch DC delete #1 chars (P*) 345d29578eaSAndrey A. Chernovparm_delete_line DL delete #1 lines (P*) 346d29578eaSAndrey A. Chernovparm_down_cursor DO down #1 lines (P*) 347d29578eaSAndrey A. Chernovparm_ich IC insert #1 chars (P*) 348d29578eaSAndrey A. Chernovparm_index SF scroll forward #1 lines (P) 349d29578eaSAndrey A. Chernovparm_insert_line AL insert #1 lines (P*) 350d29578eaSAndrey A. Chernovparm_left_cursor LE move #1 chars to the left (P) 351d29578eaSAndrey A. Chernovparm_right_cursor RI move #1 chars to the right (P*) 352d29578eaSAndrey A. Chernovparm_rindex SR scroll back #1 lines (P) 353d29578eaSAndrey A. Chernovparm_up_cursor UP up #1 lines (P*) 354d29578eaSAndrey A. Chernovpkey_key pk program function key #1 to type string #2 355d29578eaSAndrey A. Chernovpkey_local pl program function key #1 to execute 356d29578eaSAndrey A. Chernov string #2 357d29578eaSAndrey A. Chernovpkey_xmit px program function key #1 to transmit 358d29578eaSAndrey A. Chernov string #2 359d29578eaSAndrey A. Chernovprint_screen ps print contents of screen 360d29578eaSAndrey A. Chernovprtr_off pf turn off printer 361d29578eaSAndrey A. Chernovprtr_on po turn on printer 362d29578eaSAndrey A. Chernovrepeat_char rp repeat char #1 #2 times (P*) 363d29578eaSAndrey A. Chernovreset_1string r1 reset string 364d29578eaSAndrey A. Chernovreset_2string r2 reset string 365d29578eaSAndrey A. Chernovreset_3string r3 reset string 366d29578eaSAndrey A. Chernovreset_file rf name of reset file 367d29578eaSAndrey A. Chernovrestore_cursor rc restore cursor to last position of 368d29578eaSAndrey A. Chernov save_cursor 369d29578eaSAndrey A. Chernovrow_address cv vertical position #1 absolute (P) 370d29578eaSAndrey A. Chernovsave_cursor sc save current cursor position (P) 371d29578eaSAndrey A. Chernovscroll_forward sf scroll text up (P) 372d29578eaSAndrey A. Chernovscroll_reverse sr scroll text down (P) 373d29578eaSAndrey A. Chernovset_attributes sa define video attributes #1-#9 (PG9) 374d29578eaSAndrey A. Chernovset_tab st set a tab in every row, current columns 375d29578eaSAndrey A. Chernovset_window wi current window is lines #1-#2 cols #3-#4 376d29578eaSAndrey A. Chernovtab ta tab to next 8-space hardware tab stop 377d29578eaSAndrey A. Chernovto_status_line ts move to status line 378d29578eaSAndrey A. Chernovunderline_char uc underline char and move past it 379d29578eaSAndrey A. Chernovup_half_line hu half a line up 380d29578eaSAndrey A. Chernovinit_prog iP path name of program for initialization 381d29578eaSAndrey A. Chernovkey_a1 K1 upper left of keypad 382d29578eaSAndrey A. Chernovkey_a3 K3 upper right of keypad 383d29578eaSAndrey A. Chernovkey_b2 K2 center of keypad 384d29578eaSAndrey A. Chernovkey_c1 K4 lower left of keypad 385d29578eaSAndrey A. Chernovkey_c3 K5 lower right of keypad 386d29578eaSAndrey A. Chernovprtr_non pO turn on printer for #1 bytes 387d29578eaSAndrey A. Chernovtermcap_init2 i2 secondary initialization string 388d29578eaSAndrey A. Chernovtermcap_reset rs terminal reset string 389d29578eaSAndrey A. Chernov# 390d29578eaSAndrey A. Chernov# SVr1 capabilities stop here. IBM's version of terminfo is the same as 391d29578eaSAndrey A. Chernov# SVr4 up to this point, but has a different set afterwards. 392d29578eaSAndrey A. Chernov# 393d29578eaSAndrey A. Chernovchar_padding rP like insert_padding but when in insert mode 394d29578eaSAndrey A. Chernovacs_chars ac graphics charset pairs - def=vt100 395d29578eaSAndrey A. Chernovplab_norm pn program label #1 to show string #2 396d29578eaSAndrey A. Chernovkey_btab kB back-tab key 397d29578eaSAndrey A. Chernoventer_xon_mode SX turn on xon/xoff handshaking 398d29578eaSAndrey A. Chernovexit_xon_mode RX turn off xon/xoff handshaking 399d29578eaSAndrey A. Chernoventer_am_mode SA turn on automatic margins 400d29578eaSAndrey A. Chernovexit_am_mode RA turn off automatic margins 401d29578eaSAndrey A. Chernovxon_character XN XON character 402d29578eaSAndrey A. Chernovxoff_character XF XOFF character 403d29578eaSAndrey A. Chernovena_acs eA enable alternate char set 404d29578eaSAndrey A. Chernovlabel_on LO turn on soft labels 405d29578eaSAndrey A. Chernovlabel_off LF turn off soft labels 406d29578eaSAndrey A. Chernovkey_beg @1 begin key 407d29578eaSAndrey A. Chernovkey_cancel @2 cancel key 408d29578eaSAndrey A. Chernovkey_close @3 close key 409d29578eaSAndrey A. Chernovkey_command @4 command key 410d29578eaSAndrey A. Chernovkey_copy @5 copy key 411d29578eaSAndrey A. Chernovkey_create @6 create key 412d29578eaSAndrey A. Chernovkey_end @7 end key 413d29578eaSAndrey A. Chernovkey_enter @8 enter/send key 414d29578eaSAndrey A. Chernovkey_exit @9 exit key 415d29578eaSAndrey A. Chernovkey_find @0 find key 416d29578eaSAndrey A. Chernovkey_help %1 help key 417d29578eaSAndrey A. Chernovkey_mark %2 mark key 418d29578eaSAndrey A. Chernovkey_message %3 message key 419d29578eaSAndrey A. Chernovkey_move %4 move key 420d29578eaSAndrey A. Chernovkey_next %5 next key 421d29578eaSAndrey A. Chernovkey_open %6 open key 422d29578eaSAndrey A. Chernovkey_options %7 options key 423d29578eaSAndrey A. Chernovkey_previous %8 previous key 424d29578eaSAndrey A. Chernovkey_print %9 print key 425d29578eaSAndrey A. Chernovkey_redo %0 redo key 426d29578eaSAndrey A. Chernovkey_reference &1 reference key 427d29578eaSAndrey A. Chernovkey_refresh &2 refresh key 428d29578eaSAndrey A. Chernovkey_replace &3 replace key 429d29578eaSAndrey A. Chernovkey_restart &4 restart key 430d29578eaSAndrey A. Chernovkey_resume &5 resume key 431d29578eaSAndrey A. Chernovkey_save &6 save key 432d29578eaSAndrey A. Chernovkey_suspend &7 suspend key 433d29578eaSAndrey A. Chernovkey_undo &8 undo key 434d29578eaSAndrey A. Chernovkey_sbeg &9 shifted key 435d29578eaSAndrey A. Chernovkey_scancel &0 shifted key 436d29578eaSAndrey A. Chernovkey_scommand *1 shifted key 437d29578eaSAndrey A. Chernovkey_scopy *2 shifted key 438d29578eaSAndrey A. Chernovkey_screate *3 shifted key 439d29578eaSAndrey A. Chernovkey_sdc *4 shifted key 440d29578eaSAndrey A. Chernovkey_sdl *5 shifted key 441d29578eaSAndrey A. Chernovkey_select *6 select key 442d29578eaSAndrey A. Chernovkey_send *7 shifted key 443d29578eaSAndrey A. Chernovkey_seol *8 shifted key 444d29578eaSAndrey A. Chernovkey_sexit *9 shifted key 445d29578eaSAndrey A. Chernovkey_sfind *0 shifted key 446d29578eaSAndrey A. Chernovkey_shelp #1 shifted key 447d29578eaSAndrey A. Chernovkey_shome #2 shifted key 448d29578eaSAndrey A. Chernovkey_sic #3 shifted key 449d29578eaSAndrey A. Chernovkey_sleft #4 shifted key 450d29578eaSAndrey A. Chernovkey_smessage %a shifted key 451d29578eaSAndrey A. Chernovkey_smove %b shifted key 452d29578eaSAndrey A. Chernovkey_snext %c shifted key 453d29578eaSAndrey A. Chernovkey_soptions %d shifted key 454d29578eaSAndrey A. Chernovkey_sprevious %e shifted key 455d29578eaSAndrey A. Chernovkey_sprint %f shifted key 456d29578eaSAndrey A. Chernovkey_sredo %g shifted key 457d29578eaSAndrey A. Chernovkey_sreplace %h shifted key 458d29578eaSAndrey A. Chernovkey_sright %i shifted key 459d29578eaSAndrey A. Chernovkey_srsume %j shifted key 460d29578eaSAndrey A. Chernovkey_ssave !1 shifted key 461d29578eaSAndrey A. Chernovkey_ssuspend !2 shifted key 462d29578eaSAndrey A. Chernovkey_sundo !3 shifted key 463d29578eaSAndrey A. Chernovreq_for_input RF send next input char (for ptys) 464d29578eaSAndrey A. Chernovkey_f11 F1 F11 function key 465d29578eaSAndrey A. Chernovkey_f12 F2 F12 function key 466d29578eaSAndrey A. Chernovkey_f13 F3 F13 function key 467d29578eaSAndrey A. Chernovkey_f14 F4 F14 function key 468d29578eaSAndrey A. Chernovkey_f15 F5 F15 function key 469d29578eaSAndrey A. Chernovkey_f16 F6 F16 function key 470d29578eaSAndrey A. Chernovkey_f17 F7 F17 function key 471d29578eaSAndrey A. Chernovkey_f18 F8 F18 function key 472d29578eaSAndrey A. Chernovkey_f19 F9 F19 function key 473d29578eaSAndrey A. Chernovkey_f20 FA F20 function key 474d29578eaSAndrey A. Chernovkey_f21 FB F21 function key 475d29578eaSAndrey A. Chernovkey_f22 FC F22 function key 476d29578eaSAndrey A. Chernovkey_f23 FD F23 function key 477d29578eaSAndrey A. Chernovkey_f24 FE F24 function key 478d29578eaSAndrey A. Chernovkey_f25 FF F25 function key 479d29578eaSAndrey A. Chernovkey_f26 FG F26 function key 480d29578eaSAndrey A. Chernovkey_f27 FH F27 function key 481d29578eaSAndrey A. Chernovkey_f28 FI F28 function key 482d29578eaSAndrey A. Chernovkey_f29 FJ F29 function key 483d29578eaSAndrey A. Chernovkey_f30 FK F30 function key 484d29578eaSAndrey A. Chernovkey_f31 FL F31 function key 485d29578eaSAndrey A. Chernovkey_f32 FM F32 function key 486d29578eaSAndrey A. Chernovkey_f33 FN F33 function key 487d29578eaSAndrey A. Chernovkey_f34 FO F34 function key 488d29578eaSAndrey A. Chernovkey_f35 FP F35 function key 489d29578eaSAndrey A. Chernovkey_f36 FQ F36 function key 490d29578eaSAndrey A. Chernovkey_f37 FR F37 function key 491d29578eaSAndrey A. Chernovkey_f38 FS F38 function key 492d29578eaSAndrey A. Chernovkey_f39 FT F39 function key 493d29578eaSAndrey A. Chernovkey_f40 FU F40 function key 494d29578eaSAndrey A. Chernovkey_f41 FV F41 function key 495d29578eaSAndrey A. Chernovkey_f42 FW F42 function key 496d29578eaSAndrey A. Chernovkey_f43 FX F43 function key 497d29578eaSAndrey A. Chernovkey_f44 FY F44 function key 498d29578eaSAndrey A. Chernovkey_f45 FZ F45 function key 499d29578eaSAndrey A. Chernovkey_f46 Fa F46 function key 500d29578eaSAndrey A. Chernovkey_f47 Fb F47 function key 501d29578eaSAndrey A. Chernovkey_f48 Fc F48 function key 502d29578eaSAndrey A. Chernovkey_f49 Fd F49 function key 503d29578eaSAndrey A. Chernovkey_f50 Fe F50 function key 504d29578eaSAndrey A. Chernovkey_f51 Ff F51 function key 505d29578eaSAndrey A. Chernovkey_f52 Fg F52 function key 506d29578eaSAndrey A. Chernovkey_f53 Fh F53 function key 507d29578eaSAndrey A. Chernovkey_f54 Fi F54 function key 508d29578eaSAndrey A. Chernovkey_f55 Fj F55 function key 509d29578eaSAndrey A. Chernovkey_f56 Fk F56 function key 510d29578eaSAndrey A. Chernovkey_f57 Fl F57 function key 511d29578eaSAndrey A. Chernovkey_f58 Fm F58 function key 512d29578eaSAndrey A. Chernovkey_f59 Fn F59 function key 513d29578eaSAndrey A. Chernovkey_f60 Fo F60 function key 514d29578eaSAndrey A. Chernovkey_f61 Fp F61 function key 515d29578eaSAndrey A. Chernovkey_f62 Fq F62 function key 516d29578eaSAndrey A. Chernovkey_f63 Fr F63 function key 517d29578eaSAndrey A. Chernovclr_bol cb Clear to beginning of line 518d29578eaSAndrey A. Chernovclear_margins MC clear right and left soft margins 519d29578eaSAndrey A. Chernovset_left_margin ML set left soft margin 520d29578eaSAndrey A. Chernovset_right_margin MR set right soft margin 521d29578eaSAndrey A. Chernovlabel_format Lf label format 522d29578eaSAndrey A. Chernovset_clock SC set clock, #1 hrs #2 mins #3 secs 523d29578eaSAndrey A. Chernovdisplay_clock DK display clock at (#1,#2) 524d29578eaSAndrey A. Chernovremove_clock RC remove clock 525d29578eaSAndrey A. Chernovcreate_window CW define a window #1 from #2, #3 to #4, #5 526d29578eaSAndrey A. Chernovgoto_window WG go to window #1 527d29578eaSAndrey A. Chernovhangup HU hang-up phone 528d29578eaSAndrey A. Chernovdial_phone DI dial number #1 529d29578eaSAndrey A. Chernovquick_dial QD dial number #1 without checking 530d29578eaSAndrey A. Chernovtone TO select touch tone dialing 531d29578eaSAndrey A. Chernovpulse PU select pulse dialling 532d29578eaSAndrey A. Chernovflash_hook fh flash switch hook 533d29578eaSAndrey A. Chernovfixed_pause PA pause for 2-3 seconds 534d29578eaSAndrey A. Chernovwait_tone WA wait for dial-tone 535d29578eaSAndrey A. Chernovuser0 u0 User string #0 536d29578eaSAndrey A. Chernovuser1 u1 User string #1 537d29578eaSAndrey A. Chernovuser2 u2 User string #2 538d29578eaSAndrey A. Chernovuser3 u3 User string #3 539d29578eaSAndrey A. Chernovuser4 u4 User string #4 540d29578eaSAndrey A. Chernovuser5 u5 User string #5 541d29578eaSAndrey A. Chernovuser6 u6 User string #6 542d29578eaSAndrey A. Chernovuser7 u7 User string #7 543d29578eaSAndrey A. Chernovuser8 u8 User string #8 544d29578eaSAndrey A. Chernovuser9 u9 User string #9 545d29578eaSAndrey A. Chernov# 546d29578eaSAndrey A. Chernov# SVr4 added these capabilities to support color 547d29578eaSAndrey A. Chernov# 548d29578eaSAndrey A. Chernovorig_pair op Set default pair to its original value 549d29578eaSAndrey A. Chernovorig_colors oc Set all color pairs to the original ones 550d29578eaSAndrey A. Chernovinitialize_color Ic initialize color #1 to (#2,#3,#4) 551d29578eaSAndrey A. Chernovinitialize_pair Ip Initialize color pair #1 to fg=(#2,#3,#4), 552d29578eaSAndrey A. Chernov bg=(#5,#6,#7) 553d29578eaSAndrey A. Chernovset_color_pair sp Set current color pair to #1 554d29578eaSAndrey A. Chernovset_foreground Sf Set foreground color #1 555d29578eaSAndrey A. Chernovset_background Sb Set background color #1 556d29578eaSAndrey A. Chernov# 557d29578eaSAndrey A. Chernov# SVr4 added these capabilities to support printers 558d29578eaSAndrey A. Chernov# 559d29578eaSAndrey A. Chernovchange_char_pitch ZA Change number of characters per inch 560d29578eaSAndrey A. Chernovchange_line_pitch ZB Change number of lines per inch 561d29578eaSAndrey A. Chernovchange_res_horz ZC Change horizontal resolution 562d29578eaSAndrey A. Chernovchange_res_vert ZD Change vertical resolution 563d29578eaSAndrey A. Chernovdefine_char ZE Define a character 564d29578eaSAndrey A. Chernoventer_doublewide_mode ZF Enter double-wide mode 565d29578eaSAndrey A. Chernoventer_draft_quality ZG Enter draft-quality mode 566d29578eaSAndrey A. Chernoventer_italics_mode ZH Enter italic mode 567d29578eaSAndrey A. Chernoventer_leftward_mode ZI Start leftward carriage motion 568d29578eaSAndrey A. Chernoventer_micro_mode ZJ Start micro-motion mode 569d29578eaSAndrey A. Chernoventer_near_letter_quality ZK Enter NLQ mode 570d29578eaSAndrey A. Chernoventer_normal_quality ZL Enter normal-quality mode 571d29578eaSAndrey A. Chernoventer_shadow_mode ZM Enter shadow-print mode 572d29578eaSAndrey A. Chernoventer_subscript_mode ZN Enter subscript mode 573d29578eaSAndrey A. Chernoventer_superscript_mode ZO Enter superscript mode 574d29578eaSAndrey A. Chernoventer_upward_mode ZP Start upward carriage motion 575d29578eaSAndrey A. Chernovexit_doublewide_mode ZQ End double-wide mode 576d29578eaSAndrey A. Chernovexit_italics_mode ZR End italic mode 577d29578eaSAndrey A. Chernovexit_leftward_mode ZS End left-motion mode 578d29578eaSAndrey A. Chernovexit_micro_mode ZT End micro-motion mode 579d29578eaSAndrey A. Chernovexit_shadow_mode ZU End shadow-print mode 580d29578eaSAndrey A. Chernovexit_subscript_mode ZV End subscript mode 581d29578eaSAndrey A. Chernovexit_superscript_mode ZW End superscript mode 582d29578eaSAndrey A. Chernovexit_upward_mode ZX End reverse character motion 583d29578eaSAndrey A. Chernovmicro_column_address ZY Like column_address in micro mode 584d29578eaSAndrey A. Chernovmicro_down ZZ Like cursor_down in micro mode 585d29578eaSAndrey A. Chernovmicro_left Za Like cursor_left in micro mode 586d29578eaSAndrey A. Chernovmicro_right Zb Like cursor_right in micro mode 587d29578eaSAndrey A. Chernovmicro_row_address Zc Like row_address in micro mode 588d29578eaSAndrey A. Chernovmicro_up Zd Like cursor_up in micro mode 589d29578eaSAndrey A. Chernovorder_of_pins Ze Match software bits to print-head pins 590d29578eaSAndrey A. Chernovparm_down_micro Zf Like parm_down_cursor in micro mode 591d29578eaSAndrey A. Chernovparm_left_micro Zg Like parm_left_cursor in micro mode 592d29578eaSAndrey A. Chernovparm_right_micro Zh Like parm_right_cursor in micro mode 593d29578eaSAndrey A. Chernovparm_up_micro Zi Like parm_up_cursor in micro mode 594d29578eaSAndrey A. Chernovselect_char_set Zj Select character set 595d29578eaSAndrey A. Chernovset_bottom_margin Zk Set bottom margin at current line 596d29578eaSAndrey A. Chernovset_bottom_margin_parm Zl Set bottom margin at line #1 or #2 lines 597d29578eaSAndrey A. Chernov from bottom 598d29578eaSAndrey A. Chernovset_left_margin_parm Zm Set left (right) margin at column #1 (#2) 599d29578eaSAndrey A. Chernovset_right_margin_parm Zn Set right margin at column #1 600d29578eaSAndrey A. Chernovset_top_margin Zo Set top margin at current line 601d29578eaSAndrey A. Chernovset_top_margin_parm Zp Set top (bottom) margin at row #1 (#2) 6021499abeeSPoul-Henning Kampstart_bit_image Zq Start printing bit image graphics 603d29578eaSAndrey A. Chernovstart_char_set_def Zr Start character set definition 604d29578eaSAndrey A. Chernovstop_bit_image Zs Stop printing bit image graphics 605d29578eaSAndrey A. Chernovstop_char_set_def Zt End definition of character aet 6061499abeeSPoul-Henning Kampsubscript_characters Zu List of subscriptible characters 6071499abeeSPoul-Henning Kampsuperscript_characters Zv List of superscriptible characters 608d29578eaSAndrey A. Chernovthese_cause_cr Zw Printing any of these chars causes CR 609d29578eaSAndrey A. Chernovzero_motion Zx No motion for subsequent character 610d29578eaSAndrey A. Chernov# 611d29578eaSAndrey A. Chernov# The following string capabilities are present in the SVr4.0 term 612d29578eaSAndrey A. Chernov# structure, but are not documented in the man page. 613d29578eaSAndrey A. Chernov# 614d29578eaSAndrey A. Chernovchar_set_names Zy List of character set names 615d29578eaSAndrey A. Chernovkey_mouse Km Mouse event has occurred 616d29578eaSAndrey A. Chernovmouse_info Mi Mouse status information 617d29578eaSAndrey A. Chernovreq_mouse_pos RQ Request mouse position 618d29578eaSAndrey A. Chernovget_mouse Gm Curses should get button events 619d29578eaSAndrey A. Chernovset_a_foreground AF Set ANSI foreground color 620d29578eaSAndrey A. Chernovset_a_background AB Set ANSI background color 621d29578eaSAndrey A. Chernovpkey_plab xl Program function key #1 to type string #2 622d29578eaSAndrey A. Chernov and show string #3 623d29578eaSAndrey A. Chernovdevice_type dv Indicate language/codeset support 624d29578eaSAndrey A. Chernovcode_set_init ci Init sequence for multiple codesets 625d29578eaSAndrey A. Chernovset0_des_seq s0 Shift to code set 0 (EUC set 0, ASCII) 626d29578eaSAndrey A. Chernovset1_des_seq s1 Shift to code set 1 627d29578eaSAndrey A. Chernovset2_des_seq s2 Shift to code set 2 628d29578eaSAndrey A. Chernovset3_des_seq s3 Shift to code set 3 629d29578eaSAndrey A. Chernovset_lr_margin ML Set both left and right margins to #1, #2 630d29578eaSAndrey A. Chernovset_tb_margin MT Sets both top and bottom margins to #1, #2 631d29578eaSAndrey A. Chernovbit_image_repeat Xy Repeat bit image cell #1 #2 times 632d29578eaSAndrey A. Chernovbit_image_newline Zz Move to next row of the bit image 633d29578eaSAndrey A. Chernovbit_image_carriage_return Yv Move to beginning of same row 634d29578eaSAndrey A. Chernovcolor_names Yw Give name for color #1 6351499abeeSPoul-Henning Kampdefine_bit_image_region Yx Define rectangular bit image region 636d29578eaSAndrey A. Chernovend_bit_image_region Yy End a bit-image region 637d29578eaSAndrey A. Chernovset_color_band Yz Change to ribbon color #1 638d29578eaSAndrey A. Chernovset_page_length YZ Set page length to #1 lines 639d29578eaSAndrey A. Chernov# 640d29578eaSAndrey A. Chernov# SVr4 added these capabilities for direct PC-clone support 641d29578eaSAndrey A. Chernov# 642d29578eaSAndrey A. Chernovdisplay_pc_char S1 Display PC character 643d29578eaSAndrey A. Chernoventer_pc_charset_mode S2 Enter PC character display mode 644d29578eaSAndrey A. Chernovexit_pc_charset_mode S3 Exit PC character display mode 645d29578eaSAndrey A. Chernoventer_scancode_mode S4 Enter PC scancode mode 646d29578eaSAndrey A. Chernovexit_scancode_mode S5 Exit PC scancode mode 647d29578eaSAndrey A. Chernovpc_term_options S6 PC terminal options 648d29578eaSAndrey A. Chernovscancode_escape S7 Escape for scancode emulation 649d29578eaSAndrey A. Chernovalt_scancode_esc S8 Alternate escape for scancode emulation 650d29578eaSAndrey A. Chernov# 651d29578eaSAndrey A. Chernov# The XSI Curses standard added these. 652d29578eaSAndrey A. Chernov# 653d29578eaSAndrey A. Chernoventer_horizontal_hl_mode Xh Enter horizontal highlight mode 654d29578eaSAndrey A. Chernoventer_left_hl_mode Xl Enter left highlight mode 655d29578eaSAndrey A. Chernoventer_low_hl_mode Xo Enter low highlight mode 656d29578eaSAndrey A. Chernoventer_right_hl_mode Xr Enter right highlight mode 657d29578eaSAndrey A. Chernoventer_top_hl_mode Xt Enter top highlight mode 658d29578eaSAndrey A. Chernoventer_vertical_hl_mode Xv Enter vertical highlight mode 659d29578eaSAndrey A. Chernov.Ed 660d29578eaSAndrey A. Chernov.Pp 661d29578eaSAndrey A. ChernovObsolete termcap capabilities. 662afe61c15SRodney W. GrimesNew software should not rely on them at all. 663d29578eaSAndrey A. Chernov.Bd -literal 664d29578eaSAndrey A. Chernov\fBBoolean TCap Description\fR 665d29578eaSAndrey A. Chernov\fBVariables Code\fR 666d29578eaSAndrey A. Chernovlinefeed_is_newline NL move down with ^J 667d29578eaSAndrey A. Chernoveven_parity EP terminal requires even parity 668d29578eaSAndrey A. Chernovodd_parity OP terminal requires odd parity 669d29578eaSAndrey A. Chernovhalf_duplex HD terminal is half-duplex 670d29578eaSAndrey A. Chernovlower_case_only LC terminal has only lower case 671d29578eaSAndrey A. Chernovupper_case_only UC terminal has only upper case 672d29578eaSAndrey A. Chernovhas_hardware_tabs pt has 8-char tabs invoked with ^I 673d29578eaSAndrey A. Chernovreturn_does_clr_eol xr return clears the line 674d29578eaSAndrey A. Chernovtek_4025_insert_line xx Tektronix 4025 insert-line glitch 675d29578eaSAndrey A. Chernovbackspaces_with_bs bs uses ^H to move left 676d29578eaSAndrey A. Chernovcrt_no_scrolling ns crt cannot scroll 677d29578eaSAndrey A. Chernovno_correctly_working_cr nc no way to go to start of line 678d29578eaSAndrey A. Chernov.Ed 679d29578eaSAndrey A. Chernov.Bd -literal 680d29578eaSAndrey A. Chernov\fBNumber TCap Description\fR 681d29578eaSAndrey A. Chernov\fBVariables Code\fR 682d29578eaSAndrey A. Chernovbackspace_delay dB padding required for ^H 683d29578eaSAndrey A. Chernovform_feed_delay dF padding required for ^L 684d29578eaSAndrey A. Chernovhorizontal_tab_delay dT padding required for ^I 685d29578eaSAndrey A. Chernovvertical_tab_delay dV padding required for ^V 686d29578eaSAndrey A. Chernovnumber_of_function_keys kn count of function keys 687d29578eaSAndrey A. Chernovcarriage_return_delay dC pad needed for CR 688d29578eaSAndrey A. Chernovnew_line_delay dN pad needed for LF 689d29578eaSAndrey A. Chernov.Ed 690d29578eaSAndrey A. Chernov.Bd -literal 691d29578eaSAndrey A. Chernov\fBString TCap Description\fR 692d29578eaSAndrey A. Chernov\fBVariables Code\fR 693d29578eaSAndrey A. Chernovother_non_function_keys ko list of self-mapped keycaps 6945972d8dfSRuslan Ermilovarrow_key_map ma map arrow keys 695d29578eaSAndrey A. Chernovmemory_lock_above ml lock visible screen memory above the 696d29578eaSAndrey A. Chernov current line 697d29578eaSAndrey A. Chernovmemory_unlock mu unlock visible screen memory above the 698d29578eaSAndrey A. Chernov current line 699d29578eaSAndrey A. Chernovlinefeed_if_not_lf nl use to move down 700d29578eaSAndrey A. Chernovbackspace_if_not_bs bc move left, if not ^H 701d29578eaSAndrey A. Chernov.Ed 702afe61c15SRodney W. Grimes.Ss A Sample Entry 703afe61c15SRodney W. GrimesThe following entry, which describes the Concept\-100, is among the more 704afe61c15SRodney W. Grimescomplex entries in the 70536ab9525SJohn-Mark Gurney.Nm 706afe61c15SRodney W. Grimesfile as of this writing. 707afe61c15SRodney W. Grimes.Bd -literal 708afe61c15SRodney W. Grimesca\||\|concept100\||\|c100\||\|concept\||\|c104\||\|concept100-4p\||\|HDS Concept\-100:\e 709afe61c15SRodney W. Grimes :al=3*\eE^R:am:bl=^G:cd=16*\eE^C:ce=16\eE^U:cl=2*^L:cm=\eEa%+ %+ :\e 710afe61c15SRodney W. Grimes :co#80:.cr=9^M:db:dc=16\eE^A:dl=3*\eE^B:do=^J:ei=\eE\e200:eo:im=\eE^P:in:\e 711afe61c15SRodney W. Grimes :ip=16*:is=\eEU\eEf\eE7\eE5\eE8\eEl\eENH\eEK\eE\e200\eEo&\e200\eEo\e47\eE:k1=\eE5:\e 712afe61c15SRodney W. Grimes :k2=\eE6:k3=\eE7:kb=^h:kd=\eE<:ke=\eEx:kh=\eE?:kl=\eE>:kr=\eE=:ks=\eEX:\e 713afe61c15SRodney W. Grimes :ku=\eE;:le=^H:li#24:mb=\eEC:me=\eEN\e200:mh=\eEE:mi:mk=\eEH:mp=\eEI:\e 714afe61c15SRodney W. Grimes :mr=\eED:nd=\eE=:pb#9600:rp=0.2*\eEr%.%+ :se=\eEd\eEe:sf=^J:so=\eEE\eED:\e 715afe61c15SRodney W. Grimes :.ta=8\et:te=\eEv \e200\e200\e200\e200\e200\e200\eEp\er\en:\e 716afe61c15SRodney W. Grimes :ti=\eEU\eEv 8p\eEp\er:ue=\eEg:ul:up=\eE;:us=\eEG:\e 717afe61c15SRodney W. Grimes :vb=\eEk\e200\e200\e200\e200\e200\e200\e200\e200\e200\e200\e200\e200\e200\e200\eEK:\e 718afe61c15SRodney W. Grimes :ve=\eEw:vs=\eEW:vt#8:xn:\e 719afe61c15SRodney W. Grimes :bs:cr=^M:dC#9:dT#8:nl=^J:ta=^I:pt: 720afe61c15SRodney W. Grimes.Ed 721afe61c15SRodney W. Grimes.Pp 722afe61c15SRodney W. GrimesEntries may continue onto multiple lines by giving a \e as the last 723afe61c15SRodney W. Grimescharacter of a line, and empty fields 724afe61c15SRodney W. Grimesmay be included for readability (here between the last field on a line 725afe61c15SRodney W. Grimesand the first field on the next). 726afe61c15SRodney W. GrimesComments may be included on lines beginning with 727afe61c15SRodney W. Grimes.Dq # . 728afe61c15SRodney W. Grimes.Ss Types of Capabilities 729afe61c15SRodney W. GrimesCapabilities in 73036ab9525SJohn-Mark Gurney.Nm 731afe61c15SRodney W. Grimesare of three types: Boolean capabilities, 732afe61c15SRodney W. Grimeswhich indicate particular features that the terminal has; 733afe61c15SRodney W. Grimesnumeric capabilities, 734afe61c15SRodney W. Grimesgiving the size of the display or the size of other attributes; 735afe61c15SRodney W. Grimesand string capabilities, 736afe61c15SRodney W. Grimeswhich give character sequences that can be used to perform particular 737afe61c15SRodney W. Grimesterminal operations. 738afe61c15SRodney W. GrimesAll capabilities have two-letter codes. 739afe61c15SRodney W. GrimesFor instance, the fact that 740afe61c15SRodney W. Grimesthe Concept has 741afe61c15SRodney W. Grimes.Em automatic margins 742afe61c15SRodney W. Grimes(an automatic return and linefeed 743afe61c15SRodney W. Grimeswhen the end of a line is reached) is indicated by the Boolean capability 744afe61c15SRodney W. Grimes.Sy \&am . 745afe61c15SRodney W. GrimesHence the description of the Concept includes 746afe61c15SRodney W. Grimes.Sy \&am . 747afe61c15SRodney W. Grimes.Pp 748afe61c15SRodney W. GrimesNumeric capabilities are followed by the character `#' then the value. 749afe61c15SRodney W. GrimesIn the example above 750afe61c15SRodney W. Grimes.Sy \&co , 751afe61c15SRodney W. Grimeswhich indicates the number of columns the display has, 752afe61c15SRodney W. Grimesgives the value `80' for the Concept. 753afe61c15SRodney W. Grimes.Pp 754afe61c15SRodney W. GrimesFinally, string-valued capabilities, such as 755afe61c15SRodney W. Grimes.Sy \&ce 756afe61c15SRodney W. Grimes(clear-to-end-of-line 757afe61c15SRodney W. Grimessequence) are given by the two-letter code, an `=', then a string 758afe61c15SRodney W. Grimesending at the next following `:'. 759afe61c15SRodney W. GrimesA delay in milliseconds may appear after 760afe61c15SRodney W. Grimesthe `=' in such a capability, 761afe61c15SRodney W. Grimeswhich causes padding characters to be supplied by 762c2d6966aSPhilippe Charnier.Xr tputs 3 763afe61c15SRodney W. Grimesafter the remainder of the string is sent to provide this delay. 764afe61c15SRodney W. GrimesThe delay can be either a number, 765afe61c15SRodney W. Grimessuch as `20', or a number followed by 766afe61c15SRodney W. Grimesan `*', 767afe61c15SRodney W. Grimessuch as `3*'. 768afe61c15SRodney W. GrimesAn `*' indicates that the padding required is proportional 769afe61c15SRodney W. Grimesto the number of lines affected by the operation, and the amount given is 770afe61c15SRodney W. Grimesthe per-affected-line padding required. 771afe61c15SRodney W. Grimes(In the case of insert-character, 772afe61c15SRodney W. Grimesthe factor is still the number of 773afe61c15SRodney W. Grimes.Em lines 774afe61c15SRodney W. Grimesaffected; 775afe61c15SRodney W. Grimesthis is always 1 unless the terminal has 776afe61c15SRodney W. Grimes.Sy \&in 777afe61c15SRodney W. Grimesand the software uses it.) 778afe61c15SRodney W. GrimesWhen an `*' is specified, it is sometimes useful to give a delay of the form 779afe61c15SRodney W. Grimes`3.5' to specify a delay per line to tenths of milliseconds. 780afe61c15SRodney W. Grimes(Only one decimal place is allowed.) 781afe61c15SRodney W. Grimes.Pp 782afe61c15SRodney W. GrimesA number of escape sequences are provided in the string-valued capabilities 783afe61c15SRodney W. Grimesfor easy encoding of control characters there. 784afe61c15SRodney W. Grimes.Sy \&\eE 785afe61c15SRodney W. Grimesmaps to an 786afe61c15SRodney W. Grimes.Dv ESC 787afe61c15SRodney W. Grimescharacter, 788afe61c15SRodney W. Grimes.Sy \&^X 789afe61c15SRodney W. Grimesmaps to a control-X for any appropriate X, 790afe61c15SRodney W. Grimesand the sequences 791afe61c15SRodney W. Grimes.Sy \&\en 792afe61c15SRodney W. Grimes.Sy \&\er 793afe61c15SRodney W. Grimes.Sy \&\et 794afe61c15SRodney W. Grimes.Sy \&\eb 795afe61c15SRodney W. Grimes.Sy \&\ef 796afe61c15SRodney W. Grimesmap to linefeed, return, tab, backspace, and formfeed, respectively. 797afe61c15SRodney W. GrimesFinally, characters may be given as three octal digits after a 798afe61c15SRodney W. Grimes.Sy \&\e , 799afe61c15SRodney W. Grimesand the characters 800afe61c15SRodney W. Grimes.Sy \&^ 801afe61c15SRodney W. Grimesand 802afe61c15SRodney W. Grimes.Sy \&\e 803afe61c15SRodney W. Grimesmay be given as 804afe61c15SRodney W. Grimes.Sy \&\e^ 805afe61c15SRodney W. Grimesand 806afe61c15SRodney W. Grimes.Sy \&\e\e . 807afe61c15SRodney W. GrimesIf it is necessary to place a 808afe61c15SRodney W. Grimes.Sy \&: 809f350abf8SRuslan Ermilovin a capability it must be escaped as 810f350abf8SRuslan Ermilov.Sy \e: 811f350abf8SRuslan Ermilovor be encoded as 812afe61c15SRodney W. Grimes.Sy \&\e072 . 813afe61c15SRodney W. GrimesIf it is necessary to place a 814afe61c15SRodney W. Grimes.Dv NUL 815afe61c15SRodney W. Grimescharacter in a string capability it 816afe61c15SRodney W. Grimesmust be encoded as 817afe61c15SRodney W. Grimes.Sy \&\e200 . 818afe61c15SRodney W. Grimes(The routines that deal with 81936ab9525SJohn-Mark Gurney.Nm 820afe61c15SRodney W. Grimesuse C strings and strip the high bits of the output very late, so that 821afe61c15SRodney W. Grimesa 822afe61c15SRodney W. Grimes.Sy \&\e200 823afe61c15SRodney W. Grimescomes out as a 824afe61c15SRodney W. Grimes.Sy \&\e000 825afe61c15SRodney W. Grimeswould.) 826afe61c15SRodney W. Grimes.Pp 827afe61c15SRodney W. GrimesSometimes individual capabilities must be commented out. 828afe61c15SRodney W. GrimesTo do this, put a period before the capability name. 829afe61c15SRodney W. GrimesFor example, see the first 830afe61c15SRodney W. Grimes.Sy \&cr 831afe61c15SRodney W. Grimesand 832afe61c15SRodney W. Grimes.Sy \&ta 833afe61c15SRodney W. Grimesin the example above. 834afe61c15SRodney W. Grimes.Ss Preparing Descriptions 835afe61c15SRodney W. GrimesThe most effective way to prepare a terminal description is by imitating 836afe61c15SRodney W. Grimesthe description of a similar terminal in 83736ab9525SJohn-Mark Gurney.Nm 838afe61c15SRodney W. Grimesand to build up a description gradually, using partial descriptions 839afe61c15SRodney W. Grimeswith 840c2d6966aSPhilippe Charnier.Xr \&vi 1 841afe61c15SRodney W. Grimesto check that they are correct. 842afe61c15SRodney W. GrimesBe aware that a very unusual terminal may expose deficiencies in 843afe61c15SRodney W. Grimesthe ability of the 84436ab9525SJohn-Mark Gurney.Nm 845afe61c15SRodney W. Grimesfile to describe it 846afe61c15SRodney W. Grimesor bugs in 847c2d6966aSPhilippe Charnier.Xr \&vi 1 . 848afe61c15SRodney W. GrimesTo easily test a new terminal description you are working on 849afe61c15SRodney W. Grimesyou can put it in your home directory in a file called 850afe61c15SRodney W. Grimes.Pa .termcap 851afe61c15SRodney W. Grimesand programs will look there before looking in 852afe61c15SRodney W. Grimes.Pa /usr/share/misc/termcap . 853afe61c15SRodney W. GrimesYou can also set the environment variable 854afe61c15SRodney W. Grimes.Ev TERMPATH 855afe61c15SRodney W. Grimesto a list of absolute file pathnames (separated by spaces or colons), 856afe61c15SRodney W. Grimesone of which contains the description you are working on, 857afe61c15SRodney W. Grimesand programs will search them in the order listed, and nowhere else. 858afe61c15SRodney W. GrimesSee 859afe61c15SRodney W. Grimes.Xr termcap 3 . 860afe61c15SRodney W. GrimesThe 861afe61c15SRodney W. Grimes.Ev TERMCAP 862afe61c15SRodney W. Grimesenvironment variable is usually set to the 86336ab9525SJohn-Mark Gurney.Nm 864afe61c15SRodney W. Grimesentry itself 865afe61c15SRodney W. Grimesto avoid reading files when starting up a program. 866afe61c15SRodney W. Grimes.Pp 867afe61c15SRodney W. GrimesTo get the padding for insert-line right 868afe61c15SRodney W. Grimes(if the terminal manufacturer did not document it), 869afe61c15SRodney W. Grimesa severe test is to use 870c2d6966aSPhilippe Charnier.Xr \&vi 1 871afe61c15SRodney W. Grimesto edit 872afe61c15SRodney W. Grimes.Pa /etc/passwd 873afe61c15SRodney W. Grimesat 9600 baud, delete roughly 16 lines from the middle of the screen, 874afe61c15SRodney W. Grimesthen hit the `u' key several times quickly. 875afe61c15SRodney W. GrimesIf the display messes up, more padding is usually needed. 876afe61c15SRodney W. GrimesA similar test can be used for insert-character. 877afe61c15SRodney W. Grimes.Ss Basic Capabilities 878afe61c15SRodney W. GrimesThe number of columns on each line of the display is given by the 879afe61c15SRodney W. Grimes.Sy \&co 880afe61c15SRodney W. Grimesnumeric capability. 881afe61c15SRodney W. GrimesIf the display is a 882afe61c15SRodney W. Grimes.Tn CRT , 883afe61c15SRodney W. Grimesthen the 884afe61c15SRodney W. Grimesnumber of lines on the screen is given by the 885afe61c15SRodney W. Grimes.Sy \&li 886afe61c15SRodney W. Grimescapability. 887afe61c15SRodney W. GrimesIf the display wraps around to the beginning of the next line when 888afe61c15SRodney W. Grimesthe cursor reaches the right margin, then it should have the 889afe61c15SRodney W. Grimes.Sy \&am 890afe61c15SRodney W. Grimescapability. 891afe61c15SRodney W. GrimesIf the terminal can clear its screen, 892afe61c15SRodney W. Grimesthe code to do this is given by the 893afe61c15SRodney W. Grimes.Sy \&cl 894afe61c15SRodney W. Grimesstring capability. 895afe61c15SRodney W. GrimesIf the terminal overstrikes 896afe61c15SRodney W. Grimes(rather than clearing the position when a character is overwritten), 897afe61c15SRodney W. Grimesit should have the 898afe61c15SRodney W. Grimes.Sy \&os 899afe61c15SRodney W. Grimescapability. 900afe61c15SRodney W. GrimesIf the terminal is a printing terminal, 901afe61c15SRodney W. Grimeswith no soft copy unit, 902afe61c15SRodney W. Grimesgive it both 903afe61c15SRodney W. Grimes.Sy \&hc 904afe61c15SRodney W. Grimesand 905afe61c15SRodney W. Grimes.Sy \&os . 906afe61c15SRodney W. Grimes.Pf ( Sy \&os 907afe61c15SRodney W. Grimesapplies to storage scope terminals, 908afe61c15SRodney W. Grimessuch as the Tektronix 4010 series, 909afe61c15SRodney W. Grimesas well as to hard copy and 910afe61c15SRodney W. Grimes.Tn APL 911afe61c15SRodney W. Grimesterminals.) 912afe61c15SRodney W. GrimesIf there is a code to move the cursor to the left edge of the current row, 913afe61c15SRodney W. Grimesgive this as 914afe61c15SRodney W. Grimes.Sy \&cr . 915afe61c15SRodney W. Grimes(Normally this will be carriage-return, 916afe61c15SRodney W. Grimes.Sy \&^M . ) 917afe61c15SRodney W. GrimesIf there is a code to produce an audible signal (bell, beep, 918afe61c15SRodney W. Grimesetc.), 919afe61c15SRodney W. Grimesgive this as 920afe61c15SRodney W. Grimes.Sy \&bl . 921afe61c15SRodney W. Grimes.Pp 922afe61c15SRodney W. GrimesIf there is a code (such as backspace) 923afe61c15SRodney W. Grimesto move the cursor one position to the left, 924afe61c15SRodney W. Grimesthat capability should be given as 925afe61c15SRodney W. Grimes.Sy \&le . 926afe61c15SRodney W. GrimesSimilarly, 927afe61c15SRodney W. Grimescodes to move to the right, up, and down 928afe61c15SRodney W. Grimesshould be given as 929afe61c15SRodney W. Grimes.Sy \&nd , 930afe61c15SRodney W. Grimes.Sy \&up , 931afe61c15SRodney W. Grimesand 932afe61c15SRodney W. Grimes.Sy \&do , 933afe61c15SRodney W. Grimesrespectively. 934afe61c15SRodney W. GrimesThese 935afe61c15SRodney W. Grimes.Em local cursor motions 936afe61c15SRodney W. Grimesshould not alter the text they pass over; 937afe61c15SRodney W. Grimesfor example, you would not normally use 938afe61c15SRodney W. Grimes.Dq nd=\ \& 939afe61c15SRodney W. Grimesunless the terminal has the 940afe61c15SRodney W. Grimes.Sy \&os 941afe61c15SRodney W. Grimescapability, 942afe61c15SRodney W. Grimesbecause the space would erase the character moved over. 943afe61c15SRodney W. Grimes.Pp 944afe61c15SRodney W. GrimesA very important point here is that the local cursor motions encoded 945afe61c15SRodney W. Grimesin 94636ab9525SJohn-Mark Gurney.Nm 947afe61c15SRodney W. Grimeshave undefined behavior at the left and top edges of a 948afe61c15SRodney W. Grimes.Tn CRT 949afe61c15SRodney W. Grimesdisplay. 950afe61c15SRodney W. GrimesPrograms should never attempt to backspace around the left edge, 951afe61c15SRodney W. Grimesunless 952afe61c15SRodney W. Grimes.Sy \&bw 953afe61c15SRodney W. Grimesis given, and never attempt to go up off the top 954afe61c15SRodney W. Grimesusing local cursor motions. 955afe61c15SRodney W. Grimes.Pp 956afe61c15SRodney W. GrimesIn order to scroll text up, 957afe61c15SRodney W. Grimesa program goes to the bottom left corner of the screen and sends the 958afe61c15SRodney W. Grimes.Sy \&sf 959afe61c15SRodney W. Grimes(index) string. 960afe61c15SRodney W. GrimesTo scroll text down, 961afe61c15SRodney W. Grimesa program goes to the top left corner of the screen and sends the 962afe61c15SRodney W. Grimes.Sy \&sr 963afe61c15SRodney W. Grimes(reverse index) string. 964afe61c15SRodney W. GrimesThe strings 965afe61c15SRodney W. Grimes.Sy \&sf 966afe61c15SRodney W. Grimesand 967afe61c15SRodney W. Grimes.Sy \&sr 968afe61c15SRodney W. Grimeshave undefined behavior 969afe61c15SRodney W. Grimeswhen not on their respective corners of the screen. 970afe61c15SRodney W. GrimesParameterized versions of the scrolling sequences are 971afe61c15SRodney W. Grimes.Sy \&SF 972afe61c15SRodney W. Grimesand 973afe61c15SRodney W. Grimes.Sy \&SR , 974afe61c15SRodney W. Grimeswhich have the same semantics as 975afe61c15SRodney W. Grimes.Sy \&sf 976afe61c15SRodney W. Grimesand 977afe61c15SRodney W. Grimes.Sy \&sr 978afe61c15SRodney W. Grimesexcept that they take one parameter 979afe61c15SRodney W. Grimesand scroll that many lines. 980afe61c15SRodney W. GrimesThey also have undefined behavior 981afe61c15SRodney W. Grimesexcept at the appropriate corner of the screen. 982afe61c15SRodney W. Grimes.Pp 983afe61c15SRodney W. GrimesThe 984afe61c15SRodney W. Grimes.Sy \&am 985afe61c15SRodney W. Grimescapability tells whether the cursor sticks at the right 986afe61c15SRodney W. Grimesedge of the screen when text is output there, 987afe61c15SRodney W. Grimesbut this does not necessarily apply to 988afe61c15SRodney W. Grimes.Sy \&nd 989afe61c15SRodney W. Grimesfrom the last column. 990afe61c15SRodney W. GrimesLeftward local motion is defined from the left edge only when 991afe61c15SRodney W. Grimes.Sy \&bw 992afe61c15SRodney W. Grimesis given; then an 993afe61c15SRodney W. Grimes.Sy \&le 994afe61c15SRodney W. Grimesfrom the left edge will move to the right edge of the previous row. 995afe61c15SRodney W. GrimesThis is useful for drawing a box around the edge of the screen, 996afe61c15SRodney W. Grimesfor example. 997afe61c15SRodney W. GrimesIf the terminal has switch-selectable automatic margins, 998afe61c15SRodney W. Grimesthe 99936ab9525SJohn-Mark Gurney.Nm 1000afe61c15SRodney W. Grimesdescription usually assumes that this feature is on, 1001afe61c15SRodney W. Grimes.Em i.e . , 1002afe61c15SRodney W. Grimes.Sy \&am . 1003afe61c15SRodney W. GrimesIf the terminal has a command 1004afe61c15SRodney W. Grimesthat moves to the first column of the next line, 1005afe61c15SRodney W. Grimesthat command can be given as 1006afe61c15SRodney W. Grimes.Sy \&nw 1007afe61c15SRodney W. Grimes(newline). 1008afe61c15SRodney W. GrimesIt is permissible for this to clear the remainder of the current line, 1009afe61c15SRodney W. Grimesso if the terminal has no correctly-working 1010afe61c15SRodney W. Grimes.Tn \&CR 1011afe61c15SRodney W. Grimesand 1012afe61c15SRodney W. Grimes.Tn \&LF 1013afe61c15SRodney W. Grimesit may still be possible to craft a working 1014afe61c15SRodney W. Grimes.Sy \&nw 1015afe61c15SRodney W. Grimesout of one or both of them. 1016afe61c15SRodney W. Grimes.Pp 1017afe61c15SRodney W. GrimesThese capabilities suffice to describe hardcopy and 1018afe61c15SRodney W. Grimes.Dq glass-tty 1019afe61c15SRodney W. Grimesterminals. 1020afe61c15SRodney W. GrimesThus the Teletype model 33 is described as 1021afe61c15SRodney W. Grimes.Bd -literal -offset indent 1022afe61c15SRodney W. GrimesT3\||\|tty33\||\|33\||\|tty\||\|Teletype model 33:\e 1023afe61c15SRodney W. Grimes :bl=^G:co#72:cr=^M:do=^J:hc:os: 1024afe61c15SRodney W. Grimes.Ed 1025afe61c15SRodney W. Grimes.Pp 1026afe61c15SRodney W. Grimesand the Lear Siegler 1027afe61c15SRodney W. Grimes.Tn ADM Ns \-3 1028afe61c15SRodney W. Grimesis described as 1029afe61c15SRodney W. Grimes.Bd -literal -offset indent 1030a90fbe1dSUlrich Spörleinl3\||\|adm3\||\|3\||\|LSI ADM-3:\e 1031afe61c15SRodney W. Grimes:am:bl=^G:cl=^Z:co#80:cr=^M:do=^J:le=^H:li#24:sf=^J: 1032afe61c15SRodney W. Grimes.Ed 1033afe61c15SRodney W. Grimes.Ss Parameterized Strings 1034afe61c15SRodney W. GrimesCursor addressing and other strings requiring parameters 1035afe61c15SRodney W. Grimesare described by a 1036afe61c15SRodney W. Grimesparameterized string capability, with 1037afe61c15SRodney W. Grimes.Xr printf 3 Ns \-like 1038afe61c15SRodney W. Grimesescapes 1039afe61c15SRodney W. Grimes.Sy \&%x 1040afe61c15SRodney W. Grimesin it, 1041afe61c15SRodney W. Grimeswhile other characters are passed through unchanged. 1042afe61c15SRodney W. GrimesFor example, to address the cursor the 1043afe61c15SRodney W. Grimes.Sy \&cm 1044afe61c15SRodney W. Grimescapability is given, using two parameters: the row and column to move to. 1045afe61c15SRodney W. Grimes(Rows and columns are numbered from zero and refer to the physical screen 1046afe61c15SRodney W. Grimesvisible to the user, not to any unseen memory. 1047afe61c15SRodney W. GrimesIf the terminal has memory-relative cursor addressing, 1048afe61c15SRodney W. Grimesthat can be indicated by an analogous 1049afe61c15SRodney W. Grimes.Sy \&CM 1050afe61c15SRodney W. Grimescapability.) 1051afe61c15SRodney W. Grimes.Pp 1052afe61c15SRodney W. GrimesThe 1053afe61c15SRodney W. Grimes.Sy \&% 1054afe61c15SRodney W. Grimesencodings have the following meanings: 1055afe61c15SRodney W. Grimes.Bl -column xxxxx 1056afe61c15SRodney W. Grimes.It "%% output `%'" 1057afe61c15SRodney W. Grimes.It "%d output value as in" 1058c2d6966aSPhilippe Charnier.Xr printf 3 1059afe61c15SRodney W. Grimes%d 1060afe61c15SRodney W. Grimes.It "%2 output value as in" 1061c2d6966aSPhilippe Charnier.Xr printf 3 1062afe61c15SRodney W. Grimes%2d 1063afe61c15SRodney W. Grimes.It "%3 output value as in" 1064c2d6966aSPhilippe Charnier.Xr printf 3 1065afe61c15SRodney W. Grimes%3d 1066afe61c15SRodney W. Grimes.It "%. output value as in" 1067c2d6966aSPhilippe Charnier.Xr printf 3 1068afe61c15SRodney W. Grimes%c 1069afe61c15SRodney W. Grimes.It "%+" Ns Em x Ta No add 1070afe61c15SRodney W. Grimes.Em x 1071afe61c15SRodney W. Grimesto value, then do %. 1072afe61c15SRodney W. Grimes.It "%>" Ns Em \&xy Ta No if 1073afe61c15SRodney W. Grimesvalue > 1074afe61c15SRodney W. Grimes.Em x 1075afe61c15SRodney W. Grimesthen add 1076afe61c15SRodney W. Grimes.Em y , 1077afe61c15SRodney W. Grimesno output 1078afe61c15SRodney W. Grimes.It "%r reverse order of two parameters, no output" 1079afe61c15SRodney W. Grimes.It "%i increment by one, no output" 1080afe61c15SRodney W. Grimes.It "%n exclusive-or all parameters with 0140 (Datamedia 2500)" 10813136363fSRuslan Ermilov.It "\&%B" Ta Tn BCD No "(16*(value/10)) + (value%10), no output" 1082afe61c15SRodney W. Grimes.It "%D Reverse coding (value \- 2*(value%16)), no output (Delta Data)." 1083afe61c15SRodney W. Grimes.El 1084afe61c15SRodney W. Grimes.Pp 1085afe61c15SRodney W. GrimesConsider the Hewlett-Packard 2645, which, to get to row 3 and column 12, needs 1086afe61c15SRodney W. Grimesto be sent 1087afe61c15SRodney W. Grimes.Dq \eE&a12c03Y 1088afe61c15SRodney W. Grimespadded for 6 milliseconds. 1089afe61c15SRodney W. GrimesNote that the order 1090afe61c15SRodney W. Grimesof the row and column coordinates is reversed here 1091afe61c15SRodney W. Grimesand that the row and column 1092afe61c15SRodney W. Grimesare sent as two-digit integers. 1093afe61c15SRodney W. GrimesThus its 1094afe61c15SRodney W. Grimes.Sy \&cm 1095afe61c15SRodney W. Grimescapability is 1096afe61c15SRodney W. Grimes.Dq Li cm=6\eE&%r%2c%2Y . 1097afe61c15SRodney W. Grimes.Pp 1098afe61c15SRodney W. GrimesThe Datamedia 2500 needs the current row and column sent 1099afe61c15SRodney W. Grimesencoded in binary using 1100afe61c15SRodney W. Grimes.Dq \&%. . 1101afe61c15SRodney W. GrimesTerminals that use 11023136363fSRuslan Ermilov.Dq %.\& 1103afe61c15SRodney W. Grimesneed to be able to 1104afe61c15SRodney W. Grimesbackspace the cursor 1105c4d9468eSRuslan Ermilov.Pq Sy \&le 1106afe61c15SRodney W. Grimesand to move the cursor up one line on the screen 1107c4d9468eSRuslan Ermilov.Pq Sy \&up . 1108afe61c15SRodney W. GrimesThis is necessary because it is not always safe to transmit 1109afe61c15SRodney W. Grimes.Sy \&\en , 1110afe61c15SRodney W. Grimes.Sy \&^D , 1111afe61c15SRodney W. Grimesand 1112afe61c15SRodney W. Grimes.Sy \&\er , 1113afe61c15SRodney W. Grimesas the system may change or discard them. 1114afe61c15SRodney W. Grimes(Programs using 111536ab9525SJohn-Mark Gurney.Nm 1116afe61c15SRodney W. Grimesmust set terminal modes so that tabs are not expanded, so 1117afe61c15SRodney W. Grimes.Sy \&\et 1118afe61c15SRodney W. Grimesis safe to send. 1119afe61c15SRodney W. GrimesThis turns out to be essential for the Ann Arbor 4080.) 1120afe61c15SRodney W. Grimes.Pp 1121afe61c15SRodney W. GrimesA final example is the Lear Siegler 1122afe61c15SRodney W. Grimes.Tn ADM Ns \-3a , 1123afe61c15SRodney W. Grimeswhich offsets row and column 1124afe61c15SRodney W. Grimesby a blank character, thus 1125afe61c15SRodney W. Grimes.Dq Li cm=\eE=%+ %+\ \& . 1126afe61c15SRodney W. Grimes.Pp 1127afe61c15SRodney W. GrimesRow or column absolute cursor addressing 1128afe61c15SRodney W. Grimescan be given as single parameter capabilities 1129afe61c15SRodney W. Grimes.Sy \&ch 1130afe61c15SRodney W. Grimes(horizontal position absolute) and 1131afe61c15SRodney W. Grimes.Sy \&cv 1132afe61c15SRodney W. Grimes(vertical position absolute). 1133afe61c15SRodney W. GrimesSometimes these are shorter than the more general two-parameter sequence 1134afe61c15SRodney W. Grimes(as with the Hewlett-Packard 2645) and can be used in preference to 1135afe61c15SRodney W. Grimes.Sy \&cm . 1136afe61c15SRodney W. GrimesIf there are parameterized local motions 1137afe61c15SRodney W. Grimes.Pf ( Em e.g . , 1138afe61c15SRodney W. Grimesmove 1139afe61c15SRodney W. Grimes.Ar n 1140afe61c15SRodney W. Grimespositions to the right) 1141afe61c15SRodney W. Grimesthese can be given as 1142afe61c15SRodney W. Grimes.Sy \&DO , 1143afe61c15SRodney W. Grimes.Sy \&LE , 1144afe61c15SRodney W. Grimes.Sy \&RI , 1145afe61c15SRodney W. Grimesand 1146afe61c15SRodney W. Grimes.Sy \&UP 1147afe61c15SRodney W. Grimeswith a single parameter indicating how many positions to move. 1148afe61c15SRodney W. GrimesThese are primarily useful if the terminal does not have 1149afe61c15SRodney W. Grimes.Sy \&cm , 1150afe61c15SRodney W. Grimessuch as the Tektronix 4025. 1151afe61c15SRodney W. Grimes.Ss Cursor Motions 1152afe61c15SRodney W. GrimesIf the terminal has a fast way to home the cursor 1153afe61c15SRodney W. Grimes(to the very upper left corner of the screen), this can be given as 1154afe61c15SRodney W. Grimes.Sy \&ho . 1155afe61c15SRodney W. GrimesSimilarly, a fast way of getting to the lower left-hand corner 1156afe61c15SRodney W. Grimescan be given as 1157afe61c15SRodney W. Grimes.Sy \&ll ; 1158afe61c15SRodney W. Grimesthis may involve going up with 1159afe61c15SRodney W. Grimes.Sy \&up 1160afe61c15SRodney W. Grimesfrom the home position, 1161afe61c15SRodney W. Grimesbut a program should never do this itself (unless 1162afe61c15SRodney W. Grimes.Sy \&ll 1163afe61c15SRodney W. Grimesdoes), because it can 1164afe61c15SRodney W. Grimesmake no assumption about the effect of moving up from the home position. 1165afe61c15SRodney W. GrimesNote that the home position is the same as 1166afe61c15SRodney W. Grimescursor address (0,0): to the top left corner of the screen, not of memory. 1167afe61c15SRodney W. Grimes(Therefore, the 1168afe61c15SRodney W. Grimes.Dq \eEH 1169afe61c15SRodney W. Grimessequence on Hewlett-Packard terminals 1170afe61c15SRodney W. Grimescannot be used for 1171afe61c15SRodney W. Grimes.Sy \&ho . ) 1172afe61c15SRodney W. Grimes.Ss Area Clears 1173afe61c15SRodney W. GrimesIf the terminal can clear from the current position to the end of the 1174afe61c15SRodney W. Grimesline, leaving the cursor where it is, this should be given as 1175afe61c15SRodney W. Grimes.Sy \&ce . 1176afe61c15SRodney W. GrimesIf the terminal can clear from the current position to the end of the 1177afe61c15SRodney W. Grimesdisplay, this should be given as 1178afe61c15SRodney W. Grimes.Sy \&cd . 1179afe61c15SRodney W. Grimes.Sy \&cd 1180afe61c15SRodney W. Grimesmust only be invoked from the first column of a line. 1181afe61c15SRodney W. Grimes(Therefore, 1182afe61c15SRodney W. Grimesit can be simulated by a request to delete a large number of lines, 1183afe61c15SRodney W. Grimesif a true 1184afe61c15SRodney W. Grimes.Sy \&cd 1185afe61c15SRodney W. Grimesis not available.) 1186afe61c15SRodney W. Grimes.Ss Insert/Delete Line 1187afe61c15SRodney W. GrimesIf the terminal can open a new blank line 1188afe61c15SRodney W. Grimesbefore the line containing the cursor, 1189afe61c15SRodney W. Grimesthis should be given as 1190afe61c15SRodney W. Grimes.Sy \&al ; 1191afe61c15SRodney W. Grimesthis must be invoked only from the first 1192afe61c15SRodney W. Grimesposition of a line. 1193afe61c15SRodney W. GrimesThe cursor must then appear at the left of the newly blank line. 1194afe61c15SRodney W. GrimesIf the terminal can delete the line that the cursor is on, this 1195afe61c15SRodney W. Grimesshould be given as 1196afe61c15SRodney W. Grimes.Sy \&dl ; 1197afe61c15SRodney W. Grimesthis must only be used from the first position on 1198afe61c15SRodney W. Grimesthe line to be deleted. 1199afe61c15SRodney W. GrimesVersions of 1200afe61c15SRodney W. Grimes.Sy \&al 1201afe61c15SRodney W. Grimesand 1202afe61c15SRodney W. Grimes.Sy \&dl 1203afe61c15SRodney W. Grimeswhich take a single parameter 1204afe61c15SRodney W. Grimesand insert or delete that many lines 1205afe61c15SRodney W. Grimescan be given as 1206afe61c15SRodney W. Grimes.Sy \&AL 1207afe61c15SRodney W. Grimesand 1208afe61c15SRodney W. Grimes.Sy \&DL . 1209afe61c15SRodney W. GrimesIf the terminal has a settable scrolling region 1210afe61c15SRodney W. Grimes(like the VT100), 1211afe61c15SRodney W. Grimesthe command to set this can be described with the 1212afe61c15SRodney W. Grimes.Sy \&cs 1213afe61c15SRodney W. Grimescapability, 1214afe61c15SRodney W. Grimeswhich takes two parameters: the top and bottom lines of the scrolling region. 1215afe61c15SRodney W. GrimesThe cursor position is, alas, undefined after using this command. 1216afe61c15SRodney W. GrimesIt is possible to get the effect of insert or delete line 1217afe61c15SRodney W. Grimesusing this command \(em the 1218afe61c15SRodney W. Grimes.Sy \&sc 1219afe61c15SRodney W. Grimesand 1220afe61c15SRodney W. Grimes.Sy \&rc 1221afe61c15SRodney W. Grimes(save and restore cursor) commands are also useful. 1222afe61c15SRodney W. GrimesInserting lines at the top or bottom of the screen can also be done using 1223afe61c15SRodney W. Grimes.Sy \&sr 1224afe61c15SRodney W. Grimesor 1225afe61c15SRodney W. Grimes.Sy \&sf 1226afe61c15SRodney W. Grimeson many terminals without a true insert/delete line, 1227afe61c15SRodney W. Grimesand is often faster even on terminals with those features. 1228afe61c15SRodney W. Grimes.Pp 1229afe61c15SRodney W. GrimesIf the terminal has the ability to define a window as part of memory 1230afe61c15SRodney W. Grimeswhich all commands affect, it should be given as the parameterized string 1231afe61c15SRodney W. Grimes.Sy \&wi . 1232afe61c15SRodney W. GrimesThe four parameters are the starting and ending lines in memory 1233afe61c15SRodney W. Grimesand the starting and ending columns in memory, in that order. 1234afe61c15SRodney W. Grimes(This 1235d0353b83SRuslan Ermilov.Xr terminfo 5 1236afe61c15SRodney W. Grimescapability is described for completeness. 1237afe61c15SRodney W. GrimesIt is unlikely that any 12384b66483fSRuslan Ermilov.Nm Ns \-using 1239afe61c15SRodney W. Grimesprogram will support it.) 1240afe61c15SRodney W. Grimes.Pp 1241afe61c15SRodney W. GrimesIf the terminal can retain display memory above the screen, then the 1242afe61c15SRodney W. Grimes.Sy \&da 1243afe61c15SRodney W. Grimescapability should be given; 1244afe61c15SRodney W. Grimesif display memory can be retained 1245afe61c15SRodney W. Grimesbelow, then 1246afe61c15SRodney W. Grimes.Sy \&db 1247afe61c15SRodney W. Grimesshould be given. 1248afe61c15SRodney W. GrimesThese indicate 1249afe61c15SRodney W. Grimesthat deleting a line or scrolling may bring non-blank lines up from below 1250afe61c15SRodney W. Grimesor that scrolling back with 1251afe61c15SRodney W. Grimes.Sy \&sr 1252afe61c15SRodney W. Grimesmay bring down non-blank lines. 1253afe61c15SRodney W. Grimes.Ss Insert/Delete Character 1254afe61c15SRodney W. GrimesThere are two basic kinds of intelligent terminals with respect to 1255afe61c15SRodney W. Grimesinsert/delete character that can be described using 12564b66483fSRuslan Ermilov.Nm . 1257afe61c15SRodney W. GrimesThe most common insert/delete character operations affect only the characters 1258afe61c15SRodney W. Grimeson the current line and shift characters off the end of the line rigidly. 1259afe61c15SRodney W. GrimesOther terminals, such as the Concept\-100 and the Perkin Elmer Owl, make 1260afe61c15SRodney W. Grimesa distinction between typed and untyped blanks on the screen, shifting 1261afe61c15SRodney W. Grimesupon an insert or delete only to an untyped blank on the screen which is 1262afe61c15SRodney W. Grimeseither eliminated or expanded to two untyped blanks. 1263afe61c15SRodney W. GrimesYou can determine 1264afe61c15SRodney W. Grimesthe kind of terminal you have by clearing the screen then typing 1265afe61c15SRodney W. Grimestext separated by cursor motions. 1266afe61c15SRodney W. GrimesType 1267afe61c15SRodney W. Grimes.Dq Li abc\ \ \ \ def 1268afe61c15SRodney W. Grimesusing local 1269afe61c15SRodney W. Grimescursor motions (not spaces) between the 1270afe61c15SRodney W. Grimes.Dq abc 1271afe61c15SRodney W. Grimesand the 1272afe61c15SRodney W. Grimes.Dq def . 1273afe61c15SRodney W. GrimesThen position the cursor before the 1274afe61c15SRodney W. Grimes.Dq abc 1275afe61c15SRodney W. Grimesand put the terminal in insert 1276afe61c15SRodney W. Grimesmode. 1277afe61c15SRodney W. GrimesIf typing characters causes the rest of the line to shift 1278afe61c15SRodney W. Grimesrigidly and characters to fall off the end, then your terminal does 1279afe61c15SRodney W. Grimesnot distinguish between blanks and untyped positions. 1280afe61c15SRodney W. GrimesIf the 1281afe61c15SRodney W. Grimes.Dq abc 1282afe61c15SRodney W. Grimesshifts over to the 1283afe61c15SRodney W. Grimes.Dq def 1284afe61c15SRodney W. Grimeswhich then move together around the end of the 1285afe61c15SRodney W. Grimescurrent line and onto the next as you insert, then you have the second type of 1286afe61c15SRodney W. Grimesterminal and should give the capability 1287afe61c15SRodney W. Grimes.Sy \&in , 1288afe61c15SRodney W. Grimeswhich stands for 1289afe61c15SRodney W. Grimes.Dq insert null . 1290afe61c15SRodney W. GrimesWhile these are two logically separate attributes 1291afe61c15SRodney W. Grimes(one line 1292afe61c15SRodney W. Grimes.Em \&vs . 1293afe61c15SRodney W. Grimesmulti-line insert mode, 1294afe61c15SRodney W. Grimesand special treatment of untyped spaces), 1295afe61c15SRodney W. Grimeswe have seen no terminals whose insert 1296afe61c15SRodney W. Grimesmode cannot be described with the single attribute. 1297afe61c15SRodney W. Grimes.Pp 129836ab9525SJohn-Mark GurneyThe 129936ab9525SJohn-Mark Gurney.Nm 130036ab9525SJohn-Mark Gurneyentries can describe both terminals that have an insert mode and terminals 1301afe61c15SRodney W. Grimesthat send a simple sequence to open a blank position on the current line. 1302afe61c15SRodney W. GrimesGive as 1303afe61c15SRodney W. Grimes.Sy \&im 1304afe61c15SRodney W. Grimesthe sequence to get into insert mode. 1305afe61c15SRodney W. GrimesGive as 1306afe61c15SRodney W. Grimes.Sy \&ei 1307afe61c15SRodney W. Grimesthe sequence to leave insert mode. 1308afe61c15SRodney W. GrimesNow give as 1309afe61c15SRodney W. Grimes.Sy \&ic 1310afe61c15SRodney W. Grimesany sequence that needs to be sent just before 1311afe61c15SRodney W. Grimeseach character to be inserted. 1312afe61c15SRodney W. GrimesMost terminals with a true insert mode 1313afe61c15SRodney W. Grimeswill not give 1314afe61c15SRodney W. Grimes.Sy \&ic ; 1315afe61c15SRodney W. Grimesterminals that use a sequence to open a screen 1316afe61c15SRodney W. Grimesposition should give it here. 1317afe61c15SRodney W. Grimes(If your terminal has both, 1318afe61c15SRodney W. Grimesinsert mode is usually preferable to 1319afe61c15SRodney W. Grimes.Sy \&ic . 1320afe61c15SRodney W. GrimesDo not give both unless the terminal actually requires both to be used 1321afe61c15SRodney W. Grimesin combination.) 1322afe61c15SRodney W. GrimesIf post-insert padding is needed, give this as a number of milliseconds 1323afe61c15SRodney W. Grimesin 1324afe61c15SRodney W. Grimes.Sy \&ip 1325afe61c15SRodney W. Grimes(a string option). 1326afe61c15SRodney W. GrimesAny other sequence that may need to be 1327afe61c15SRodney W. Grimessent after insertion of a single character can also be given in 1328afe61c15SRodney W. Grimes.Sy \&ip . 1329afe61c15SRodney W. GrimesIf your terminal needs to be placed into an `insert mode' 1330afe61c15SRodney W. Grimesand needs a special code preceding each inserted character, 1331afe61c15SRodney W. Grimesthen both 1332afe61c15SRodney W. Grimes.Sy \&im Ns / Sy \&ei 1333afe61c15SRodney W. Grimesand 1334afe61c15SRodney W. Grimes.Sy \&ic 1335afe61c15SRodney W. Grimescan be given, and both will be used. 1336afe61c15SRodney W. GrimesThe 1337afe61c15SRodney W. Grimes.Sy \&IC 1338afe61c15SRodney W. Grimescapability, with one parameter 1339afe61c15SRodney W. Grimes.Em n , 1340afe61c15SRodney W. Grimeswill repeat the effects of 1341afe61c15SRodney W. Grimes.Sy \&ic 1342afe61c15SRodney W. Grimes.Em n 1343afe61c15SRodney W. Grimestimes. 1344afe61c15SRodney W. Grimes.Pp 1345afe61c15SRodney W. GrimesIt is occasionally necessary to move around while in insert mode 1346afe61c15SRodney W. Grimesto delete characters on the same line 1347afe61c15SRodney W. Grimes.Pf ( Em e.g . , 1348afe61c15SRodney W. Grimesif there is a tab after 1349afe61c15SRodney W. Grimesthe insertion position). 1350afe61c15SRodney W. GrimesIf your terminal allows motion while in 1351afe61c15SRodney W. Grimesinsert mode, you can give the capability 1352afe61c15SRodney W. Grimes.Sy \&mi 1353afe61c15SRodney W. Grimesto speed up inserting 1354afe61c15SRodney W. Grimesin this case. 1355afe61c15SRodney W. GrimesOmitting 1356afe61c15SRodney W. Grimes.Sy \&mi 1357afe61c15SRodney W. Grimeswill affect only speed. 1358afe61c15SRodney W. GrimesSome terminals 1359afe61c15SRodney W. Grimes(notably Datamedia's) must not have 1360afe61c15SRodney W. Grimes.Sy \&mi 1361afe61c15SRodney W. Grimesbecause of the way their 1362afe61c15SRodney W. Grimesinsert mode works. 1363afe61c15SRodney W. Grimes.Pp 1364afe61c15SRodney W. GrimesFinally, you can specify 1365afe61c15SRodney W. Grimes.Sy \&dc 1366afe61c15SRodney W. Grimesto delete a single character, 1367afe61c15SRodney W. Grimes.Sy \&DC 1368afe61c15SRodney W. Grimeswith one parameter 1369afe61c15SRodney W. Grimes.Em n 1370afe61c15SRodney W. Grimesto delete 1371afe61c15SRodney W. Grimes.Em n 1372afe61c15SRodney W. Grimescharacters, 1373afe61c15SRodney W. Grimesand delete mode by giving 1374afe61c15SRodney W. Grimes.Sy \&dm 1375afe61c15SRodney W. Grimesand 1376afe61c15SRodney W. Grimes.Sy \&ed 1377afe61c15SRodney W. Grimesto enter and exit delete mode 1378afe61c15SRodney W. Grimes(which is any mode the terminal needs to be placed in for 1379afe61c15SRodney W. Grimes.Sy \&dc 1380afe61c15SRodney W. Grimesto work). 1381afe61c15SRodney W. Grimes.Ss Highlighting, Underlining, and Visible Bells 1382afe61c15SRodney W. GrimesIf your terminal has one or more kinds of display attributes, 1383afe61c15SRodney W. Grimesthese can be represented in a number of different ways. 1384afe61c15SRodney W. GrimesYou should choose one display form as 1385afe61c15SRodney W. Grimes.Em standout mode , 1386afe61c15SRodney W. Grimesrepresenting a good high-contrast, easy-on-the-eyes format 1387afe61c15SRodney W. Grimesfor highlighting error messages and other attention getters. 1388afe61c15SRodney W. Grimes(If you have a choice, reverse video plus half-bright is good, 1389afe61c15SRodney W. Grimesor reverse video alone.) 1390afe61c15SRodney W. GrimesThe sequences to enter and exit standout mode 1391afe61c15SRodney W. Grimesare given as 1392afe61c15SRodney W. Grimes.Sy \&so 1393afe61c15SRodney W. Grimesand 1394afe61c15SRodney W. Grimes.Sy \&se , 1395afe61c15SRodney W. Grimesrespectively. 1396afe61c15SRodney W. GrimesIf the code to change into or out of standout 1397afe61c15SRodney W. Grimesmode leaves one or even two blank spaces or garbage characters on the screen, 1398afe61c15SRodney W. Grimesas the 1399afe61c15SRodney W. Grimes.Tn TVI 1400afe61c15SRodney W. Grimes912 and Teleray 1061 do, 1401afe61c15SRodney W. Grimesthen 1402afe61c15SRodney W. Grimes.Sy \&sg 1403afe61c15SRodney W. Grimesshould be given to tell how many characters are left. 1404afe61c15SRodney W. Grimes.Pp 1405afe61c15SRodney W. GrimesCodes to begin underlining and end underlining can be given as 1406afe61c15SRodney W. Grimes.Sy \&us 1407afe61c15SRodney W. Grimesand 1408afe61c15SRodney W. Grimes.Sy \&ue , 1409afe61c15SRodney W. Grimesrespectively. 1410afe61c15SRodney W. GrimesUnderline mode change garbage is specified by 1411afe61c15SRodney W. Grimes.Sy \&ug , 1412afe61c15SRodney W. Grimessimilar to 1413afe61c15SRodney W. Grimes.Sy \&sg . 1414afe61c15SRodney W. GrimesIf the terminal has a code to underline the current character and move 1415afe61c15SRodney W. Grimesthe cursor one position to the right, 1416afe61c15SRodney W. Grimessuch as the Microterm Mime, 1417afe61c15SRodney W. Grimesthis can be given as 1418afe61c15SRodney W. Grimes.Sy \&uc . 1419afe61c15SRodney W. Grimes.Pp 1420afe61c15SRodney W. GrimesOther capabilities to enter various highlighting modes include 1421afe61c15SRodney W. Grimes.Sy \&mb 1422afe61c15SRodney W. Grimes(blinking), 1423afe61c15SRodney W. Grimes.Sy \&md 1424afe61c15SRodney W. Grimes(bold or extra bright), 1425afe61c15SRodney W. Grimes.Sy \&mh 1426afe61c15SRodney W. Grimes(dim or half-bright), 1427afe61c15SRodney W. Grimes.Sy \&mk 1428afe61c15SRodney W. Grimes(blanking or invisible text), 1429afe61c15SRodney W. Grimes.Sy \&mp 1430afe61c15SRodney W. Grimes(protected), 1431afe61c15SRodney W. Grimes.Sy \&mr 1432afe61c15SRodney W. Grimes(reverse video), 1433afe61c15SRodney W. Grimes.Sy \&me 1434afe61c15SRodney W. Grimes(turn off 1435afe61c15SRodney W. Grimes.Em all 1436afe61c15SRodney W. Grimesattribute modes), 1437afe61c15SRodney W. Grimes.Sy \&as 1438afe61c15SRodney W. Grimes(enter alternate character set mode), and 1439afe61c15SRodney W. Grimes.Sy \&ae 1440afe61c15SRodney W. Grimes(exit alternate character set mode). 1441afe61c15SRodney W. GrimesTurning on any of these modes singly may or may not turn off other modes. 1442afe61c15SRodney W. Grimes.Pp 1443afe61c15SRodney W. GrimesIf there is a sequence to set arbitrary combinations of mode, 1444afe61c15SRodney W. Grimesthis should be given as 1445afe61c15SRodney W. Grimes.Sy \&sa 1446afe61c15SRodney W. Grimes(set attributes), taking 9 parameters. 1447afe61c15SRodney W. GrimesEach parameter is either 0 or 1, 1448afe61c15SRodney W. Grimesas the corresponding attributes is on or off. 1449afe61c15SRodney W. GrimesThe 9 parameters are, in order: standout, underline, reverse, blink, 1450afe61c15SRodney W. Grimesdim, bold, blank, protect, and alternate character set. 1451afe61c15SRodney W. GrimesNot all modes need be supported by 1452afe61c15SRodney W. Grimes.Sy \&sa , 1453afe61c15SRodney W. Grimesonly those for which corresponding attribute commands exist. 1454afe61c15SRodney W. Grimes(It is unlikely that a 145536ab9525SJohn-Mark Gurney.Nm Ns \-using 1456afe61c15SRodney W. Grimesprogram will support this capability, which is defined for compatibility 1457afe61c15SRodney W. Grimeswith 1458d0353b83SRuslan Ermilov.Xr terminfo 5 . ) 1459afe61c15SRodney W. Grimes.Pp 1460afe61c15SRodney W. GrimesTerminals with the 1461afe61c15SRodney W. Grimes.Dq magic cookie 1462afe61c15SRodney W. Grimesglitches 1463afe61c15SRodney W. Grimes.Pf ( Sy \&sg 1464afe61c15SRodney W. Grimesand 1465afe61c15SRodney W. Grimes.Sy \&ug ) , 1466afe61c15SRodney W. Grimesrather than maintaining extra attribute bits for each character cell, 1467afe61c15SRodney W. Grimesinstead deposit special 1468afe61c15SRodney W. Grimes.Dq cookies , 1469afe61c15SRodney W. Grimesor 1470d0353b83SRuslan Ermilov.Dq garbage characters , 1471afe61c15SRodney W. Grimeswhen they receive mode-setting sequences, 1472afe61c15SRodney W. Grimeswhich affect the display algorithm. 1473afe61c15SRodney W. Grimes.Pp 1474afe61c15SRodney W. GrimesSome terminals, 1475afe61c15SRodney W. Grimessuch as the Hewlett-Packard 2621, 1476afe61c15SRodney W. Grimesautomatically leave standout 1477afe61c15SRodney W. Grimesmode when they move to a new line or when the cursor is addressed. 1478afe61c15SRodney W. GrimesPrograms using standout mode 1479afe61c15SRodney W. Grimesshould exit standout mode on such terminals 1480afe61c15SRodney W. Grimesbefore moving the cursor or sending a newline. 1481afe61c15SRodney W. GrimesOn terminals where this is not a problem, 1482afe61c15SRodney W. Grimesthe 1483afe61c15SRodney W. Grimes.Sy \&ms 1484afe61c15SRodney W. Grimescapability should be present 1485afe61c15SRodney W. Grimesto say that this overhead is unnecessary. 1486afe61c15SRodney W. Grimes.Pp 1487afe61c15SRodney W. GrimesIf the terminal has 1488afe61c15SRodney W. Grimesa way of flashing the screen to indicate an error quietly 1489afe61c15SRodney W. Grimes(a bell replacement), 1490afe61c15SRodney W. Grimesthis can be given as 1491afe61c15SRodney W. Grimes.Sy \&vb ; 1492afe61c15SRodney W. Grimesit must not move the cursor. 1493afe61c15SRodney W. Grimes.Pp 1494afe61c15SRodney W. GrimesIf the cursor needs to be made more visible than normal 1495afe61c15SRodney W. Grimeswhen it is not on the bottom line 1496afe61c15SRodney W. Grimes(to change, for example, a non-blinking underline into an easier-to-find 1497afe61c15SRodney W. Grimesblock or blinking underline), 1498afe61c15SRodney W. Grimesgive this sequence as 1499afe61c15SRodney W. Grimes.Sy \&vs . 1500afe61c15SRodney W. GrimesIf there is a way to make the cursor completely invisible, give that as 1501afe61c15SRodney W. Grimes.Sy \&vi . 1502afe61c15SRodney W. GrimesThe capability 1503afe61c15SRodney W. Grimes.Sy \&ve , 1504afe61c15SRodney W. Grimeswhich undoes the effects of both of these modes, 1505afe61c15SRodney W. Grimesshould also be given. 1506afe61c15SRodney W. Grimes.Pp 1507afe61c15SRodney W. GrimesIf your terminal correctly displays underlined characters 1508afe61c15SRodney W. Grimes(with no special codes needed) 1509afe61c15SRodney W. Grimeseven though it does not overstrike, 1510afe61c15SRodney W. Grimesthen you should give the capability 1511afe61c15SRodney W. Grimes.Sy \&ul . 1512afe61c15SRodney W. GrimesIf overstrikes are erasable with a blank, 1513afe61c15SRodney W. Grimesthis should be indicated by giving 1514afe61c15SRodney W. Grimes.Sy \&eo . 1515afe61c15SRodney W. Grimes.Ss Keypad 1516afe61c15SRodney W. GrimesIf the terminal has a keypad that transmits codes when the keys are pressed, 1517afe61c15SRodney W. Grimesthis information can be given. 1518afe61c15SRodney W. GrimesNote that it is not possible to handle 1519afe61c15SRodney W. Grimesterminals where the keypad only works in local mode 1520afe61c15SRodney W. Grimes(this applies, for example, to the unshifted Hewlett-Packard 2621 keys). 1521afe61c15SRodney W. GrimesIf the keypad can be set to transmit or not transmit, 1522afe61c15SRodney W. Grimesgive these codes as 1523afe61c15SRodney W. Grimes.Sy \&ks 1524afe61c15SRodney W. Grimesand 1525afe61c15SRodney W. Grimes.Sy \&ke . 1526afe61c15SRodney W. GrimesOtherwise the keypad is assumed to always transmit. 1527afe61c15SRodney W. GrimesThe codes sent by the left-arrow, right-arrow, up-arrow, down-arrow, 1528afe61c15SRodney W. Grimesand home keys can be given as 1529afe61c15SRodney W. Grimes.Sy \&kl , 1530afe61c15SRodney W. Grimes.Sy \&kr , 1531afe61c15SRodney W. Grimes.Sy \&ku , 1532afe61c15SRodney W. Grimes.Sy \&kd , 1533afe61c15SRodney W. Grimesand 1534afe61c15SRodney W. Grimes.Sy \&kh , 1535afe61c15SRodney W. Grimesrespectively. 1536afe61c15SRodney W. GrimesIf there are function keys such as f0, f1, ..., f9, the codes they send 1537afe61c15SRodney W. Grimescan be given as 1538afe61c15SRodney W. Grimes.Sy \&k0 , 1539afe61c15SRodney W. Grimes.Sy \&k1 , 15403136363fSRuslan Ermilov\&..., 1541afe61c15SRodney W. Grimes.Sy \&k9 . 1542afe61c15SRodney W. GrimesIf these keys have labels other than the default f0 through f9, the labels 1543afe61c15SRodney W. Grimescan be given as 1544afe61c15SRodney W. Grimes.Sy \&l0 , 1545afe61c15SRodney W. Grimes.Sy \&l1 , 15463136363fSRuslan Ermilov\&..., 1547afe61c15SRodney W. Grimes.Sy \&l9 . 1548afe61c15SRodney W. GrimesThe codes transmitted by certain other special keys can be given: 1549afe61c15SRodney W. Grimes.Sy \&kH 1550afe61c15SRodney W. Grimes(home down), 1551afe61c15SRodney W. Grimes.Sy \&kb 1552afe61c15SRodney W. Grimes(backspace), 1553afe61c15SRodney W. Grimes.Sy \&ka 1554afe61c15SRodney W. Grimes(clear all tabs), 1555afe61c15SRodney W. Grimes.Sy \&kt 1556afe61c15SRodney W. Grimes(clear the tab stop in this column), 1557afe61c15SRodney W. Grimes.Sy \&kC 1558afe61c15SRodney W. Grimes(clear screen or erase), 1559afe61c15SRodney W. Grimes.Sy \&kD 1560afe61c15SRodney W. Grimes(delete character), 1561afe61c15SRodney W. Grimes.Sy \&kL 1562afe61c15SRodney W. Grimes(delete line), 1563afe61c15SRodney W. Grimes.Sy \&kM 1564afe61c15SRodney W. Grimes(exit insert mode), 1565afe61c15SRodney W. Grimes.Sy \&kE 1566afe61c15SRodney W. Grimes(clear to end of line), 1567afe61c15SRodney W. Grimes.Sy \&kS 1568afe61c15SRodney W. Grimes(clear to end of screen), 1569afe61c15SRodney W. Grimes.Sy \&kI 1570afe61c15SRodney W. Grimes(insert character or enter insert mode), 1571afe61c15SRodney W. Grimes.Sy \&kA 1572afe61c15SRodney W. Grimes(insert line), 1573afe61c15SRodney W. Grimes.Sy \&kN 1574afe61c15SRodney W. Grimes(next page), 1575afe61c15SRodney W. Grimes.Sy \&kP 1576afe61c15SRodney W. Grimes(previous page), 1577afe61c15SRodney W. Grimes.Sy \&kF 1578afe61c15SRodney W. Grimes(scroll forward/down), 1579afe61c15SRodney W. Grimes.Sy \&kR 1580afe61c15SRodney W. Grimes(scroll backward/up), and 1581afe61c15SRodney W. Grimes.Sy \&kT 1582afe61c15SRodney W. Grimes(set a tab stop in this column). 1583afe61c15SRodney W. GrimesIn addition, if the keypad has a 3 by 3 array of keys 1584afe61c15SRodney W. Grimesincluding the four arrow keys, then the other five keys can be given as 1585afe61c15SRodney W. Grimes.Sy \&K1 , 1586afe61c15SRodney W. Grimes.Sy \&K2 , 1587afe61c15SRodney W. Grimes.Sy \&K3 , 1588afe61c15SRodney W. Grimes.Sy \&K4 , 1589afe61c15SRodney W. Grimesand 1590afe61c15SRodney W. Grimes.Sy \&K5 . 1591afe61c15SRodney W. GrimesThese keys are useful when the effects of a 3 by 3 directional pad are needed. 1592afe61c15SRodney W. GrimesThe obsolete 1593afe61c15SRodney W. Grimes.Sy \&ko 1594afe61c15SRodney W. Grimescapability formerly used to describe 1595afe61c15SRodney W. Grimes.Dq other 1596afe61c15SRodney W. Grimesfunction keys has been 1597afe61c15SRodney W. Grimescompletely supplanted by the above capabilities. 1598afe61c15SRodney W. Grimes.Pp 1599afe61c15SRodney W. GrimesThe 1600afe61c15SRodney W. Grimes.Sy \&ma 1601afe61c15SRodney W. Grimesentry is also used to indicate arrow keys on terminals that have 1602afe61c15SRodney W. Grimessingle-character arrow keys. 1603afe61c15SRodney W. GrimesIt is obsolete but still in use in 1604afe61c15SRodney W. Grimesversion 2 of 1605afe61c15SRodney W. Grimes.Sy \&vi 1606afe61c15SRodney W. Grimeswhich must be run on some minicomputers due to 1607afe61c15SRodney W. Grimesmemory limitations. 1608afe61c15SRodney W. GrimesThis field is redundant with 1609afe61c15SRodney W. Grimes.Sy \&kl , 1610afe61c15SRodney W. Grimes.Sy \&kr , 1611afe61c15SRodney W. Grimes.Sy \&ku , 1612afe61c15SRodney W. Grimes.Sy \&kd , 1613afe61c15SRodney W. Grimesand 1614afe61c15SRodney W. Grimes.Sy \&kh . 1615afe61c15SRodney W. GrimesIt consists of groups of two characters. 1616afe61c15SRodney W. GrimesIn each group, the first character is what an arrow key sends, and the 1617afe61c15SRodney W. Grimessecond character is the corresponding 1618afe61c15SRodney W. Grimes.Sy \&vi 1619afe61c15SRodney W. Grimescommand. 1620afe61c15SRodney W. GrimesThese commands are 1621afe61c15SRodney W. Grimes.Ar h 1622afe61c15SRodney W. Grimesfor 1623afe61c15SRodney W. Grimes.Sy \&kl , 1624afe61c15SRodney W. Grimes.Ar j 1625afe61c15SRodney W. Grimesfor 1626afe61c15SRodney W. Grimes.Sy \&kd , 1627afe61c15SRodney W. Grimes.Ar k 1628afe61c15SRodney W. Grimesfor 1629afe61c15SRodney W. Grimes.Sy \&ku , 1630afe61c15SRodney W. Grimes.Ar l 1631afe61c15SRodney W. Grimesfor 1632afe61c15SRodney W. Grimes.Sy \&kr , 1633afe61c15SRodney W. Grimesand 1634afe61c15SRodney W. Grimes.Ar H 1635afe61c15SRodney W. Grimesfor 1636afe61c15SRodney W. Grimes.Sy \&kh . 1637afe61c15SRodney W. GrimesFor example, the Mime would have 1638afe61c15SRodney W. Grimes.Dq Li ma=^Hh^Kj^Zk^Xl 1639afe61c15SRodney W. Grimesindicating arrow keys left (^H), down (^K), up (^Z), and right (^X). 1640afe61c15SRodney W. Grimes(There is no home key on the Mime.) 1641afe61c15SRodney W. Grimes.Ss Tabs and Initialization 1642afe61c15SRodney W. GrimesIf the terminal needs to be in a special mode when running 1643afe61c15SRodney W. Grimesa program that uses these capabilities, 1644afe61c15SRodney W. Grimesthe codes to enter and exit this mode can be given as 1645afe61c15SRodney W. Grimes.Sy \&ti 1646afe61c15SRodney W. Grimesand 1647afe61c15SRodney W. Grimes.Sy \&te . 1648afe61c15SRodney W. GrimesThis arises, for example, from terminals like the Concept with more than 1649afe61c15SRodney W. Grimesone page of memory. 1650afe61c15SRodney W. GrimesIf the terminal has only memory-relative cursor addressing and not 1651afe61c15SRodney W. Grimesscreen-relative cursor addressing, 1652afe61c15SRodney W. Grimesa screen-sized window must be fixed into 1653afe61c15SRodney W. Grimesthe display for cursor addressing to work properly. 1654afe61c15SRodney W. GrimesThis is also used for the Tektronix 4025, where 1655afe61c15SRodney W. Grimes.Sy \&ti 1656afe61c15SRodney W. Grimessets the command character to be the one used by 16574b66483fSRuslan Ermilov.Nm . 1658afe61c15SRodney W. Grimes.Pp 1659afe61c15SRodney W. GrimesOther capabilities 1660afe61c15SRodney W. Grimesinclude 1661afe61c15SRodney W. Grimes.Sy \&is , 1662afe61c15SRodney W. Grimesan initialization string for the terminal, 1663afe61c15SRodney W. Grimesand 1664afe61c15SRodney W. Grimes.Sy \&if , 1665afe61c15SRodney W. Grimesthe name of a file containing long initialization strings. 1666afe61c15SRodney W. GrimesThese strings are expected to set the terminal into modes 1667afe61c15SRodney W. Grimesconsistent with the rest of the 166836ab9525SJohn-Mark Gurney.Nm 1669afe61c15SRodney W. Grimesdescription. 1670afe61c15SRodney W. GrimesThey are normally sent to the terminal by the 1671c2d6966aSPhilippe Charnier.Xr tset 1 1672afe61c15SRodney W. Grimesprogram each time the user logs in. 1673afe61c15SRodney W. GrimesThey will be printed in the following order: 1674afe61c15SRodney W. Grimes.Sy \&is ; 1675afe61c15SRodney W. Grimessetting tabs using 1676afe61c15SRodney W. Grimes.Sy \&ct 1677afe61c15SRodney W. Grimesand 1678afe61c15SRodney W. Grimes.Sy \&st ; 1679afe61c15SRodney W. Grimesand finally 1680afe61c15SRodney W. Grimes.Sy \&if . 1681afe61c15SRodney W. Grimes.Pf ( Xr Terminfo 1682afe61c15SRodney W. Grimesuses 1683afe61c15SRodney W. Grimes.Sy \&i\&1-i2 1684afe61c15SRodney W. Grimesinstead of 1685afe61c15SRodney W. Grimes.Sy \&is 1686afe61c15SRodney W. Grimesand runs the program 1687afe61c15SRodney W. Grimes.Sy \&iP 1688afe61c15SRodney W. Grimesand prints 1689afe61c15SRodney W. Grimes.Sy "\&i\&3" 1690afe61c15SRodney W. Grimesafter the other initializations.) 1691afe61c15SRodney W. GrimesA pair of sequences that does a harder reset from a totally unknown state 1692afe61c15SRodney W. Grimescan be analogously given as 1693afe61c15SRodney W. Grimes.Sy \&rs 1694afe61c15SRodney W. Grimesand 1695afe61c15SRodney W. Grimes.Sy \&if . 1696afe61c15SRodney W. GrimesThese strings are output by the 1697c2d6966aSPhilippe Charnier.Xr reset 1 1698afe61c15SRodney W. Grimesprogram, which is used when the terminal gets into a wedged state. 1699afe61c15SRodney W. Grimes.Pf ( Xr Terminfo 1700afe61c15SRodney W. Grimesuses 1701afe61c15SRodney W. Grimes.Sy "\&r1-r3" 1702afe61c15SRodney W. Grimesinstead of 1703afe61c15SRodney W. Grimes.Sy \&rs . ) 1704afe61c15SRodney W. GrimesCommands are normally placed in 1705afe61c15SRodney W. Grimes.Sy \&rs 1706afe61c15SRodney W. Grimesand 1707afe61c15SRodney W. Grimes.Sy \&rf 1708afe61c15SRodney W. Grimesonly if they produce annoying effects on the screen and are not necessary 1709afe61c15SRodney W. Grimeswhen logging in. 1710afe61c15SRodney W. GrimesFor example, the command to set the VT100 into 80-column mode 1711afe61c15SRodney W. Grimeswould normally be part of 1712afe61c15SRodney W. Grimes.Sy \&is , 1713afe61c15SRodney W. Grimesbut it causes an annoying glitch of the screen and is not normally needed 1714afe61c15SRodney W. Grimessince the terminal is usually already in 80-column mode. 1715afe61c15SRodney W. Grimes.Pp 1716afe61c15SRodney W. GrimesIf the terminal has hardware tabs, 1717afe61c15SRodney W. Grimesthe command to advance to the next tab stop can be given as 1718afe61c15SRodney W. Grimes.Sy \&ta 1719afe61c15SRodney W. Grimes(usually 1720afe61c15SRodney W. Grimes.Sy \&^I ) . 1721afe61c15SRodney W. GrimesA 1722afe61c15SRodney W. Grimes.Dq backtab 1723afe61c15SRodney W. Grimescommand which moves leftward to the previous tab stop 1724afe61c15SRodney W. Grimescan be given as 1725afe61c15SRodney W. Grimes.Sy \&bt . 1726afe61c15SRodney W. GrimesBy convention, 1727afe61c15SRodney W. Grimesif the terminal driver modes indicate that tab stops are being expanded 1728afe61c15SRodney W. Grimesby the computer rather than being sent to the terminal, 1729afe61c15SRodney W. Grimesprograms should not use 1730afe61c15SRodney W. Grimes.Sy \&ta 1731afe61c15SRodney W. Grimesor 1732afe61c15SRodney W. Grimes.Sy \&bt 1733afe61c15SRodney W. Grimeseven if they are present, 1734afe61c15SRodney W. Grimessince the user may not have the tab stops properly set. 1735afe61c15SRodney W. GrimesIf the terminal has hardware tabs that are initially set every 1736afe61c15SRodney W. Grimes.Ar n 1737afe61c15SRodney W. Grimespositions when the terminal is powered up, then the numeric parameter 1738afe61c15SRodney W. Grimes.Sy \&it 1739afe61c15SRodney W. Grimesis given, showing the number of positions between tab stops. 1740afe61c15SRodney W. GrimesThis is normally used by the 1741c2d6966aSPhilippe Charnier.Xr tset 1 1742afe61c15SRodney W. Grimescommand to determine whether to set the driver mode for hardware tab 1743afe61c15SRodney W. Grimesexpansion, and whether to set the tab stops. 1744afe61c15SRodney W. GrimesIf the terminal has tab stops that can be saved in nonvolatile memory, the 174536ab9525SJohn-Mark Gurney.Nm 1746afe61c15SRodney W. Grimesdescription can assume that they are properly set. 1747afe61c15SRodney W. Grimes.Pp 1748afe61c15SRodney W. GrimesIf there are commands to set and clear tab stops, they can be given as 1749afe61c15SRodney W. Grimes.Sy \&ct 1750afe61c15SRodney W. Grimes(clear all tab stops) and 1751afe61c15SRodney W. Grimes.Sy \&st 1752afe61c15SRodney W. Grimes(set a tab stop in the current column of every row). 1753afe61c15SRodney W. GrimesIf a more complex sequence is needed to set the tabs than can be 1754afe61c15SRodney W. Grimesdescribed by this, the sequence can be placed in 1755afe61c15SRodney W. Grimes.Sy \&is 1756afe61c15SRodney W. Grimesor 1757afe61c15SRodney W. Grimes.Sy \&if . 1758afe61c15SRodney W. Grimes.Ss Delays 1759afe61c15SRodney W. GrimesCertain capabilities control padding in the terminal driver. 1760afe61c15SRodney W. GrimesThese are primarily needed by hardcopy terminals and are used by the 1761c2d6966aSPhilippe Charnier.Xr tset 1 1762afe61c15SRodney W. Grimesprogram to set terminal driver modes appropriately. 1763afe61c15SRodney W. GrimesDelays embedded in the capabilities 1764afe61c15SRodney W. Grimes.Sy \&cr , 1765afe61c15SRodney W. Grimes.Sy \&sf , 1766afe61c15SRodney W. Grimes.Sy \&le , 1767afe61c15SRodney W. Grimes.Sy \&ff , 1768afe61c15SRodney W. Grimesand 1769afe61c15SRodney W. Grimes.Sy \&ta 1770afe61c15SRodney W. Grimeswill cause the appropriate delay bits to be set in the terminal driver. 1771afe61c15SRodney W. GrimesIf 1772afe61c15SRodney W. Grimes.Sy \&pb 1773afe61c15SRodney W. Grimes(padding baud rate) is given, these values can be ignored at baud rates 1774afe61c15SRodney W. Grimesbelow the value of 1775afe61c15SRodney W. Grimes.Sy \&pb . 1776afe61c15SRodney W. GrimesFor 1777afe61c15SRodney W. Grimes.Bx 4.2 1778c2d6966aSPhilippe Charnier.Xr tset 1 , 1779afe61c15SRodney W. Grimesthe delays are given as numeric capabilities 1780afe61c15SRodney W. Grimes.Sy \&dC , 1781afe61c15SRodney W. Grimes.Sy \&dN , 1782afe61c15SRodney W. Grimes.Sy \&dB , 1783afe61c15SRodney W. Grimes.Sy \&dF , 1784afe61c15SRodney W. Grimesand 1785afe61c15SRodney W. Grimes.Sy \&dT 1786afe61c15SRodney W. Grimesinstead. 1787afe61c15SRodney W. Grimes.Ss Miscellaneous 1788afe61c15SRodney W. GrimesIf the terminal requires other than a 1789afe61c15SRodney W. Grimes.Dv NUL 1790afe61c15SRodney W. Grimes(zero) character as a pad, 1791afe61c15SRodney W. Grimesthis can be given as 1792afe61c15SRodney W. Grimes.Sy \&pc . 1793afe61c15SRodney W. GrimesOnly the first character of the 1794afe61c15SRodney W. Grimes.Sy \&pc 1795afe61c15SRodney W. Grimesstring is used. 1796afe61c15SRodney W. Grimes.Pp 1797afe61c15SRodney W. GrimesIf the terminal has commands to save and restore the position of the 1798afe61c15SRodney W. Grimescursor, give them as 1799afe61c15SRodney W. Grimes.Sy \&sc 1800afe61c15SRodney W. Grimesand 1801afe61c15SRodney W. Grimes.Sy \&rc . 1802afe61c15SRodney W. Grimes.Pp 1803afe61c15SRodney W. GrimesIf the terminal has an extra 1804afe61c15SRodney W. Grimes.Dq status line 1805afe61c15SRodney W. Grimesthat is not normally used by 1806afe61c15SRodney W. Grimessoftware, this fact can be indicated. 1807afe61c15SRodney W. GrimesIf the status line is viewed as an extra line below the bottom line, 1808afe61c15SRodney W. Grimesthen the capability 1809afe61c15SRodney W. Grimes.Sy \&hs 1810afe61c15SRodney W. Grimesshould be given. 1811afe61c15SRodney W. GrimesSpecial strings to go to a position in the status line and to return 1812afe61c15SRodney W. Grimesfrom the status line can be given as 1813afe61c15SRodney W. Grimes.Sy \&ts 1814afe61c15SRodney W. Grimesand 1815afe61c15SRodney W. Grimes.Sy \&fs . 18167b1d17a1SGlen Barber.Pf ( Sy \&fs 1817afe61c15SRodney W. Grimesmust leave the cursor position in the same place that it was before 1818afe61c15SRodney W. Grimes.Sy \&ts . 1819afe61c15SRodney W. GrimesIf necessary, the 1820afe61c15SRodney W. Grimes.Sy \&sc 1821afe61c15SRodney W. Grimesand 1822afe61c15SRodney W. Grimes.Sy \&rc 1823afe61c15SRodney W. Grimesstrings can be included in 1824afe61c15SRodney W. Grimes.Sy \&ts 1825afe61c15SRodney W. Grimesand 1826afe61c15SRodney W. Grimes.Sy \&fs 1827afe61c15SRodney W. Grimesto get this effect.) 1828afe61c15SRodney W. GrimesThe capability 1829afe61c15SRodney W. Grimes.Sy \&ts 1830afe61c15SRodney W. Grimestakes one parameter, which is the column number of the status line 1831afe61c15SRodney W. Grimesto which the cursor is to be moved. 1832afe61c15SRodney W. GrimesIf escape sequences and other special commands such as tab work while in 1833afe61c15SRodney W. Grimesthe status line, the flag 1834afe61c15SRodney W. Grimes.Sy \&es 1835afe61c15SRodney W. Grimescan be given. 1836afe61c15SRodney W. GrimesA string that turns off the status line (or otherwise erases its contents) 1837afe61c15SRodney W. Grimesshould be given as 1838afe61c15SRodney W. Grimes.Sy \&ds . 1839afe61c15SRodney W. GrimesThe status line is normally assumed to be the same width as the 1840afe61c15SRodney W. Grimesrest of the screen, 1841afe61c15SRodney W. Grimes.Em i.e . , 1842afe61c15SRodney W. Grimes.Sy \&co . 1843afe61c15SRodney W. GrimesIf the status line is a different width (possibly because the terminal 1844afe61c15SRodney W. Grimesdoes not allow an entire line to be loaded), then its width in columns 1845afe61c15SRodney W. Grimescan be indicated with the numeric parameter 1846afe61c15SRodney W. Grimes.Sy \&ws . 1847afe61c15SRodney W. Grimes.Pp 1848afe61c15SRodney W. GrimesIf the terminal can move up or down half a line, this can be 1849afe61c15SRodney W. Grimesindicated with 1850afe61c15SRodney W. Grimes.Sy \&hu 1851afe61c15SRodney W. Grimes(half-line up) and 1852afe61c15SRodney W. Grimes.Sy \&hd 1853afe61c15SRodney W. Grimes(half-line down). 1854afe61c15SRodney W. GrimesThis is primarily useful for superscripts and subscripts on hardcopy 1855afe61c15SRodney W. Grimesterminals. 1856afe61c15SRodney W. GrimesIf a hardcopy terminal can eject to the next page (form feed), 1857afe61c15SRodney W. Grimesgive this as 1858afe61c15SRodney W. Grimes.Sy \&ff 1859afe61c15SRodney W. Grimes(usually 1860afe61c15SRodney W. Grimes.Sy \&^L ) . 1861afe61c15SRodney W. Grimes.Pp 1862afe61c15SRodney W. GrimesIf there is a command to repeat a given character a given number of times 1863afe61c15SRodney W. Grimes(to save time transmitting a large number of identical characters), 1864afe61c15SRodney W. Grimesthis can be indicated with the parameterized string 1865afe61c15SRodney W. Grimes.Sy \&rp . 1866afe61c15SRodney W. GrimesThe first parameter is the character to be repeated and the second is 1867afe61c15SRodney W. Grimesthe number of times to repeat it. 1868afe61c15SRodney W. Grimes(This is a 1869d0353b83SRuslan Ermilov.Xr terminfo 5 1870afe61c15SRodney W. Grimesfeature that is unlikely to be supported by a program that uses 18714b66483fSRuslan Ermilov.Nm . ) 1872afe61c15SRodney W. Grimes.Pp 1873afe61c15SRodney W. GrimesIf the terminal has a settable command character, such as the 1874afe61c15SRodney W. GrimesTektronix 4025, this can be indicated with 1875afe61c15SRodney W. Grimes.Sy \&CC . 1876afe61c15SRodney W. GrimesA prototype command character is chosen which is used in all capabilities. 1877afe61c15SRodney W. GrimesThis character is given in the 1878afe61c15SRodney W. Grimes.Sy \&CC 1879afe61c15SRodney W. Grimescapability to identify it. 1880afe61c15SRodney W. GrimesThe following convention is supported on some 1881afe61c15SRodney W. Grimes.Ux 1882afe61c15SRodney W. Grimessystems: 1883afe61c15SRodney W. GrimesThe environment is to be searched for a 1884afe61c15SRodney W. Grimes.Ev \&CC 1885afe61c15SRodney W. Grimesvariable, 1886afe61c15SRodney W. Grimesand if found, 1887afe61c15SRodney W. Grimesall occurrences of the prototype character are replaced by the character 1888afe61c15SRodney W. Grimesin the environment variable. 1889afe61c15SRodney W. GrimesThis use of the 1890afe61c15SRodney W. Grimes.Ev \&CC 1891afe61c15SRodney W. Grimesenvironment variable 1892afe61c15SRodney W. Grimesis a very bad idea, as it conflicts with 1893afe61c15SRodney W. Grimes.Xr make 1 . 1894afe61c15SRodney W. Grimes.Pp 1895afe61c15SRodney W. GrimesTerminal descriptions that do not represent a specific kind of known 1896afe61c15SRodney W. Grimesterminal, such as 1897afe61c15SRodney W. Grimes.Em switch , 1898afe61c15SRodney W. Grimes.Em dialup , 1899afe61c15SRodney W. Grimes.Em patch , 1900afe61c15SRodney W. Grimesand 1901c2d6966aSPhilippe Charnier.Em network , 1902afe61c15SRodney W. Grimesshould include the 1903afe61c15SRodney W. Grimes.Sy \&gn 1904afe61c15SRodney W. Grimes(generic) capability so that programs can complain that they do not know 1905afe61c15SRodney W. Grimeshow to talk to the terminal. 1906afe61c15SRodney W. Grimes(This capability does not apply to 1907afe61c15SRodney W. Grimes.Em virtual 1908afe61c15SRodney W. Grimesterminal descriptions for which the escape sequences are known.) 1909afe61c15SRodney W. Grimes.Pp 1910afe61c15SRodney W. GrimesIf the terminal uses xoff/xon 1911afe61c15SRodney W. Grimes.Pq Tn DC3 Ns / Ns Tn DC1 1912afe61c15SRodney W. Grimeshandshaking for flow control, give 1913afe61c15SRodney W. Grimes.Sy \&xo . 1914afe61c15SRodney W. GrimesPadding information should still be included so that routines can make 1915afe61c15SRodney W. Grimesbetter decisions about costs, but actual pad characters will not be 1916afe61c15SRodney W. Grimestransmitted. 1917afe61c15SRodney W. Grimes.Pp 1918afe61c15SRodney W. GrimesIf the terminal has a 1919afe61c15SRodney W. Grimes.Dq meta key 1920afe61c15SRodney W. Grimeswhich acts as a shift key, setting the 1921afe61c15SRodney W. Grimes8th bit of any character transmitted, then this fact can be indicated with 1922afe61c15SRodney W. Grimes.Sy \&km . 1923afe61c15SRodney W. GrimesOtherwise, software will assume that the 8th bit is parity and it will 1924afe61c15SRodney W. Grimesusually be cleared. 1925afe61c15SRodney W. GrimesIf strings exist to turn this 1926afe61c15SRodney W. Grimes.Dq meta mode 1927afe61c15SRodney W. Grimeson and off, they can be given as 1928afe61c15SRodney W. Grimes.Sy \&mm 1929afe61c15SRodney W. Grimesand 1930afe61c15SRodney W. Grimes.Sy \&mo . 1931afe61c15SRodney W. Grimes.Pp 1932afe61c15SRodney W. GrimesIf the terminal has more lines of memory than will fit on the screen at once, 1933afe61c15SRodney W. Grimesthe number of lines of memory can be indicated with 1934afe61c15SRodney W. Grimes.Sy \&lm . 1935afe61c15SRodney W. GrimesAn explicit value of 0 indicates that the number of lines is not fixed, 1936afe61c15SRodney W. Grimesbut that there is still more memory than fits on the screen. 1937afe61c15SRodney W. Grimes.Pp 1938afe61c15SRodney W. GrimesIf the terminal is one of those supported by the 1939afe61c15SRodney W. Grimes.Ux 1940afe61c15SRodney W. Grimessystem virtual 1941afe61c15SRodney W. Grimesterminal protocol, the terminal number can be given as 1942afe61c15SRodney W. Grimes.Sy \&vt . 1943afe61c15SRodney W. Grimes.Pp 1944afe61c15SRodney W. GrimesMedia copy strings which control an auxiliary printer 1945afe61c15SRodney W. Grimesconnected to the terminal can be given as 1946afe61c15SRodney W. Grimes.Sy \&ps : 1947afe61c15SRodney W. Grimesprint the contents of the screen; 1948afe61c15SRodney W. Grimes.Sy \&pf : 1949afe61c15SRodney W. Grimesturn off the printer; and 1950afe61c15SRodney W. Grimes.Sy \&po : 1951afe61c15SRodney W. Grimesturn on the printer. 1952afe61c15SRodney W. GrimesWhen the printer is on, all text sent to the terminal will be sent to the 1953afe61c15SRodney W. Grimesprinter. 1954afe61c15SRodney W. GrimesIt is undefined whether the text is also displayed on the terminal screen 1955afe61c15SRodney W. Grimeswhen the printer is on. 1956afe61c15SRodney W. GrimesA variation 1957afe61c15SRodney W. Grimes.Sy \&pO 1958afe61c15SRodney W. Grimestakes one parameter and leaves the printer on for as many characters as the 1959afe61c15SRodney W. Grimesvalue of the parameter, then turns the printer off. 1960afe61c15SRodney W. GrimesThe parameter should not exceed 255. 1961afe61c15SRodney W. GrimesAll text, including 1962afe61c15SRodney W. Grimes.Sy \&pf , 1963afe61c15SRodney W. Grimesis transparently passed to the printer while 1964afe61c15SRodney W. Grimes.Sy \&pO 1965afe61c15SRodney W. Grimesis in effect. 1966afe61c15SRodney W. Grimes.Pp 1967afe61c15SRodney W. GrimesStrings to program function keys can be given as 1968afe61c15SRodney W. Grimes.Sy \&pk , 1969afe61c15SRodney W. Grimes.Sy \&pl , 1970afe61c15SRodney W. Grimesand 1971afe61c15SRodney W. Grimes.Sy \&px . 1972afe61c15SRodney W. GrimesEach of these strings takes two parameters: the function key number 1973afe61c15SRodney W. Grimesto program (from 0 to 9) and the string to program it with. 1974afe61c15SRodney W. GrimesFunction key numbers out of this range may program undefined keys 1975afe61c15SRodney W. Grimesin a terminal-dependent manner. 1976afe61c15SRodney W. GrimesThe differences among the capabilities are that 1977afe61c15SRodney W. Grimes.Sy \&pk 1978afe61c15SRodney W. Grimescauses pressing the given key to be the same as the user typing the given 1979afe61c15SRodney W. Grimesstring; 1980afe61c15SRodney W. Grimes.Sy \&pl 1981afe61c15SRodney W. Grimescauses the string to be executed by the terminal in local mode; 1982afe61c15SRodney W. Grimesand 1983afe61c15SRodney W. Grimes.Sy \&px 1984afe61c15SRodney W. Grimescauses the string to be transmitted to the computer. 1985afe61c15SRodney W. GrimesUnfortunately, due to lack of a definition for string parameters in 198636ab9525SJohn-Mark Gurney.Nm , 1987afe61c15SRodney W. Grimesonly 1988d0353b83SRuslan Ermilov.Xr terminfo 5 1989afe61c15SRodney W. Grimessupports these capabilities. 19909190ba05SDoug Barton.Pp 19919190ba05SDoug BartonFor the 1992*825225e5SJens Schweikhardt.Xr xterm 1 Pq Pa ports/x11/xterm 19939190ba05SDoug Bartonterminal emulator the traditional behavior in 199440370e4bSDoug Barton.Fx 199540370e4bSDoug Bartonwhen exiting a pager such as 19969190ba05SDoug Barton.Xr less 1 19979190ba05SDoug Bartonor 19989190ba05SDoug Barton.Xr more 1 , 19999190ba05SDoug Bartonor an editor such as 20009190ba05SDoug Barton.Xr vi 1 200140370e4bSDoug Bartonis 200240370e4bSDoug Barton.Em NOT 200340370e4bSDoug Bartonto clear the screen after the program exits. 20049190ba05SDoug BartonIf you prefer to clear the screen there are a number of 20059190ba05SDoug Barton.Dq xterm-clear 20069190ba05SDoug Bartonentries that add this capability in the 20079190ba05SDoug Barton.Nm 20089190ba05SDoug Bartonfile that you can use directly, or as examples. 2009afe61c15SRodney W. Grimes.Ss Glitches and Braindamage 2010afe61c15SRodney W. GrimesHazeltine terminals, which do not allow `~' characters to be displayed, 2011afe61c15SRodney W. Grimesshould indicate 2012afe61c15SRodney W. Grimes.Sy \&hz . 2013afe61c15SRodney W. Grimes.Pp 2014afe61c15SRodney W. GrimesThe 2015afe61c15SRodney W. Grimes.Sy \&nc 2016afe61c15SRodney W. Grimescapability, now obsolete, formerly indicated Datamedia terminals, 2017afe61c15SRodney W. Grimeswhich echo 2018afe61c15SRodney W. Grimes.Sy \&\er \en 2019afe61c15SRodney W. Grimesfor 2020afe61c15SRodney W. Grimescarriage return then ignore a following linefeed. 2021afe61c15SRodney W. Grimes.Pp 2022afe61c15SRodney W. GrimesTerminals that ignore a linefeed immediately after an 2023afe61c15SRodney W. Grimes.Sy \&am 2024afe61c15SRodney W. Grimeswrap, such as the Concept, should indicate 2025afe61c15SRodney W. Grimes.Sy \&xn . 2026afe61c15SRodney W. Grimes.Pp 2027afe61c15SRodney W. GrimesIf 2028afe61c15SRodney W. Grimes.Sy \&ce 2029afe61c15SRodney W. Grimesis required to get rid of standout 2030afe61c15SRodney W. Grimes(instead of merely writing normal text on top of it), 2031afe61c15SRodney W. Grimes.Sy \&xs 2032afe61c15SRodney W. Grimesshould be given. 2033afe61c15SRodney W. Grimes.Pp 2034afe61c15SRodney W. GrimesTeleray terminals, where tabs turn all characters moved over to blanks, 2035afe61c15SRodney W. Grimesshould indicate 2036afe61c15SRodney W. Grimes.Sy \&xt 2037afe61c15SRodney W. Grimes(destructive tabs). 2038afe61c15SRodney W. GrimesThis glitch is also taken to mean that it is not possible 20393136363fSRuslan Ermilovto position the cursor on top of a 20403136363fSRuslan Ermilov.Dq magic cookie , 20413136363fSRuslan Ermilovand that 2042afe61c15SRodney W. Grimesto erase standout mode it is necessary to use delete and insert line. 2043afe61c15SRodney W. Grimes.Pp 2044afe61c15SRodney W. GrimesThe Beehive Superbee, which is unable to correctly transmit the 2045afe61c15SRodney W. Grimes.Dv ESC 2046afe61c15SRodney W. Grimesor 2047afe61c15SRodney W. Grimes.Sy \&^C 2048afe61c15SRodney W. Grimescharacters, has 2049afe61c15SRodney W. Grimes.Sy \&xb , 2050afe61c15SRodney W. Grimesindicating that the 2051afe61c15SRodney W. Grimes.Dq \&f\&1 2052afe61c15SRodney W. Grimeskey is used for 2053afe61c15SRodney W. Grimes.Dv ESC 2054afe61c15SRodney W. Grimesand 2055afe61c15SRodney W. Grimes.Dq \&f\&2 2056afe61c15SRodney W. Grimesfor ^C. 2057afe61c15SRodney W. Grimes(Only certain Superbees have this problem, depending on the 2058afe61c15SRodney W. Grimes.Tn ROM . ) 2059afe61c15SRodney W. Grimes.Pp 2060afe61c15SRodney W. GrimesOther specific terminal problems may be corrected by adding more 2061afe61c15SRodney W. Grimescapabilities of the form 20627b1d17a1SGlen Barber.Sy x Ns Em x . 2063afe61c15SRodney W. Grimes.Ss Similar Terminals 2064afe61c15SRodney W. GrimesIf there are two very similar terminals, 2065afe61c15SRodney W. Grimesone can be defined as being just like the other with certain exceptions. 2066afe61c15SRodney W. GrimesThe string capability 2067afe61c15SRodney W. Grimes.Sy \&tc 2068afe61c15SRodney W. Grimescan be given 2069afe61c15SRodney W. Grimeswith the name of the similar terminal. 2070afe61c15SRodney W. GrimesThis capability must be 2071afe61c15SRodney W. Grimes.Em last , 2072afe61c15SRodney W. Grimesand the combined length of the entries 2073afe61c15SRodney W. Grimesmust not exceed 1024. 2074afe61c15SRodney W. GrimesThe capabilities given before 2075afe61c15SRodney W. Grimes.Sy \&tc 2076afe61c15SRodney W. Grimesoverride those in the terminal type invoked by 2077afe61c15SRodney W. Grimes.Sy \&tc . 2078afe61c15SRodney W. GrimesA capability can be canceled by placing 2079afe61c15SRodney W. Grimes.Sy \&xx@ 2080afe61c15SRodney W. Grimesto the left of the 2081afe61c15SRodney W. Grimes.Sy \&tc 2082afe61c15SRodney W. Grimesinvocation, where 2083afe61c15SRodney W. Grimes.Sy \&xx 2084afe61c15SRodney W. Grimesis the capability. 2085afe61c15SRodney W. GrimesFor example, the entry 2086afe61c15SRodney W. Grimes.Bd -literal -offset indent 2087afe61c15SRodney W. Grimeshn\||\|2621\-nl:ks@:ke@:tc=2621: 2088afe61c15SRodney W. Grimes.Ed 2089afe61c15SRodney W. Grimes.Pp 2090afe61c15SRodney W. Grimesdefines a 2091afe61c15SRodney W. Grimes.Dq 2621\-nl 2092afe61c15SRodney W. Grimesthat does not have the 2093afe61c15SRodney W. Grimes.Sy \&ks 2094afe61c15SRodney W. Grimesor 2095afe61c15SRodney W. Grimes.Sy \&ke 2096afe61c15SRodney W. Grimescapabilities, 2097afe61c15SRodney W. Grimeshence does not turn on the function key labels when in visual mode. 2098afe61c15SRodney W. GrimesThis is useful for different modes for a terminal, or for different 2099afe61c15SRodney W. Grimesuser preferences. 2100afe61c15SRodney W. Grimes.Sh FILES 2101afe61c15SRodney W. Grimes.Bl -tag -width /usr/share/misc/termcap.db -compact 2102afe61c15SRodney W. Grimes.It Pa /usr/share/misc/termcap 2103afe61c15SRodney W. GrimesFile containing terminal descriptions. 2104afe61c15SRodney W. Grimes.It Pa /usr/share/misc/termcap.db 2105afe61c15SRodney W. GrimesHash database file containing terminal descriptions (see 2106afe61c15SRodney W. Grimes.Xr cap_mkdb 1 ) . 2107afe61c15SRodney W. Grimes.El 2108afe61c15SRodney W. Grimes.Sh SEE ALSO 2109afe61c15SRodney W. Grimes.Xr cap_mkdb 1 , 2110af202156SWolfram Schneider.Xr ex 1 , 2111afe61c15SRodney W. Grimes.Xr more 1 , 2112afe61c15SRodney W. Grimes.Xr tset 1 , 2113af202156SWolfram Schneider.Xr ul 1 , 2114afe61c15SRodney W. Grimes.Xr vi 1 , 2115*825225e5SJens Schweikhardt.Xr xterm 1 Pq Pa ports/x11/xterm , 2116436aece8SNik Clayton.Xr ncurses 3 , 2117afe61c15SRodney W. Grimes.Xr printf 3 , 2118afe61c15SRodney W. Grimes.Xr termcap 3 , 211978b0b234SMike Pritchard.Xr term 5 2120afe61c15SRodney W. Grimes.Sh CAVEATS AND BUGS 2121afe61c15SRodney W. GrimesThe 2122afe61c15SRodney W. Grimes.Em Note : 212336ab9525SJohn-Mark Gurney.Nm 2124afe61c15SRodney W. Grimesfunctions 2125afe61c15SRodney W. Grimeswere replaced by 2126d0353b83SRuslan Ermilov.Xr terminfo 5 2127afe61c15SRodney W. Grimesin 2128afe61c15SRodney W. Grimes.At V 2129afe61c15SRodney W. GrimesRelease 2.0. 2130afe61c15SRodney W. GrimesThe transition will be relatively painless if capabilities flagged as 2131afe61c15SRodney W. Grimes.Dq obsolete 2132afe61c15SRodney W. Grimesare avoided. 2133afe61c15SRodney W. Grimes.Pp 2134afe61c15SRodney W. GrimesLines and columns are now stored by the kernel as well as in the termcap 2135afe61c15SRodney W. Grimesentry. 2136afe61c15SRodney W. GrimesMost programs now use the kernel information primarily; the information 2137afe61c15SRodney W. Grimesin this file is used only if the kernel does not have any information. 2138afe61c15SRodney W. Grimes.Pp 213936ab9525SJohn-Mark GurneyThe 214036ab9525SJohn-Mark Gurney.Xr \&vi 1 214136ab9525SJohn-Mark Gurneyprogram allows only 256 characters for string capabilities, and the routines 2142afe61c15SRodney W. Grimesin 2143afe61c15SRodney W. Grimes.Xr termlib 3 2144afe61c15SRodney W. Grimesdo not check for overflow of this buffer. 2145afe61c15SRodney W. GrimesThe total length of a single entry (excluding only escaped newlines) 2146afe61c15SRodney W. Grimesmay not exceed 1024. 2147afe61c15SRodney W. Grimes.Pp 2148afe61c15SRodney W. GrimesNot all programs support all entries. 2149afe61c15SRodney W. Grimes.Sh HISTORY 2150afe61c15SRodney W. GrimesThe 2151afe61c15SRodney W. Grimes.Nm 2152afe61c15SRodney W. Grimesfile format appeared in 2153afe61c15SRodney W. Grimes.Bx 3 . 2154