aboutsummaryrefslogtreecommitdiff
path: root/man/tset.1
diff options
context:
space:
mode:
Diffstat (limited to 'man/tset.1')
-rw-r--r--man/tset.1288
1 files changed, 288 insertions, 0 deletions
diff --git a/man/tset.1 b/man/tset.1
new file mode 100644
index 000000000000..e023064c08b7
--- /dev/null
+++ b/man/tset.1
@@ -0,0 +1,288 @@
+.\"***************************************************************************
+.\" Copyright (c) 1998-2005,2006 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. *
+.\"***************************************************************************
+.\"
+.\" $Id: tset.1,v 1.19 2006/12/24 15:00:30 tom Exp $
+.TH tset 1 ""
+.SH NAME
+\fBtset\fR, \fBreset\fR - terminal initialization
+.SH SYNOPSIS
+\fBtset\fR [\fB-IQVcqrsw\fR] [\fB-\fR] [\fB-e\fR \fIch\fR] [\fB-i\fR \fIch\fR] [\fB-k\fR \fIch\fR] [\fB-m\fR \fImapping\fR] [\fIterminal\fR]
+.br
+\fBreset\fR [\fB-IQVcqrsw\fR] [\fB-\fR] [\fB-e\fR \fIch\fR] [\fB-i\fR \fIch\fR] [\fB-k\fR \fIch\fR] [\fB-m\fR \fImapping\fR] [\fIterminal\fR]
+.SH DESCRIPTION
+\&\fBTset\fR initializes terminals.
+\fBTset\fR first determines the type of terminal that you are using.
+This determination is done as follows, using the first terminal type found.
+.PP
+1. The \fBterminal\fR argument specified on the command line.
+.PP
+2. The value of the \fBTERM\fR environmental variable.
+.PP
+3. (BSD systems only.) The terminal type associated with the standard
+error output device in the \fI/etc/ttys\fR file. (On Linux and
+System-V-like UNIXes, \fIgetty\fR does this job by setting
+\fBTERM\fR according to the type passed to it by \fI/etc/inittab\fR.)
+.PP
+4. The default terminal type, ``unknown''.
+.PP
+If the terminal type was not specified on the command-line, the \fB-m\fR
+option mappings are then applied (see the section
+.B TERMINAL TYPE MAPPING
+for more information).
+Then, if the terminal type begins with a question mark (``?''), the
+user is prompted for confirmation of the terminal type. An empty
+response confirms the type, or, another type can be entered to specify
+a new type. Once the terminal type has been determined, the terminfo
+entry for the terminal is retrieved. If no terminfo entry is found
+for the type, the user is prompted for another terminal type.
+.PP
+Once the terminfo entry is retrieved, the window size, backspace, interrupt
+and line kill characters (among many other things) are set and the terminal
+and tab initialization strings are sent to the standard error output.
+Finally, if the erase, interrupt and line kill characters have changed,
+or are not set to their default values, their values are displayed to the
+standard error output.
+Use the \fB-c\fP or \fB-w\fP option to select only the window sizing
+versus the other initialization.
+If neither option is given, both are assumed.
+.PP
+When invoked as \fBreset\fR, \fBtset\fR sets cooked and echo modes,
+turns off cbreak and raw modes, turns on newline translation and
+resets any unset special characters to their default values before
+doing the terminal initialization described above. This is useful
+after a program dies leaving a terminal in an abnormal state. Note,
+you may have to type
+.sp
+ \fB<LF>reset<LF>\fR
+.sp
+(the line-feed character is normally control-J) to get the terminal
+to work, as carriage-return may no longer work in the abnormal state.
+Also, the terminal will often not echo the command.
+.PP
+The options are as follows:
+.TP 5
+.B -c
+Set control characters and modes.
+.B -e
+Set the erase character to \fIch\fR.
+.TP
+.B -I
+Do not send the terminal or tab initialization strings to the terminal.
+.TP
+.B -i
+Set the interrupt character to \fIch\fR.
+.TP
+.B -k
+Set the line kill character to \fIch\fR.
+.TP
+.B -m
+Specify a mapping from a port type to a terminal.
+See the section
+.B TERMINAL TYPE MAPPING
+for more information.
+.TP
+.B -Q
+Do not display any values for the erase, interrupt and line kill characters.
+Normally \fBtset\fR displays the values for control characters which
+differ from the system's default values.
+.TP
+.B -q
+The terminal type is displayed to the standard output, and the terminal is
+not initialized in any way. The option `-' by itself is equivalent but
+archaic.
+.TP
+.B -r
+Print the terminal type to the standard error output.
+.TP
+.B -s
+Print the sequence of shell commands to initialize the environment variable
+\fBTERM\fR to the standard output.
+See the section
+.B SETTING THE ENVIRONMENT
+for details.
+.TP
+.B -V
+reports the version of ncurses which was used in this program, and exits.
+.TP
+.B -w
+Resize the window to match the size deduced via \fBsetupterm\fP.
+Normally this has no effect,
+unless \fBsetupterm\fP is not able to detect the window size.
+.PP
+The arguments for the \fB-e\fR, \fB-i\fR, and \fB-k\fR
+options may either be entered as actual characters or by using the `hat'
+notation, i.e. control-h may be specified as ``^H'' or ``^h''.
+.
+.SH SETTING THE ENVIRONMENT
+It is often desirable to enter the terminal type and information about
+the terminal's capabilities into the shell's environment.
+This is done using the \fB-s\fR option.
+.PP
+When the \fB-s\fR option is specified, the commands to enter the information
+into the shell's environment are written to the standard output. If
+the \fBSHELL\fR environmental variable ends in ``csh'', the commands
+are for \fBcsh\fR, otherwise, they are for \fBsh\fR.
+Note, the \fBcsh\fR commands set and unset the shell variable
+\fBnoglob\fR, leaving it unset. The following line in the \fB.login\fR
+or \fB.profile\fR files will initialize the environment correctly:
+.sp
+ eval \`tset -s options ... \`
+.
+.SH TERMINAL TYPE MAPPING
+When the terminal is not hardwired into the system (or the current
+system information is incorrect) the terminal type derived from the
+\fI/etc/ttys\fR file or the \fBTERM\fR environmental variable is often
+something generic like \fBnetwork\fR, \fBdialup\fR, or \fBunknown\fR.
+When \fBtset\fR is used in a startup script it is often desirable to
+provide information about the type of terminal used on such ports.
+.PP
+The purpose of the \fB-m\fR option is to map
+from some set of conditions to a terminal type, that is, to
+tell \fBtset\fR
+``If I'm on this port at a particular speed, guess that I'm on that
+kind of terminal''.
+.PP
+The argument to the \fB-m\fR option consists of an optional port type, an
+optional operator, an optional baud rate specification, an optional
+colon (``:'') character and a terminal type. The port type is a
+string (delimited by either the operator or the colon character). The
+operator may be any combination of ``>'', ``<'', ``@'', and ``!''; ``>''
+means greater than, ``<'' means less than, ``@'' means equal to
+and ``!'' inverts the sense of the test.
+The baud rate is specified as a number and is compared with the speed
+of the standard error output (which should be the control terminal).
+The terminal type is a string.
+.PP
+If the terminal type is not specified on the command line, the \fB-m\fR
+mappings are applied to the terminal type. If the port type and baud
+rate match the mapping, the terminal type specified in the mapping
+replaces the current type. If more than one mapping is specified, the
+first applicable mapping is used.
+.PP
+For example, consider the following mapping: \fBdialup>9600:vt100\fR.
+The port type is dialup , the operator is >, the baud rate
+specification is 9600, and the terminal type is vt100. The result of
+this mapping is to specify that if the terminal type is \fBdialup\fR,
+and the baud rate is greater than 9600 baud, a terminal type of
+\fBvt100\fR will be used.
+.PP
+If no baud rate is specified, the terminal type will match any baud rate.
+If no port type is specified, the terminal type will match any port type.
+For example, \fB-m dialup:vt100 -m :?xterm\fR
+will cause any dialup port, regardless of baud rate, to match the terminal
+type vt100, and any non-dialup port type to match the terminal type ?xterm.
+Note, because of the leading question mark, the user will be
+queried on a default port as to whether they are actually using an xterm
+terminal.
+.PP
+No whitespace characters are permitted in the \fB-m\fR option argument.
+Also, to avoid problems with meta-characters, it is suggested that the
+entire \fB-m\fR option argument be placed within single quote characters,
+and that \fBcsh\fR users insert a backslash character (``\e'') before
+any exclamation marks (``!'').
+.SH HISTORY
+The \fBtset\fR command appeared in BSD 3.0. The \fBncurses\fR implementation
+was lightly adapted from the 4.4BSD sources for a terminfo environment by Eric
+S. Raymond <esr@snark.thyrsus.com>.
+.SH COMPATIBILITY
+The \fBtset\fR utility has been provided for backward-compatibility with BSD
+environments (under most modern UNIXes, \fB/etc/inittab\fR and \fIgetty\fR(1)
+can set \fBTERM\fR appropriately for each dial-up line; this obviates what was
+\fBtset\fR's most important use). This implementation behaves like 4.4BSD
+tset, with a few exceptions specified here.
+.PP
+The \fB-S\fR option of BSD tset no longer works; it prints an error message to stderr
+and dies. The \fB-s\fR option only sets \fBTERM\fR, not \fBTERMCAP\fP. Both these
+changes are because the \fBTERMCAP\fR variable is no longer supported under
+terminfo-based \fBncurses\fR, which makes \fBtset -S\fR useless (we made it die
+noisily rather than silently induce lossage).
+.PP
+There was an undocumented 4.4BSD feature that invoking tset via a link named
+`TSET` (or via any other name beginning with an upper-case letter) set the
+terminal to use upper-case only. This feature has been omitted.
+.PP
+The \fB-A\fR, \fB-E\fR, \fB-h\fR, \fB-u\fR and \fB-v\fR
+options were deleted from the \fBtset\fR
+utility in 4.4BSD.
+None of them were documented in 4.3BSD and all are
+of limited utility at best.
+The \fB-a\fR, \fB-d\fR, and \fB-p\fR options are similarly
+not documented or useful, but were retained as they appear to be in
+widespread use. It is strongly recommended that any usage of these
+three options be changed to use the \fB-m\fR option instead. The
+-n option remains, but has no effect. The \fB-adnp\fR options are therefore
+omitted from the usage summary above.
+.PP
+It is still permissible to specify the \fB-e\fR, \fB-i\fR, and \fB-k\fR options without
+arguments, although it is strongly recommended that such usage be fixed to
+explicitly specify the character.
+.PP
+As of 4.4BSD, executing \fBtset\fR as \fBreset\fR no longer implies the \fB-Q\fR
+option. Also, the interaction between the - option and the \fIterminal\fR
+argument in some historic implementations of \fBtset\fR has been removed.
+.SH ENVIRONMENT
+The \fBtset\fR command uses these environment variables:
+.TP 5
+SHELL
+tells \fBtset\fP whether to initialize \fBTERM\fP using \fBsh\fP or
+\fBcsh\fP syntax.
+.TP 5
+TERM
+Denotes your terminal type.
+Each terminal type is distinct, though many are similar.
+.TP 5
+TERMCAP
+may denote the location of a termcap database.
+If it is not an absolute pathname, e.g., begins with a `/',
+\fBtset\fP removes the variable from the environment before looking
+for the terminal description.
+.SH FILES
+.TP 5
+/etc/ttys
+system port name to terminal type mapping database (BSD versions only).
+.TP
+@TERMINFO@
+terminal capability database
+.SH SEE ALSO
+csh(1),
+sh(1),
+stty(1),
+curs_terminfo(3X),
+tty(4),
+terminfo(5),
+ttys(5),
+environ(7)
+.PP
+This describes \fBncurses\fR
+version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
+.\"#
+.\"# The following sets edit modes for GNU EMACS
+.\"# Local Variables:
+.\"# mode:nroff
+.\"# fill-column:79
+.\"# End: