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