lda@clyde.UUCP (Larry D. Auton) (01/20/84)
I'm glad to see this being asked. It gives me a chance to reply with a broader question. Does anyone have an "official" list of what each of the fields mean. Side effects are important, too. I have several versions of the manual page for termcap(5), none of which is complete. Please, if you have "the whole thing", post it, mail it, or put it on television. Something as crucial as this shouldn't be kept under wraps. -- Larry D. Auton AT&T Technologies WH 2C-122 (201)386-4272 ihnp4!clyde!lda
bmt@we53.UUCP (01/20/84)
What about attached printer on/off? We would like to use termcap routines for a lot of our projects, but this has made it difficult. Perhaps this has been discussed before, but how would we be able to have attributes added to the standard set currently offered? we53!bmt("Brian Thomas @ AT&T %s\n",whatever_my_company_is_called_this_week); St. Louis, MO
guy@rlgvax.UUCP (Guy Harris) (01/22/84)
The 4.2BSD "sysline" command uses some new termcap entries, which aren't documented in "term(5)" in the 4.2BSD manual: ts move cursor to status line; it is assumed that this takes one parameter, which is the column of the status line to go to fs move cursor from status line; it is assumed that this restores the cursor position to what it was before the "ts" ds display status line (this is assumed to be a toggle, alternately turning it on and off) es flag - if yes, can use escape sequences like those for turning on reverse video and for cursor addressing on status line There are lots of other capabilities which aren't documented; the problem is that anybody can write a program which assumes a new capability, stick that capability into /etc/termcap, and not tell anybody. Here is the list, as of the 4.2BSD "termcap(5)" manual page: Name Type Pad? Description ae str (P) End alternate character set al str (P*) Add new blank line am bool Terminal has automatic margins as str (P) Start alternate character set bc str Backspace if not "^H" bs bool Terminal can backspace with "^H" bt str (P) Back tab bw bool Backspace wraps from column 0 to last column CC str Command character in prototype if terminal settable cd str (P*) Clear to end of display ce str (P) Clear to end of line ch str (P) Like cm but horizontal motion only, line stays same cl str (P*) Clear screen cm str (P) Cursor motion co num Number of columns in a line cr str (P*) Carriage return, (default "^M") cs str (P) Change scrolling region (vt100), like cm cv str (P) Like ch but vertical only. da bool Display may be retained above dB num Number of millisec of bs delay needed db bool Display may be retained below dC num Number of millisec of cr delay needed dc str (P*) Delete character dF num Number of millisec of ff delay needed dl str (P*) Delete line dm str Delete mode (enter) dN num Number of millisec of nl delay needed do str Down one line dT num Number of millisec of tab delay needed ed str End delete mode ei str End insert mode; give ":ei=:" if "ic" eo str Can erase overstrikes with a blank ff str (P*) Hardcopy terminal page eject (default "^L") hc bool Hardcopy terminal hd str Half-line down (forward 1/2 linefeed) ho str Home cursor (if no "cm") hu str Half-line up (reverse 1/2 linefeed) hz str Hazeltine; can't print ~'s ic str (P) Insert character if str Name of file containing "is" im bool Insert mode (enter); give ":im=:" if "ic" in bool Insert mode distinguishes nulls on display ip str (P*) Insert pad after character inserted is str Terminal initialization string k0-k9 str Sent by "other" function keys 0-9 kb str Sent by backspace key kd str Sent by terminal down arrow key ke str Out of "keypad transmit" mode kh str Sent by home key kl str Sent by terminal left arrow key kn num Number of "other" keys ko str Termcap entries for other non-function keys kr str Sent by terminal right arrow key ks str Put terminal in "keypad transmit" mode ku str Sent by terminal up arrow key l0-l9 str Labels on "other" function keys li num Number of lines on screen or page ll str Last line, first column (if no "cm") ma str Arrow key map, used by vi version 2 only mi bool Safe to move while in insert mode ml str Memory lock on above cursor. ms bool Safe to move while in standout and underline mode mu str Memory unlock (turn off memory lock). nc bool No correctly working carriage return (DM2500,H2000) nd str Non-destructive space (cursor right) nl str (P*) Newline character (default "\en") ns bool Terminal is a \s-2CRT\s+2 but doesn't scroll. os bool Terminal overstrikes pc str Pad character (rather than null) pt bool Has hardware tabs (may need to be set with "is") se str End stand out mode sf str (P) Scroll forwards sg num Number of blank chars left by so or se so str Begin stand out mode sr str (P) Scroll reverse (backwards) ta str (P) Tab (other than "^I" or with padding) tc str Entry of similar terminal - must be last te str String to end programs that use "cm" ti str String to begin programs that use "cm" uc str Underscore one char and move past it ue str End underscore mode ug num Number of blank chars left by us or ue ul bool Terminal underlines even though it doesn't overstrike up str Upline (cursor up) us str Start underscore mode vb str Visible bell (may not move cursor) ve str Sequence to end open/visual mode vs str Sequence to start open/visual mode xb bool Beehive (f1=escape, f2=ctrl C) xn bool A newline is ignored after a wrap (Concept) xr bool Return acts like ce \er \en (Delta Data) xs bool Standout not erased by writing over it (HP 264?) xt bool Tabs are destructive, magic so char (Teleray 1061) A question: do the capabilities "l0" through "l9", when the description refers to "labels", merely describe what's written on they keycaps, or should a program which can load up "softkeys", when the program is running on a terminal with "softkeys" whose labels can be set from the computer, load those labels into the "softkeys"? And, if so, what good are they, considering different programs may want to put up different labels? Guy Harris {seismo,ihnp4,allegra}!rlgvax!guy
gam@proper.UUCP (Gordon Moffett) (01/25/84)
There are some useful terminal capabilities I would like to include in /etc/termcap, and would like to know if there exist any conventions for adding new fields/names. Specifically: Turn on/off status/25th line Enter/exit (load) status line. I could make up some names, of course, but wanted to check `out there' if someone else had created names for these which might become conven- tional.
faunt@hplabsc.UUCP (Doug Faunt) (01/27/84)
Er, uh, I don't know who defined it, but we are using MT here for terminals with META (EDIT) keys on them for use with various flavors of EMACS. We have HP2641's,45's,48's,22's,23's and 2382's, and Heath (Zenith) 19's modified for this, as well as AAA's that can come with them. ....!hplabs!faunt faunt.hplabs@rand-relay
mark@cbosgd.UUCP (Mark Horton) (01/31/84)
Caution - the master capability list uses "km" for the existence of a meta key, both in terminfo and termcap. (Also, smm (tc=mm) and rmm (tc=mo) turn the meta key on and off, if the terminal can do this - the Ambassador can.) Variable name TI TC has_meta_key, "km" "km" Has a meta key (shift, sets parity bit) meta_off, "rmm" "mo" Turn off "meta mode" meta_on, "smm" "mm" Turn on "meta mode" (8th bit) While I don't really care what goes into termcap, there is upward compatibility code in curses to handle termcap, and such code will understand km but not MT. I caution against writing code that uses MT - it will eventually burn you. The "km" capability is in System V (Release 2 and later) and also will probably be in 4.3BSD. (No, I can't easily change it to use MT instead, it's too late. System V Release 2 is out the door.) Mark
thomas@utah-gr.UUCP (Spencer W. Thomas) (02/03/84)
Mea culpa! I am the one, as far as I know, who invented the MT termcap entry. I promptly told Mark about it, and he said (quote filtered through the haze of memory) "Oh, I've already called that 'km'". But, alas, MT had slipped out the back door with some other software, so ... =Spencer
faunt@hplabsc.UUCP (Doug Faunt) (02/05/84)
MT seems to have come with Goslings EMACS.