• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!--
2  ****************************************************************************
3  * Copyright 2018-2023,2024 Thomas E. Dickey                                *
4  * Copyright 1998-2011,2017 Free Software Foundation, Inc.                  *
5  *                                                                          *
6  * Permission is hereby granted, free of charge, to any person obtaining a  *
7  * copy of this software and associated documentation files (the            *
8  * "Software"), to deal in the Software without restriction, including      *
9  * without limitation the rights to use, copy, modify, merge, publish,      *
10  * distribute, distribute with modifications, sublicense, and/or sell       *
11  * copies of the Software, and to permit persons to whom the Software is    *
12  * furnished to do so, subject to the following conditions:                 *
13  *                                                                          *
14  * The above copyright notice and this permission notice shall be included  *
15  * in all copies or substantial portions of the Software.                   *
16  *                                                                          *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
18  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
19  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
20  * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
21  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
22  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
23  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
24  *                                                                          *
25  * Except as contained in this notice, the name(s) of the above copyright   *
26  * holders shall not be used in advertising or otherwise to promote the     *
27  * sale, use or other dealings in this Software without prior written       *
28  * authorization.                                                           *
29  ****************************************************************************
30  * @Id: term.7,v 1.48 2024/03/16 15:35:01 tom Exp @
31-->
32<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
33<HTML>
34<HEAD>
35<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
36<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
37<TITLE>term 7 2024-03-16 ncurses 6.5 Miscellaneous</TITLE>
38<link rel="author" href="mailto:bug-ncurses@gnu.org">
39
40</HEAD>
41<BODY>
42<H1 class="no-header">term 7 2024-03-16 ncurses 6.5 Miscellaneous</H1>
43<PRE>
44<STRONG><A HREF="term.7.html">term(7)</A></STRONG>                          Miscellaneous                         <STRONG><A HREF="term.7.html">term(7)</A></STRONG>
45
46
47
48
49</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
50       term - conventions for naming terminal types
51
52
53</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
54       The  environment variable <EM>TERM</EM> should normally contain the type name of
55       the terminal, console or  display-device  type  you  are  using.   This
56       information  is  critical  for  all screen-oriented programs, including
57       your editor and mailer.
58
59       A default <EM>TERM</EM> value  will  be  set  on  a  per-line  basis  by  either
60       <STRONG>/etc/inittab</STRONG>  (e.g.,  System-V-like  Unices) or <STRONG>/etc/ttys</STRONG> (BSD Unices).
61       This will nearly  always  suffice  for  workstation  and  microcomputer
62       consoles.
63
64       If  you  use a dialup line, the type of device attached to it may vary.
65       Older Unix systems pre-set a very dumb terminal  type  like  "dumb"  or
66       "dialup"  on  dialup lines.  Newer ones may pre-set "vt100", reflecting
67       the prevalence of DEC VT100-compatible terminals and  personal-computer
68       emulators.
69
70       Modern  telnets pass your <EM>TERM</EM> environment variable from the local side
71       to the remote one.  There can be problems if  the  remote  terminfo  or
72       termcap  entry  for  your  type  is not compatible with yours, but this
73       situation is rare and  can  almost  always  be  avoided  by  explicitly
74       exporting  "vt100"  (assuming  you  are  in fact using a VT100-superset
75       console, terminal, or terminal emulator).
76
77       In any case, you are free to override the system <EM>TERM</EM> setting  to  your
78       taste in your shell profile.  The <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG> utility may be of assistance;
79       you can give it a set of rules for deducing or  requesting  a  terminal
80       type based on the tty device and baud rate.
81
82       Setting  your  own  <EM>TERM</EM> value may also be useful if you have created a
83       custom entry incorporating options (such as  visual  bell  or  reverse-
84       video)  which  you  wish  to  override the system default type for your
85       line.
86
87       Terminal type descriptions are  stored  as  files  of  capability  data
88       underneath /usr/share/terminfo.  To browse a list of all terminal names
89       recognized by the system, do
90
91               toe | more
92
93       from your shell.   These  capability  files  are  in  a  binary  format
94       optimized for retrieval speed (unlike the old text-based <STRONG>termcap</STRONG> format
95       they replace); to examine  an  entry,  you  must  use  the  <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
96       command.  Invoke it as follows:
97
98               infocmp <EM>entry</EM><STRONG>_</STRONG><EM>name</EM>
99
100       where  <EM>entry</EM><STRONG>_</STRONG><EM>name</EM>  is the name of the type you wish to examine (and the
101       name of its capability file  the  subdirectory  of  /usr/share/terminfo
102       named  for  its first letter).  This command dumps a capability file in
103       the text format described by <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
104
105       The first line of a <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> description gives the  names  by  which
106       terminfo  knows a terminal, separated by "|" (pipe-bar) characters with
107       the last name field terminated by a comma.  The first name field is the
108       type's <EM>primary</EM> <EM>name</EM>, and is the one to use when setting <EM>TERM</EM>.  The last
109       name field (if distinct from the first) is actually  a  description  of
110       the  terminal  type  (it  may contain blanks; the others must be single
111       words).  Name fields between  the  first  and  last  (if  present)  are
112       aliases  for  the  terminal,  usually  historical  names  retained  for
113       compatibility.
114
115       There are some conventions for how to  choose  terminal  primary  names
116       that  help  keep  them  informative and unique.  Here is a step-by-step
117       guide to naming terminals that also explains how to parse them:
118
119       First, choose a root name.  The  root  will  consist  of  a  lower-case
120       letter  followed by up to seven lower-case letters or digits.  You need
121       to avoid using punctuation characters in root names, because  they  are
122       used and interpreted as filenames and shell meta-characters (such as !,
123       $, *, ?, etc.) embedded in them may cause odd and  unhelpful  behavior.
124       The  slash  (/),  or  any  other  character  that may be interpreted by
125       anyone's file system (\, $, [, ]), is especially dangerous (terminfo is
126       platform-independent,  and choosing names with special characters could
127       someday make life difficult for users of a future port).  The  dot  (.)
128       character  is  relatively safe as long as there is at most one per root
129       name; some historical terminfo names use it.
130
131       The root name for a terminal or workstation console type should  almost
132       always  begin  with a vendor prefix (such as <STRONG>hp</STRONG> for Hewlett-Packard, <STRONG>wy</STRONG>
133       for Wyse, or <STRONG>att</STRONG> for AT&amp;T terminals), or a common name of the  terminal
134       line  (<STRONG>vt</STRONG>  for  the  VT  series  of  terminals from DEC, or <STRONG>sun</STRONG> for Sun
135       Microsystems workstation  consoles,  or  <STRONG>regent</STRONG>  for  the  ADDS  Regent
136       series.   You  can  list  the  terminfo  tree  to see what prefixes are
137       already in common use.  The root name prefix should  be  followed  when
138       appropriate by a model number; thus <STRONG>vt100</STRONG>, <STRONG>hp2621</STRONG>, <STRONG>wy50</STRONG>.
139
140       The  root  name for a PC-Unix console type should be the OS name, i.e.,
141       <STRONG>linux</STRONG>, <STRONG>bsdos</STRONG>, <STRONG>freebsd</STRONG>, <STRONG>netbsd</STRONG>.  It should <EM>not</EM> be <STRONG>console</STRONG> or  any  other
142       generic that might cause confusion in a multi-platform environment!  If
143       a model number follows, it should indicate either the OS release  level
144       or the console driver release level.
145
146       The  root name for a terminal emulator (assuming it does not fit one of
147       the standard ANSI or vt100 types) should  be  the  program  name  or  a
148       readily recognizable abbreviation of it (i.e., <STRONG>versaterm</STRONG>, <STRONG>ctrm</STRONG>).
149
150       Following  the  root name, you may add any reasonable number of hyphen-
151       separated feature suffixes.
152
153       2p   Has two pages of memory.  Likewise 4p, 8p, etc.
154
155       mc   Magic-cookie.  Some  terminals  (notably  older  Wyses)  can  only
156            support  one  attribute  without magic-cookie lossage.  Their base
157            entry is usually paired with another that has this suffix and uses
158            magic cookies to support multiple attributes.
159
160       -am  Enable auto-margin (right-margin wraparound).
161
162       -m   Mono mode - suppress color support.
163
164       -na  No  arrow  keys  -  termcap  ignores arrow keys which are actually
165            there on the terminal, so the user can use the arrow keys locally.
166
167       -nam No auto-margin - suppress am capability.
168
169       -nl  No labels - suppress soft labels.
170
171       -nsl No status line - suppress status line.
172
173       -pp  Has a printer port which is used.
174
175       -rv  Terminal in reverse video mode (black on white).
176
177       -s   Enable status line.
178
179       -vb  Use visible bell (flash) rather than beep.
180
181       -w   Wide; terminal is in 132-column mode.
182
183       Conventionally, if your terminal type is a variant intended to  specify
184       a  line  height,  that  suffix should go first.  So, for a hypothetical
185       FuBarCo model 2317 terminal in 30-line mode with  reverse  video,  best
186       form would be <STRONG>fubar-30-rv</STRONG> (rather than, say, "fubar-rv-30").
187
188       Terminal  types  that are written not as standalone entries, but rather
189       as components to be plugged into other entries  via  <STRONG>use</STRONG>  capabilities,
190       are distinguished by using embedded plus signs rather than dashes.
191
192       Commands which use a terminal type to control display often accept a -T
193       option that accepts a terminal name  argument.   Such  programs  should
194       fall  back  on  the  <EM>TERM</EM>  environment  variable  when  no -T option is
195       specified.
196
197
198</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
199       <EM>/usr/share/terminfo</EM>
200              compiled terminal description database
201
202       <EM>/etc/inittab</EM>
203              tty line initialization (AT&amp;T-like Unices)
204
205       <EM>/etc/ttys</EM>
206              tty line initialization (BSD-like Unices)
207
208
209</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
210       For maximum compatibility with older System V Unices, names and aliases
211       should be unique within the first 14 characters.
212
213
214</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
215       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
216
217
218
219ncurses 6.5                       2024-03-16                           <STRONG><A HREF="term.7.html">term(7)</A></STRONG>
220</PRE>
221<div class="nav">
222<ul>
223<li><a href="#h2-NAME">NAME</a></li>
224<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
225<li><a href="#h2-FILES">FILES</a></li>
226<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
227<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
228</ul>
229</div>
230</BODY>
231</HTML>
232