- The <STRONG>tset</STRONG> utility has been provided for backward-compati-
- bility with BSD environments (under most modern UNIXes,
- <STRONG>/etc/inittab</STRONG> and <STRONG>getty(1)</STRONG> can set <STRONG>TERM</STRONG> appropriately for
- each dial-up line; this obviates what was <STRONG>tset</STRONG>'s most
- important use). This implementation behaves like 4.4BSD
- tset, with a few exceptions specified here.
-
- The <STRONG>-S</STRONG> option of BSD tset no longer works; it prints an
- error message to stderr and dies. The <STRONG>-s</STRONG> option only sets
- <STRONG>TERM</STRONG>, not <STRONG>TERMCAP</STRONG>. Both of these changes are because the
- <STRONG>TERMCAP</STRONG> variable is no longer supported under terminfo-
- based <STRONG>ncurses</STRONG>, which makes <STRONG>tset</STRONG> <STRONG>-S</STRONG> useless (we made it die
- noisily rather than silently induce lossage).
-
- There was an undocumented 4.4BSD feature that invoking
- tset via a link named `TSET` (or via any other name begin-
- ning with an upper-case letter) set the terminal to use
- upper-case only. This feature has been omitted.
-
- The <STRONG>-A</STRONG>, <STRONG>-E</STRONG>, <STRONG>-h</STRONG>, <STRONG>-u</STRONG> and <STRONG>-v</STRONG> options were deleted from the
- <STRONG>tset</STRONG> utility in 4.4BSD. None of them were documented in
- 4.3BSD and all are of limited utility at best. The <STRONG>-a</STRONG>,
- <STRONG>-d</STRONG>, and <STRONG>-p</STRONG> 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 <STRONG>-m</STRONG> option instead. The <STRONG>-n</STRONG>
- option remains, but has no effect. The <STRONG>-adnp</STRONG> options are
- therefore omitted from the usage summary above.
-
- It is still permissible to specify the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG>
- options without arguments, although it is strongly recom-
- mended that such usage be fixed to explicitly specify the
- character.
-
- As of 4.4BSD, executing <STRONG>tset</STRONG> as <STRONG>reset</STRONG> no longer implies
- the <STRONG>-Q</STRONG> option. Also, the interaction between the - option
- and the <EM>terminal</EM> argument in some historic implementations
- of <STRONG>tset</STRONG> has been removed.
+ Neither IEEE Std 1003.1/The Open Group Base Specifications Issue 7
+ (POSIX.1-2008) nor X/Open Curses Issue 7 documents <STRONG>tset</STRONG> or <STRONG>reset</STRONG>.
+
+ The AT&T <STRONG>tput</STRONG> utility (AIX, HPUX, Solaris) incorporated the terminal-
+ mode manipulation as well as termcap-based features such as resetting
+ tabstops from <STRONG>tset</STRONG> in BSD (4.1c), presumably with the intention of mak-
+ ing <STRONG>tset</STRONG> obsolete. However, each of those systems still provides <STRONG>tset</STRONG>.
+ In fact, the commonly-used <STRONG>reset</STRONG> utility is always an alias for <STRONG>tset</STRONG>.
+
+ The <STRONG>tset</STRONG> utility provides for backward-compatibility with BSD environ-
+ ments (under most modern UNIXes, <STRONG>/etc/inittab</STRONG> and <STRONG>getty(1)</STRONG> can set <STRONG>TERM</STRONG>
+ appropriately for each dial-up line; this obviates what was <STRONG>tset</STRONG>'s most
+ important use). This implementation behaves like 4.4BSD <STRONG>tset</STRONG>, with a
+ few exceptions specified here.
+
+ A few options are different because the <STRONG>TERMCAP</STRONG> variable is no longer
+ supported under terminfo-based <STRONG>ncurses</STRONG>:
+
+ <STRONG>o</STRONG> The <STRONG>-S</STRONG> option of BSD <STRONG>tset</STRONG> no longer works; it prints an error mes-
+ sage to the standard error and dies.
+
+ <STRONG>o</STRONG> The <STRONG>-s</STRONG> option only sets <STRONG>TERM</STRONG>, not <STRONG>TERMCAP</STRONG>.
+
+ There was an undocumented 4.4BSD feature that invoking <STRONG>tset</STRONG> via a link
+ named "TSET" (or via any other name beginning with an upper-case let-
+ ter) set the terminal to use upper-case only. This feature has been
+ omitted.
+
+ The <STRONG>-A</STRONG>, <STRONG>-E</STRONG>, <STRONG>-h</STRONG>, <STRONG>-u</STRONG> and <STRONG>-v</STRONG> options were deleted from the <STRONG>tset</STRONG> utility in
+ 4.4BSD. None of them were documented in 4.3BSD and all are of limited
+ utility at best. The <STRONG>-a</STRONG>, <STRONG>-d</STRONG>, and <STRONG>-p</STRONG> options are similarly not docu-
+ mented 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 <STRONG>-m</STRONG> option instead. The <STRONG>-a</STRONG>, <STRONG>-d</STRONG>, and <STRONG>-p</STRONG> options
+ are therefore omitted from the usage summary above.
+
+ Very old systems, e.g., 3BSD, used a different terminal driver which
+ was replaced in 4BSD in the early 1980s. To accommodate these older
+ systems, the 4BSD <STRONG>tset</STRONG> provided a <STRONG>-n</STRONG> option to specify that the new
+ terminal driver should be used. This implementation does not provide
+ that choice.
+
+ It is still permissible to specify the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG> options without
+ arguments, although it is strongly recommended that such usage be fixed
+ to explicitly specify the character.
+
+ As of 4.4BSD, executing <STRONG>tset</STRONG> as <STRONG>reset</STRONG> no longer implies the <STRONG>-Q</STRONG> option.
+ Also, the interaction between the - option and the <EM>terminal</EM> argument in
+ some historic implementations of <STRONG>tset</STRONG> has been removed.
+
+ The <STRONG>-c</STRONG> and <STRONG>-w</STRONG> options are not found in earlier implementations. How-
+ ever, a different window size-change feature was provided in 4.4BSD.
+
+ <STRONG>o</STRONG> In 4.4BSD, <STRONG>tset</STRONG> uses the window size from the termcap description
+ to set the window size if <STRONG>tset</STRONG> is not able to obtain the window
+ size from the operating system.
+
+ <STRONG>o</STRONG> In ncurses, <STRONG>tset</STRONG> obtains the window size using <STRONG>setupterm</STRONG>, which may
+ be from the operating system, the <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> environment
+ variables or the terminal description.
+
+ Obtaining the window size from the terminal description is common to
+ both implementations, but considered obsolescent. Its only practical
+ use is for hardware terminals. Generally speaking, a window size would
+ be unset only if there were some problem obtaining the value from the
+ operating system (and <STRONG>setupterm</STRONG> would still fail). For that reason,
+ the <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> environment variables may be useful for working
+ around window-size problems. Those have the drawback that if the win-
+ dow is resized, those variables must be recomputed and reassigned. To
+ do this more easily, use the <STRONG><A HREF="resize.1.html">resize(1)</A></STRONG> program.