.\"***************************************************************************
-.\" 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.48 2017/01/14 20:55:07 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 (April 1979), written by Kurt Shoens.
+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
-Later in 4.1BSD (December 1980),
-Mark Horton added a call to the \fBtset\fP program
-using the \fB\-I\fP and \fB\-Q\fP options, i.e.,
-using that to improve the terminal modes.
-With those options,
-that version of \fBreset\fP did not use the termcap database.
-.PP
-A separate \fBtset\fP command was provided in 2BSD by Eric Allman.
-While the oldest published source (from 1979)
-provides both \fBtset\fP and \fBreset\fP,
-Allman's comments in the 2BSD source code indicate
+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,
-adding the code from the existing \*(lqreset\*(rq
-feature when \fBtset\fP was invoked as \fBreset\fP.
-Rather than simply copying the existing program,
-in this merged version, \fBtset\fP used the termcap database
-to do additional (re)initialization of the terminal.
+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)
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