diff options
author | Todd C. Miller <millert@cvs.openbsd.org> | 1999-01-18 19:10:28 +0000 |
---|---|---|
committer | Todd C. Miller <millert@cvs.openbsd.org> | 1999-01-18 19:10:28 +0000 |
commit | 2ab6a45cb794e8f5ff7b3d8c9fe25b0ef0f5b669 (patch) | |
tree | 68bbd31bb6b70c640ee51637367f12996de516f7 /lib/libcurses/term.7 | |
parent | 369038865daffb176f8616ac082675a6e8116a0f (diff) |
ncurses-4.2-990116
Diffstat (limited to 'lib/libcurses/term.7')
-rw-r--r-- | lib/libcurses/term.7 | 205 |
1 files changed, 205 insertions, 0 deletions
diff --git a/lib/libcurses/term.7 b/lib/libcurses/term.7 new file mode 100644 index 00000000000..fabb93ae2bc --- /dev/null +++ b/lib/libcurses/term.7 @@ -0,0 +1,205 @@ +.\"*************************************************************************** +.\" Copyright (c) 1998 Free Software Foundation, Inc. * +.\" * +.\" Permission is hereby granted, free of charge, to any person obtaining a * +.\" copy of this software and associated documentation files (the * +.\" "Software"), to deal in the Software without restriction, including * +.\" without limitation the rights to use, copy, modify, merge, publish, * +.\" distribute, distribute with modifications, sublicense, and/or sell * +.\" copies of the Software, and to permit persons to whom the Software is * +.\" furnished to do so, subject to the following conditions: * +.\" * +.\" The above copyright notice and this permission notice shall be included * +.\" in all copies or substantial portions of the Software. * +.\" * +.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * +.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * +.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * +.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * +.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * +.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * +.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. * +.\" * +.\" Except as contained in this notice, the name(s) of the above copyright * +.\" holders shall not be used in advertising or otherwise to promote the * +.\" sale, use or other dealings in this Software without prior written * +.\" authorization. * +.\"*************************************************************************** +.\" +.\" $From: term.7,v 1.10 1998/12/26 01:58:56 tom Exp $ +.\" $OpenBSD: term.7,v 1.1 1999/01/18 19:09:15 millert Exp $ +.TH TERM 7 +.ds n 5 +.ds d /usr/share/terminfo +.SH NAME +term \- conventions for naming terminal types +.SH DESCRIPTION +.PP +The environment variable \fBTERM\fR should normally contain the type name of +the terminal, console or display-device type you are using. This information +is critical for all screen-oriented programs, including your editor and mailer. +.PP +A default \fBTERM\fR value will be set on a per-line basis by either +\fB/etc/inittab\fR (Linux and System-V-like UNIXes) or \fB/etc/ttys\fR (BSD +UNIXes). This will nearly always suffice for workstation and microcomputer +consoles. +.PP +If you use a dialup line, the type of device attached to it may vary. Older +UNIX systems pre-set a very dumb terminal type like `dumb' or `dialup' on +dialup lines. Newer ones may pre-set `vt100', reflecting the prevalence of DEC +VT100-compatible terminals and personal-computer emulators. +.PP +Modern telnets pass your \fBTERM\fR environment variable from the local side to +the remote one. There can be problems if the remote terminfo or termcap entry +for your type is not compatible with yours, but this situation is rare and +can almost always be avoided by explicitly exporting `vt100' (assuming you +are in fact using a VT100-superset console, terminal, or terminal emulator.) +.PP +In any case, you are free to override the system \fBTERM\fR setting to your +taste in your shell profile. The \fBtset\fP(1) utility may be of assistance; +you can give it a set of rules for deducing or requesting a terminal type based +on the tty device and baud rate. +.PP +Setting your own \fBTERM\fR value may also be useful if you have created a +custom entry incorporating options (such as visual bell or reverse-video) +which you wish to override the system default type for your line. +.PP +Terminal type descriptions are stored as files of capability data underneath +\*d. To browse a list of all terminal names recognized by the system, do + + toe | more + +from your shell. These capability files are in a binary format optimized for +retrieval speed (unlike the old text-based \fBtermcap\fR format they replace); +to examine an entry, you must use the \fBinfocmp\fR(1) command. Invoke it as +follows: + + infocmp \fIentry-name\fR + +where \fIentry-name\fR is the name of the type you wish to examine (and the +name of its capability file the subdirectory of \*d named for its first +letter). This command dumps a capability file in the text format described by +\fBterminfo\fR(\*n). +.PP +The first line of a \fBterminfo\fR(\*n) description gives the names by which +terminfo knows a terminal, separated by `|' (pipe-bar) characters with the last +name field terminated by a comma. The first name field is the type's +\fIprimary name\fR, and is the one to use when setting \fBTERM\fR. The last +name field (if distinct from the first) is actually a description of the +terminal type (it may contain blanks; the others must be single words). Name +fields between the first and last (if present) are aliases for the terminal, +usually historical names retained for compatibility. +.PP +There are some conventions for how to choose terminal primary names that help +keep them informative and unique. Here is a step-by-step guide to naming +terminals that also explains how to parse them: +.PP +First, choose a root name. The root will consist of a lower-case letter +followed by up to seven lower-case letters or digits. You need to avoid using +punctuation characters in root names, because they are used and interpreted as +filenames and shell meta-characters (such as !, $, *, ? etc.) embedded in them +may cause odd and unhelpful behavior. The slash (/), or any other character +that may be interpreted by anyone's file system (\e, $, [, ]), is especially +dangerous (terminfo is platform-independent, and choosing names with special +characters could someday make life difficult for users of a future port). The +dot (.) character is relatively safe as long as there is at most one per root +name; some historical terminfo names use it. +.PP +The root name for a terminal or workstation console type should almost always +begin with a vendor prefix (such as \fBhp\fR for Hewlett-Packard, \fBwy\fR for +Wyse, or \fBatt\fR for AT&T terminals), or a common name of the terminal line +(\fBvt\fR for the VT series of terminals from DEC, or \fBsun\fR for Sun +Microsystems workstation consoles, or \fBregent\fR for the ADDS Regent series. +You can list the terminfo tree to see what prefixes are already in common use. +The root name prefix should be followed when appropriate by a model number; +thus \fBvt100\fR, \fBhp2621\fR, \fBwy50\fR. +.PP +The root name for a PC-Unix console type should be the OS name, +i.e. \fBlinux\fR, \fBbsdos\fR, \fBfreebsd\fR, \fBnetbsd\fR. It should +\fInot\fR be \fBconsole\fR or any other generic that might cause confusion in a +multi-platform environment! If a model number follows, it should indicate +either the OS release level or the console driver release level. +.PP +The root name for a terminal emulator (assuming it doesn't fit one of the +standard ANSI or vt100 types) should be the program name or a readily +recognizable abbreviation of it (i.e. \fBversaterm\fR, \fBctrm\fR). +.PP +Following the root name, you may add any reasonable number of hyphen-separated +feature suffixes. +.TP 5 +2p +Has two pages of memory. Likewise 4p, 8p, etc. +.TP 5 +mc +Magic-cookie. Some terminals (notably older Wyses) can only support one +attribute without magic-cookie lossage. Their base entry is usually paired +with another that has this suffix and uses magic cookies to support multiple +attributes. +.TP 5 +-am +Enable auto-margin (right-margin wraparound) +.TP 5 +-m +Mono mode - suppress color support +.TP 5 +-na +No arrow keys - termcap ignores arrow keys which are actually there on the +terminal, so the user can use the arrow keys locally. +.TP 5 +-nam +No auto-margin - suppress am capability +.TP 5 +-nl +No labels - suppress soft labels +.TP 5 +-nsl +No status line - suppress status line +.TP 5 +-pp +Has a printer port which is used. +.TP 5 +-rv +Terminal in reverse video mode (black on white) +.TP 5 +-s +Enable status line. +.TP 5 +-vb +Use visible bell (flash) rather than beep. +.TP 5 +-w +Wide; terminal is in 132 column mode. +.PP +Conventionally, if your terminal type is a variant intended to specify a +line height, that suffix should go first. So, for a hypothetical FuBarCo +model 2317 terminal in 30-line mode with reverse video, best form would be +\fBfubar-30-rv\fR (rather than, say, `fubar-rv-30'). +.PP +Terminal types that are written not as standalone entries, but rather as +components to be plugged into other entries via \fBuse\fP capabilities, +are distinguished by using embedded plus signs rather than dashes. +.PP +Commands which use a terminal type to control display often accept a -T +option that accepts a terminal name argument. Such programs should fall back +on the \fBTERM\fR environment variable when no -T option is specified. +.SH PORTABILITY +For maximum compatibility with older System V UNIXes, names and aliases +should be unique within the first 14 characters. +.SH FILES +.TP 5 +\*d/?/* +compiled terminal capability data base +.TP 5 +/etc/inittab +tty line initialization (AT&T-like UNIXes). +.TP 5 +/etc/ttys +tty line initialization (BSD-like UNIXes). +.SH "SEE ALSO" +\fBcurses\fR(3), \fBterminfo\fR(\*n), \fBterm\fR(\*n). +.\"# +.\"# The following sets edit modes for GNU EMACS +.\"# Local Variables: +.\"# mode:nroff +.\"# fill-column:79 +.\"# End: |