ncurses 6.0 - patch 20170114
[ncurses.git] / doc / html / man / tset.1.html
index c92f9ad2dcb9534be5c260b248dc825c500667b2..d76c27d8368511b40b423d6f19a438531b876e4f 100644 (file)
@@ -1,7 +1,6 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc.              *
+  * Copyright (c) 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            *
   *                                                                          *
   * Permission is hereby granted, free of charge, to any person obtaining a  *
   * copy of this software and associated documentation files (the            *
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tset.1,v 1.25 2010/12/04 18:38:55 tom Exp @
+  * @Id: tset.1,v 1.48 2017/01/14 20:55:07 tom Exp @
 -->
 -->
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <HTML>
 <HEAD>
+<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
+<meta name="generator" content="Manpage converted by man2html - see http://invisible-island.net/scripts/readme.html#others_scripts">
 <TITLE>tset 1</TITLE>
 <link rev=made href="mailto:bug-ncurses@gnu.org">
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 </HEAD>
 <BODY>
 <TITLE>tset 1</TITLE>
 <link rev=made href="mailto:bug-ncurses@gnu.org">
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 </HEAD>
 <BODY>
-<H1>tset 1</H1>
-<HR>
+<H1 class="no-header">tset 1</H1>
 <PRE>
 <PRE>
-<!-- Manpage converted by man2html 3.0.1 -->
 <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>                                                         <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
 
 
 
 
 <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>                                                         <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
 
 
 
 
-</PRE>
-<H2>NAME</H2><PRE>
+</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
        <STRONG>tset</STRONG>, <STRONG>reset</STRONG> - terminal initialization
 
 
        <STRONG>tset</STRONG>, <STRONG>reset</STRONG> - terminal initialization
 
 
-</PRE>
-<H2>SYNOPSIS</H2><PRE>
+</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
        <STRONG>tset</STRONG>  [<STRONG>-IQVcqrsw</STRONG>] [<STRONG>-</STRONG>] [<STRONG>-e</STRONG> <EM>ch</EM>] [<STRONG>-i</STRONG> <EM>ch</EM>] [<STRONG>-k</STRONG> <EM>ch</EM>] [<STRONG>-m</STRONG> <EM>mapping</EM>]
        [<EM>terminal</EM>]
        <STRONG>reset</STRONG> [<STRONG>-IQVcqrsw</STRONG>] [<STRONG>-</STRONG>] [<STRONG>-e</STRONG> <EM>ch</EM>] [<STRONG>-i</STRONG> <EM>ch</EM>] [<STRONG>-k</STRONG> <EM>ch</EM>] [<STRONG>-m</STRONG> <EM>mapping</EM>]
        [<EM>terminal</EM>]
 
 
        <STRONG>tset</STRONG>  [<STRONG>-IQVcqrsw</STRONG>] [<STRONG>-</STRONG>] [<STRONG>-e</STRONG> <EM>ch</EM>] [<STRONG>-i</STRONG> <EM>ch</EM>] [<STRONG>-k</STRONG> <EM>ch</EM>] [<STRONG>-m</STRONG> <EM>mapping</EM>]
        [<EM>terminal</EM>]
        <STRONG>reset</STRONG> [<STRONG>-IQVcqrsw</STRONG>] [<STRONG>-</STRONG>] [<STRONG>-e</STRONG> <EM>ch</EM>] [<STRONG>-i</STRONG> <EM>ch</EM>] [<STRONG>-k</STRONG> <EM>ch</EM>] [<STRONG>-m</STRONG> <EM>mapping</EM>]
        [<EM>terminal</EM>]
 
 
-</PRE>
-<H2>DESCRIPTION</H2><PRE>
-       <STRONG>Tset</STRONG>  initializes  terminals.   <STRONG>Tset</STRONG>  first determines the
-       type of terminal that you are using.   This  determination
-       is done as follows, using the first terminal type found.
+</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+
+</PRE><H3><a name="h3-tset---initialization">tset - initialization</a></H3><PRE>
+       This program initializes terminals.
+
+       First,  <STRONG>tset</STRONG>  retrieves the current terminal mode settings
+       for your terminal.  It does this by successively testing
+
+       <STRONG>o</STRONG>   the standard error,
+
+       <STRONG>o</STRONG>   standard output,
+
+       <STRONG>o</STRONG>   standard input and
+
+       <STRONG>o</STRONG>   ultimately "/dev/tty"
+
+       to obtain terminal settings.  Having retrieved these  set-
+       tings,  <STRONG>tset</STRONG>  remembers  which file descriptor to use when
+       updating settings.
+
+       Next, <STRONG>tset</STRONG> determines the type of terminal  that  you  are
+       using.   This  determination is done as follows, using the
+       first terminal type found.
 
        1. The <STRONG>terminal</STRONG> argument specified on the command line.
 
        2. The value of the <STRONG>TERM</STRONG> environmental variable.
 
 
        1. The <STRONG>terminal</STRONG> argument specified on the command line.
 
        2. The value of the <STRONG>TERM</STRONG> environmental variable.
 
-       3.  (BSD  systems only.) The terminal type associated with
-       the standard error output device in  the  <EM>/etc/ttys</EM>  file.
-       (On  System-V-like  UNIXes  and systems using that conven-
+       3. (BSD systems only.) The terminal type  associated  with
+       the  standard  error  output device in the <EM>/etc/ttys</EM> file.
+       (On System-V-like UNIXes and systems  using  that  conven-
        tion, <EM>getty</EM> does this job by setting <STRONG>TERM</STRONG> according to the
        type passed to it by <EM>/etc/inittab</EM>.)
 
        tion, <EM>getty</EM> does this job by setting <STRONG>TERM</STRONG> according to the
        type passed to it by <EM>/etc/inittab</EM>.)
 
-       4. The default terminal type, ``unknown''.
+       4. The default terminal type, "unknown".
 
 
-       If  the  terminal  type  was not specified on the command-
-       line, the <STRONG>-m</STRONG> option mappings are  then  applied  (see  the
+       If the terminal type was not  specified  on  the  command-
+       line,  the  <STRONG>-m</STRONG>  option  mappings are then applied (see the
        section  <STRONG>TERMINAL</STRONG>  <STRONG>TYPE</STRONG>  <STRONG>MAPPING</STRONG>  for  more  information).
        section  <STRONG>TERMINAL</STRONG>  <STRONG>TYPE</STRONG>  <STRONG>MAPPING</STRONG>  for  more  information).
-       Then, if the terminal type begins  with  a  question  mark
-       (``?''), the user is prompted for confirmation of the ter-
-       minal 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  ter-
-       minal type.
-
-       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 initializa-
-       tion 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 <STRONG>-c</STRONG> or <STRONG>-w</STRONG> option to select only the  window  sizing
-       versus  the  other  initialization.   If neither option is
-       given, both are assumed.
-
-       When invoked as <STRONG>reset</STRONG>, <STRONG>tset</STRONG> sets cooked  and  echo  modes,
-       turns  off cbreak and raw modes, turns on newline transla-
-       tion 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
-
-           <STRONG>&lt;LF&gt;reset&lt;LF&gt;</STRONG>
-
-       (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.
+       Then,  if  the  terminal  type begins with a question mark
+       ("?"), the user is prompted for confirmation of the termi-
+       nal  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  terminal
+       description for the terminal is retrieved.  If no terminal
+       description  is  found  for the type, the user is prompted
+       for another terminal type.
+
+       Once the terminal description is retrieved,
+
+       <STRONG>o</STRONG>   if the "<STRONG>-w</STRONG>" option is enabled,  <STRONG>tset</STRONG>  may  update  the
+           terminal's window size.
+
+           If the window size cannot be obtained from the operat-
+           ing system, but the terminal description (or  environ-
+           ment, e.g., <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> variables specify this),
+           use this to set the operating system's notion  of  the
+           window size.
+
+       <STRONG>o</STRONG>   if  the  "<STRONG>-c</STRONG>" option is enabled, the backspace, inter-
+           rupt  and  line  kill  characters  (among  many  other
+           things) are set
+
+       <STRONG>o</STRONG>   unless  the  "<STRONG>-I</STRONG>"  option is enabled, the terminal and
+           tab <EM>initialization</EM> strings are sent  to  the  standard
+           error  output,  and  <STRONG>tset</STRONG>  waits one second (in case a
+           hardware reset was issued).
+
+       <STRONG>o</STRONG>   Finally, if the erase, interrupt and line kill charac-
+           ters  have  changed,  or  are not set to their default
+           values, their values are  displayed  to  the  standard
+           error output.
+
+
+</PRE><H3><a name="h3-reset---reinitialization">reset - reinitialization</a></H3><PRE>
+       When  invoked  as  <STRONG>reset</STRONG>,  <STRONG>tset</STRONG> sets the terminal modes to
+       "sane" values:
+
+       <STRONG>o</STRONG>   sets cooked and echo modes,
+
+       <STRONG>o</STRONG>   turns off cbreak and raw modes,
+
+       <STRONG>o</STRONG>   turns on newline translation and
+
+       <STRONG>o</STRONG>   resets any unset special characters to  their  default
+           values
 
 
+       before  doing the terminal initialization described above.
+       Also,  rather  than  using  the  terminal   <EM>initialization</EM>
+       strings, it uses the terminal <EM>reset</EM> strings.
+
+       The <STRONG>reset</STRONG> command is useful after a program dies leaving a
+       terminal in an abnormal state:
+
+       <STRONG>o</STRONG>   you may have to type
+
+               <EM>&lt;LF&gt;</EM><STRONG>reset</STRONG><EM>&lt;LF&gt;</EM>
+
+           (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.
+
+       <STRONG>o</STRONG>   Also, the terminal will often not echo the command.
+
+
+</PRE><H2><a name="h2-OPTIONS">OPTIONS</a></H2><PRE>
        The options are as follows:
 
        The options are as follows:
 
-       <STRONG>-c</STRONG>   Set  control  characters and modes.  <STRONG>-e</STRONG> Set the erase
-            character to <EM>ch</EM>.
+       <STRONG>-c</STRONG>   Set control characters and modes.
+
+       <STRONG>-e</STRONG>   Set the erase character to <EM>ch</EM>.
 
        <STRONG>-I</STRONG>   Do  not  send  the  terminal  or  tab  initialization
             strings to the terminal.
 
        <STRONG>-I</STRONG>   Do  not  send  the  terminal  or  tab  initialization
             strings to the terminal.
 
        <STRONG>-q</STRONG>   The terminal type is displayed to the  standard  out-
             put,  and the terminal is not initialized in any way.
 
        <STRONG>-q</STRONG>   The terminal type is displayed to the  standard  out-
             put,  and the terminal is not initialized in any way.
-            The option `-' by itself is equivalent but archaic.
+            The option "-" by itself is equivalent but archaic.
 
        <STRONG>-r</STRONG>   Print the terminal type to the standard error output.
 
 
        <STRONG>-r</STRONG>   Print the terminal type to the standard error output.
 
             program, and exits.
 
        <STRONG>-w</STRONG>   Resize  the  window  to  match  the  size deduced via
             program, and exits.
 
        <STRONG>-w</STRONG>   Resize  the  window  to  match  the  size deduced via
-            <STRONG>setupterm</STRONG>.   Normally  this  has  no  effect,  unless
+            <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>.  Normally this has no  effect,  unless
             <STRONG>setupterm</STRONG> is not able to detect the window size.
 
        The arguments for the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG> options may either be
             <STRONG>setupterm</STRONG> is not able to detect the window size.
 
        The arguments for the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG> options may either be
-       entered as actual characters or by using the  `hat'  nota-
-       tion,  i.e.,  control-h  may  be  specified  as  ``^H'' or
-       ``^h''.
+       entered as actual characters or by using the  "hat"  nota-
+       tion, i.e., control-h may be specified as "^H" or "^h".
 
 
+       If neither <STRONG>-c</STRONG> or <STRONG>-w</STRONG> is given, both options are assumed.
 
 
-</PRE>
-<H2>SETTING THE ENVIRONMENT</H2><PRE>
-       It is often desirable  to  enter  the  terminal  type  and
-       information  about  the  terminal's  capabilities into the
+
+</PRE><H2><a name="h2-SETTING-THE-ENVIRONMENT">SETTING THE ENVIRONMENT</a></H2><PRE>
+       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 <STRONG>-s</STRONG> option.
 
        When the <STRONG>-s</STRONG> option is specified, the commands to enter the
        shell's environment.  This is done using the <STRONG>-s</STRONG> option.
 
        When the <STRONG>-s</STRONG> option is specified, the commands to enter the
-       information  into  the  shell's environment are written to
-       the standard output.  If the <STRONG>SHELL</STRONG> environmental  variable
-       ends in ``csh'', the commands are for <STRONG>csh</STRONG>, otherwise, they
-       are for <STRONG>sh</STRONG>.  Note, the <STRONG>csh</STRONG>  commands  set  and  unset  the
-       shell  variable  <STRONG>noglob</STRONG>,  leaving it unset.  The following
-       line in the <STRONG>.login</STRONG> or <STRONG>.profile</STRONG> files will  initialize  the
+       information into the shell's environment  are  written  to
+       the  standard output.  If the <STRONG>SHELL</STRONG> environmental variable
+       ends in "csh", the commands are for <STRONG>csh</STRONG>,  otherwise,  they
+       are  for  <STRONG>sh</STRONG>.   Note,  the  <STRONG>csh</STRONG> commands set and unset the
+       shell variable <STRONG>noglob</STRONG>, leaving it  unset.   The  following
+       line  in  the <STRONG>.login</STRONG> or <STRONG>.profile</STRONG> files will initialize the
        environment correctly:
 
            eval `tset -s options ... `
 
 
        environment correctly:
 
            eval `tset -s options ... `
 
 
-</PRE>
-<H2>TERMINAL TYPE MAPPING</H2><PRE>
+</PRE><H2><a name="h2-TERMINAL-TYPE-MAPPING">TERMINAL TYPE MAPPING</a></H2><PRE>
        When the terminal is not hardwired into the system (or the
        current system information is incorrect) the terminal type
        When the terminal is not hardwired into the system (or the
        current system information is incorrect) the terminal type
-       derived  from the <EM>/etc/ttys</EM> file or the <STRONG>TERM</STRONG> environmental
-       variable is often something generic like <STRONG>network</STRONG>,  <STRONG>dialup</STRONG>,
-       or  <STRONG>unknown</STRONG>.   When <STRONG>tset</STRONG> is used in a startup script it is
-       often desirable to provide information about the  type  of
+       derived from the <EM>/etc/ttys</EM> file or the <STRONG>TERM</STRONG>  environmental
+       variable  is often something generic like <STRONG>network</STRONG>, <STRONG>dialup</STRONG>,
+       or <STRONG>unknown</STRONG>.  When <STRONG>tset</STRONG> is used in a startup script  it  is
+       often  desirable  to provide information about the type of
        terminal used on such ports.
 
        terminal used on such ports.
 
-       The  purpose  of  the <STRONG>-m</STRONG> option is to map from some set of
-       conditions to a terminal type, that is, to tell <STRONG>tset</STRONG>  ``If
-       I'm  on this port at a particular speed, guess that I'm on
-       that kind of terminal''.
+       The <STRONG>-m</STRONG> options maps from some set of conditions to a  ter-
+       minal  type, that is, to tell <STRONG>tset</STRONG> "If I'm on this port at
+       a particular speed, guess that I'm on that kind of  termi-
+       nal".
 
        The argument to the <STRONG>-m</STRONG> option consists of an optional port
        type, an optional operator, an optional baud rate specifi-
 
        The argument to the <STRONG>-m</STRONG> option consists of an optional port
        type, an optional operator, an optional baud rate specifi-
-       cation, an optional colon (``:'') character and a terminal
-       type.   The port type is a string (delimited by either the
+       cation,  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
        operator or the colon character).  The operator may be any
-       combination of ``&gt;'', ``&lt;'', ``@'', and ``!''; ``&gt;'' means
-       greater than, ``&lt;'' 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.
+       combination of "&gt;", "&lt;", "@", and "!"; "&gt;"  means  greater
+       than,  "&lt;"  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.
 
        If the terminal type is not specified on the command line,
 
        If the terminal type is not specified on the command line,
-       the  <STRONG>-m</STRONG> 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  applica-
+       the <STRONG>-m</STRONG> 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 applica-
        ble mapping is used.
 
        ble mapping is used.
 
-       For    example,    consider    the    following   mapping:
+       For   example,    consider    the    following    mapping:
        <STRONG>dialup&gt;9600:vt100</STRONG>.  The port type is dialup , the operator
        <STRONG>dialup&gt;9600:vt100</STRONG>.  The port type is dialup , the operator
-       is  &gt;, the baud rate specification is 9600, and the termi-
+       is &gt;, the baud rate specification is 9600, and the  termi-
        nal type is vt100.  The result of this mapping is to spec-
        ify that if the terminal type is <STRONG>dialup</STRONG>, and the baud rate
        nal type is vt100.  The result of this mapping is to spec-
        ify that if the terminal type is <STRONG>dialup</STRONG>, and the baud rate
-       is greater than 9600 baud, a terminal type of  <STRONG>vt100</STRONG>  will
+       is  greater  than 9600 baud, a terminal type of <STRONG>vt100</STRONG> will
        be used.
 
        If no baud rate is specified, the terminal type will match
        any baud rate.  If no port type is specified, the terminal
        be used.
 
        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,  <STRONG>-m</STRONG>
+       type  will  match  any  port  type.    For   example,   <STRONG>-m</STRONG>
        <STRONG>dialup:vt100</STRONG>  <STRONG>-m</STRONG>  <STRONG>:?xterm</STRONG>  will  cause  any  dialup  port,
        regardless of baud rate, to match the terminal type vt100,
        <STRONG>dialup:vt100</STRONG>  <STRONG>-m</STRONG>  <STRONG>:?xterm</STRONG>  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
+       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.
 
        are actually using an xterm terminal.
 
-       No  whitespace  characters  are permitted in the <STRONG>-m</STRONG> option
-       argument.  Also, to avoid problems  with  meta-characters,
-       it  is  suggested  that  the  entire <STRONG>-m</STRONG> option argument be
-       placed within single quote characters, and that <STRONG>csh</STRONG>  users
-       insert  a  backslash character (``\'') before any exclama-
-       tion marks (``!'').
-
-
-</PRE>
-<H2>HISTORY</H2><PRE>
-       The <STRONG>tset</STRONG> command appeared in BSD 3.0.  The <STRONG>ncurses</STRONG>  imple-
-       mentation  was lightly adapted from the 4.4BSD sources for
-       a terminfo environment by Eric S. Raymond &lt;esr@snark.thyr-
-       sus.com&gt;.
-
-
-</PRE>
-<H2>COMPATIBILITY</H2><PRE>
-       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><A HREF="getty.1.html">getty(1)</A></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 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).
+       No whitespace characters are permitted in  the  <STRONG>-m</STRONG>  option
+       argument.   Also,  to avoid problems with meta-characters,
+       it is suggested that the  entire  <STRONG>-m</STRONG>  option  argument  be
+       placed  within single quote characters, and that <STRONG>csh</STRONG> users
+       insert a backslash character ("\") before any  exclamation
+       marks ("!").
+
+
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+       A  <STRONG>reset</STRONG> command appeared in 2BSD (April 1979), written by
+       Kurt Shoens.  This program set the <EM>erase</EM> and <EM>kill</EM>  charac-
+       ters  to  <STRONG>^H</STRONG>  (backspace) and <STRONG>@</STRONG> respectively.  Mark Horton
+       improved that in 3BSD (October 1979), adding  <EM>intr</EM>,  <EM>quit</EM>,
+       <EM>start</EM>/<EM>stop</EM> and <EM>eof</EM> characters as well as changing the pro-
+       gram to avoid modifying any user settings.
+
+       Later in 4.1BSD (December 1980), Mark Horton added a  call
+       to  the  <STRONG>tset</STRONG>  program  using the <STRONG>-I</STRONG> and <STRONG>-Q</STRONG> options, i.e.,
+       using that to improve  the  terminal  modes.   With  those
+       options,  that  version  of  <STRONG>reset</STRONG> did not use the termcap
+       database.
+
+       A separate <STRONG>tset</STRONG> command was provided in 2BSD by Eric  All-
+       man.   While  the oldest published source (from 1979) pro-
+       vides both <STRONG>tset</STRONG> and <STRONG>reset</STRONG>, Allman's comments in  the  2BSD
+       source  code  indicate that he began work in October 1977,
+       continuing development over the next few years.
+
+       In September 1980, Eric Allman modified <STRONG>tset</STRONG>,  adding  the
+       code  from  the  existing  "reset"  feature  when <STRONG>tset</STRONG> was
+       invoked as <STRONG>reset</STRONG>.  Rather than simply copying the existing
+       program,  in  this  merged  version, <STRONG>tset</STRONG> used the termcap
+       database to do additional (re)initialization of the termi-
+       nal.  This version appeared in 4.1cBSD, late in 1982.
+
+       Other  developers  (e.g., Keith Bostic and Jim Bloom) con-
+       tinued to modify <STRONG>tset</STRONG> until 4.4BSD was released in 1993.
+
+       The <STRONG>ncurses</STRONG> implementation was lightly  adapted  from  the
+       4.4BSD  sources for a terminfo environment by Eric S. Ray-
+       mond &lt;esr@snark.thyrsus.com&gt;.
+
+
+</PRE><H2><a name="h2-COMPATIBILITY">COMPATIBILITY</a></H2><PRE>
+       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&amp;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 making <STRONG>tset</STRONG> obso-
+       lete.  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  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 <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 message 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
 
        There  was  an  undocumented  4.4BSD feature that invoking
-       tset via a link named `TSET` (or via any other name begin-
+       <STRONG>tset</STRONG> 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.
 
        ning  with  an  upper-case letter) set the terminal to use
        upper-case only.  This feature has been omitted.
 
        <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
        <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
+       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  recom-
+       mended  that such usage be fixed to explicitly specify the
        character.
 
        character.
 
-       As  of  4.4BSD,  executing <STRONG>tset</STRONG> as <STRONG>reset</STRONG> no longer implies
+       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>-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.
 
-
-</PRE>
-<H2>ENVIRONMENT</H2><PRE>
+       The <STRONG>-c</STRONG> and <STRONG>-w</STRONG> options are not found in earlier implementa-
+       tions.  However, 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 termi-
+           nal description.
+
+       Obtaining the window size from the terminal description is
+       common  to  both  implementations, but considered obsoles-
+       cent.  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 oper-
+       ating  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  window  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.
+
+
+</PRE><H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE>
        The <STRONG>tset</STRONG> command uses these environment variables:
 
        SHELL
        The <STRONG>tset</STRONG> command uses these environment variables:
 
        SHELL
 
        TERMCAP
             may denote the location of a termcap database.  If it
 
        TERMCAP
             may denote the location of a termcap database.  If it
-            is not an absolute pathname, e.g., begins with a `/',
+            is not an absolute pathname, e.g., begins with a "/",
             <STRONG>tset</STRONG> removes the variable from the environment before
             looking for the terminal description.
 
 
             <STRONG>tset</STRONG> removes the variable from the environment before
             looking for the terminal description.
 
 
-</PRE>
-<H2>FILES</H2><PRE>
+</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
        /etc/ttys
             system  port  name  to terminal type mapping database
             (BSD versions only).
        /etc/ttys
             system  port  name  to terminal type mapping database
             (BSD versions only).
             terminal capability database
 
 
             terminal capability database
 
 
-</PRE>
-<H2>SEE ALSO</H2><PRE>
-       <STRONG><A HREF="csh.1.html">csh(1)</A></STRONG>, <STRONG><A HREF="sh.1.html">sh(1)</A></STRONG>, <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>,  <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,  <STRONG><A HREF="tty.4.html">tty(4)</A></STRONG>,  ter-
-       <STRONG><A HREF="minfo.5.html">minfo(5)</A></STRONG>, <STRONG><A HREF="ttys.5.html">ttys(5)</A></STRONG>, <STRONG><A HREF="environ.7.html">environ(7)</A></STRONG>
+</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+       <STRONG>csh(1)</STRONG>,   <STRONG>sh(1)</STRONG>,   <STRONG>stty(1)</STRONG>,   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,   <STRONG>tty(4)</STRONG>,
+       <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG>
 
 
-       This describes <STRONG>ncurses</STRONG> version 5.7 (patch 20110108).
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20170114).
 
 
 
                                                                 <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
 </PRE>
 
 
 
                                                                 <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
 </PRE>
-<HR>
-<ADDRESS>
-Man(1) output converted with
-<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
-</ADDRESS>
+<div class="nav">
+<ul>
+<li><a href="#h2-NAME">NAME</a></li>
+<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
+<ul>
+<li><a href="#h3-tset---initialization">tset - initialization</a></li>
+<li><a href="#h3-reset---reinitialization">reset - reinitialization</a></li>
+</ul>
+</li>
+<li><a href="#h2-OPTIONS">OPTIONS</a></li>
+<li><a href="#h2-SETTING-THE-ENVIRONMENT">SETTING THE ENVIRONMENT</a></li>
+<li><a href="#h2-TERMINAL-TYPE-MAPPING">TERMINAL TYPE MAPPING</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
+<li><a href="#h2-COMPATIBILITY">COMPATIBILITY</a></li>
+<li><a href="#h2-ENVIRONMENT">ENVIRONMENT</a></li>
+<li><a href="#h2-FILES">FILES</a></li>
+<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
+</ul>
+</div>
 </BODY>
 </HTML>
 </BODY>
 </HTML>