.\"***************************************************************************
-.\" Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey *
+.\" Copyright 1998-2016,2017 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 *
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: tset.1,v 1.47 2017/01/07 22:59:51 tom Exp $
+.\" $Id: tset.1,v 1.57 2021/07/10 22:50:45 tom Exp $
.TH @TSET@ 1 ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.ie \n(.g .ds '' \(rq
.el .ds '' ''
.de bP
-.IP \(bu 4
+.ie n .IP \(bu 4
+.el .IP \(bu 2
..
.SH NAME
\fB@TSET@\fR, \fB@RESET@\fR \- terminal initialization
.bP
standard input and
.bP
-ultimately \*(lq/dev/tty\*(rq
+ultimately \*(``/dev/tty\*(''
.PP
to obtain terminal settings.
Having retrieved these settings, \fB@TSET@\fP remembers which
.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
+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,
use this to set the operating system's notion of the window size.
.bP
if the \*(``\fB\-c\fP\*('' option is enabled,
-the backspace, interrupt and line kill characters (among many other things) are set
+the backspace, interrupt and line kill characters
+(among many other things) are set
.bP
unless the \*(``\fB\-I\fP\*('' option is enabled,
the terminal
to work, as carriage-return may no longer work in the abnormal state.
.bP
Also, the terminal will often not echo the command.
-.SH OPTIONS
+.SH OPTIONS
.PP
The options are as follows:
.TP 5
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
+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
+\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 ... \`
.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
+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
\*(``>\*('',
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
+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
+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
+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.
any exclamation marks (\*(``!\*('').
.SH HISTORY
.PP
-A \fBreset\fP command appeared in 2BSD (1979), written by Kurt Shoens.
-.PP
-A separate \fBtset\fP command was provided in 2BSD by Eric Allman.
-While the oldest published source (from 1979) provides both programs,
-Allman's comments in the 2BSD source code indicate
+A \fBreset\fP command appeared in 1BSD (March 1978), written by Kurt Shoens.
+This program set the \fIerase\fP and \fIkill\fP characters
+to \fB^H\fP (backspace) and \fB@\fP respectively.
+Mark Horton improved that in 3BSD (October 1979), adding
+\fIintr\fP, \fIquit\fP, \fIstart\fP/\fIstop\fP and \fIeof\fP characters
+as well as changing the program to avoid modifying any user settings.
+That version of \fBreset\fP did not use the termcap database.
+.PP
+A separate \fBtset\fP command was provided in 1BSD by Eric Allman,
+using the termcap database.
+Allman's comments in the source code indicate
that he began work in October 1977,
continuing development over the next few years.
.PP
-In September 1980, Eric Allman modified \fBtset\fP to provide a \*(lqreset\*(rq
-feature when the program was invoked as \fBreset\fP.
+According to comments in the source code,
+the \fBtset\fP program was modified in September 1980,
+to use logic copied from the 3BSD \*(``reset\*(''
+when it was invoked as \fBreset\fP.
This version appeared in 4.1cBSD, late in 1982.
.PP
+Other developers (e.g., Keith Bostic and Jim Bloom)
+continued to modify \fBtset\fP until 4.4BSD was released in 1993.
+.PP
The \fBncurses\fR implementation
was lightly adapted from the 4.4BSD sources for a terminfo environment by Eric
S. Raymond <esr@snark.thyrsus.com>.
is always an alias for \fBtset\fP.
.PP
The \fB@TSET@\fR utility provides for backward-compatibility with BSD
-environments (under most modern UNIXes, \fB/etc/inittab\fR and \fIgetty\fR(1)
+environments (under most modern UNIXes, \fB/etc/inittab\fR and \fBgetty\fR(1)
can set \fBTERM\fR appropriately for each dial-up line; this obviates what was
-\fB@TSET@\fR's most important use). This implementation behaves like 4.4BSD
+\fB@TSET@\fR's most important use).
+This implementation behaves like 4.4BSD
\fBtset\fP, with a few exceptions specified here.
.PP
A few options are different
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
+widespread use.
+It is strongly recommended that any usage of these
three options be changed to use the \fB\-m\fR option instead.
-The \fB\-a\fP, \fB\-d\fP, and \fB\-p\fR options are therefore omitted from the usage summary above.
+The \fB\-a\fP, \fB\-d\fP, and \fB\-p\fR options
+are therefore omitted from the usage summary above.
.PP
Very old systems, e.g., 3BSD, used a different terminal driver which
was replaced in 4BSD in the early 1980s.
terminal capability database
.SH SEE ALSO
.hy 0
-csh(1),
-sh(1),
-stty(1),
-curs_terminfo(3X),
-tty(4),
-terminfo(5),
-ttys(5),
-environ(7)
+\fBcsh\fP(1),
+\fBsh\fP(1),
+\fBstty\fP(1),
+\fBcurs_terminfo\fP(3X),
+\fBtty\fP(4),
+\fBterminfo\fP(5),
+\fBttys\fP(5),
+\fBenviron\fP(7)
.hy
.PP
This describes \fBncurses\fR