X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Ftset.1.html;h=d76c27d8368511b40b423d6f19a438531b876e4f;hp=f12cf7e3c31248b48146b385c508719d2dba3c24;hb=f344f8539c1543f8cd65a5bb142dbaf23b9421d2;hpb=34d602f272c394e9a980438e636e1ce4d355f83b diff --git a/doc/html/man/tset.1.html b/doc/html/man/tset.1.html index f12cf7e3..d76c27d8 100644 --- a/doc/html/man/tset.1.html +++ b/doc/html/man/tset.1.html @@ -1,7 +1,6 @@ - + + + tset 1 -

tset 1

-
+

tset 1

-
 tset(1)                                                         tset(1)
 
 
 
 
-
-

NAME

+

NAME

        tset, reset - terminal initialization
 
 
-
-

SYNOPSIS

+

SYNOPSIS

        tset  [-IQVcqrsw] [-] [-e ch] [-i ch] [-k ch] [-m mapping]
        [terminal]
        reset [-IQVcqrsw] [-] [-e ch] [-i ch] [-k ch] [-m mapping]
        [terminal]
 
 
-
-

DESCRIPTION

-       Tset  initializes  terminals.   Tset  first determines the
-       type of terminal that you are using.   This  determination
-       is done as follows, using the first terminal type found.
+

DESCRIPTION

+
+

tset - initialization

+       This program initializes terminals.
+
+       First,  tset  retrieves the current terminal mode settings
+       for your terminal.  It does this by successively testing
+
+       o   the standard error,
+
+       o   standard output,
+
+       o   standard input and
+
+       o   ultimately "/dev/tty"
+
+       to obtain terminal settings.  Having retrieved these  set-
+       tings,  tset  remembers  which file descriptor to use when
+       updating settings.
+
+       Next, tset determines the type of terminal  that  you  are
+       using.   This  determination is done as follows, using the
+       first terminal type found.
 
        1. The terminal argument specified on the command line.
 
        2. The value of the TERM environmental variable.
 
-       3.  (BSD  systems only.) The terminal type associated with
-       the standard error output device in  the  /etc/ttys  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 /etc/ttys file.
+       (On System-V-like UNIXes and systems  using  that  conven-
        tion, getty does this job by setting TERM according to the
        type passed to it by /etc/inittab.)
 
        4. The default terminal type, "unknown".
 
-       If  the  terminal  type  was not specified on the command-
-       line, the -m option mappings are  then  applied  (see  the
+       If the terminal type was not  specified  on  the  command-
+       line,  the  -m  option  mappings are then applied (see the
        section  TERMINAL  TYPE  MAPPING  for  more  information).
-       Then, if the terminal type begins  with  a  question  mark
+       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 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 -c or -w option to select only the  window  sizing
-       versus  the  other  initialization.   If neither option is
-       given, both are assumed.
-
-       When invoked as reset, tset 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
-
-           <LF>reset<LF>
-
-       (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.
+       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,
+
+       o   if the "-w" option is enabled,  tset  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., LINES and COLUMNS variables specify this),
+           use this to set the operating system's notion  of  the
+           window size.
+
+       o   if  the  "-c" option is enabled, the backspace, inter-
+           rupt  and  line  kill  characters  (among  many  other
+           things) are set
+
+       o   unless  the  "-I"  option is enabled, the terminal and
+           tab initialization strings are sent  to  the  standard
+           error  output,  and  tset  waits one second (in case a
+           hardware reset was issued).
+
+       o   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.
+
+
+

reset - reinitialization

+       When  invoked  as  reset,  tset sets the terminal modes to
+       "sane" values:
+
+       o   sets cooked and echo modes,
 
+       o   turns off cbreak and raw modes,
+
+       o   turns on newline translation and
+
+       o   resets any unset special characters to  their  default
+           values
+
+       before  doing the terminal initialization described above.
+       Also,  rather  than  using  the  terminal   initialization
+       strings, it uses the terminal reset strings.
+
+       The reset command is useful after a program dies leaving a
+       terminal in an abnormal state:
+
+       o   you may have to type
+
+               <LF>reset<LF>
+
+           (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.
+
+       o   Also, the terminal will often not echo the command.
+
+
+

OPTIONS

        The options are as follows:
 
        -c   Set control characters and modes.
@@ -127,141 +175,180 @@
 
        -k   Set the line kill character to ch.
 
-       -m   Specify a mapping from a port  type  to  a  terminal.
+       -m   Specify  a  mapping  from  a port type to a terminal.
             See the section TERMINAL TYPE MAPPING for more infor-
             mation.
 
-       -Q   Do not display any values for  the  erase,  interrupt
+       -Q   Do  not  display  any values for the erase, interrupt
             and line kill characters.  Normally tset displays the
-            values for control characters which differ  from  the
+            values  for  control characters which differ from the
             system's default values.
 
-       -q   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.
+       -q   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.
 
        -r   Print the terminal type to the standard error output.
 
-       -s   Print  the  sequence  of shell commands to initialize
+       -s   Print the sequence of shell  commands  to  initialize
             the environment variable TERM to the standard output.
             See the section SETTING THE ENVIRONMENT for details.
 
        -V   reports the version of ncurses which was used in this
             program, and exits.
 
-       -w   Resize the window  to  match  the  size  deduced  via
-            setupterm.   Normally  this  has  no  effect,  unless
+       -w   Resize  the  window  to  match  the  size deduced via
+            setupterm(3x).  Normally this has no  effect,  unless
             setupterm is not able to detect the window size.
 
        The arguments for the -e, -i, and -k options may either be
-       entered  as  actual characters or by using the `hat' nota-
+       entered as actual characters or by using the  "hat"  nota-
        tion, i.e., control-h may be specified as "^H" or "^h".
 
+       If neither -c or -w is given, both options are assumed.
 
-
-

SETTING THE ENVIRONMENT

-       It is often desirable  to  enter  the  terminal  type  and
-       information  about  the  terminal's  capabilities into the
+
+

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 -s option.
 
        When the -s option is specified, the commands to enter the
-       information  into  the  shell's environment are written to
-       the standard output.  If the SHELL environmental  variable
-       ends  in  "csh", the commands are for csh, otherwise, they
-       are for sh.  Note, the csh  commands  set  and  unset  the
-       shell  variable  noglob,  leaving it unset.  The following
-       line in the .login or .profile files will  initialize  the
+       information into the shell's environment  are  written  to
+       the  standard output.  If the SHELL environmental variable
+       ends in "csh", the commands are for csh,  otherwise,  they
+       are  for  sh.   Note,  the  csh commands set and unset the
+       shell variable noglob, leaving it  unset.   The  following
+       line  in  the .login or .profile files will initialize the
        environment correctly:
 
            eval `tset -s options ... `
 
 
-
-

TERMINAL TYPE MAPPING

+

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 /etc/ttys file or the TERM environmental
-       variable is often something generic like network,  dialup,
-       or  unknown.   When tset is used in a startup script it is
-       often desirable to provide information about the  type  of
+       derived from the /etc/ttys file or the TERM  environmental
+       variable  is often something generic like network, dialup,
+       or unknown.  When tset is used in a startup script  it  is
+       often  desirable  to provide information about the type of
        terminal used on such ports.
 
-       The  purpose  of  the -m option is to map from some set of
-       conditions to a terminal type, that is, to tell  tset  "If
-       I'm  on this port at a particular speed, guess that I'm on
-       that kind of terminal".
+       The -m options maps from some set of conditions to a  ter-
+       minal  type, that is, to tell tset "If I'm on this port at
+       a particular speed, guess that I'm on that kind of  termi-
+       nal".
 
        The argument to the -m 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
-       combination  of  ">", "<", "@", and "!"; ">" means greater
-       than, "<" means less than, "@"  means  equal  to  and  "!"
+       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
+       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,
-       the  -m 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 -m 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.
 
-       For    example,    consider    the    following   mapping:
+       For   example,    consider    the    following    mapping:
        dialup>9600:vt100.  The port type is dialup , the operator
-       is  >, the baud rate specification is 9600, and the termi-
+       is >, 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 dialup, and the baud rate
-       is greater than 9600 baud, a terminal type of  vt100  will
+       is  greater  than 9600 baud, a terminal type of vt100 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
-       type   will   match   any  port  type.   For  example,  -m
+       type  will  match  any  port  type.    For   example,   -m
        dialup:vt100  -m  :?xterm  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.
 
-       No  whitespace  characters  are permitted in the -m option
-       argument.  Also, to avoid problems  with  meta-characters,
-       it  is  suggested  that  the  entire -m option argument be
-       placed within single quote characters, and that csh  users
-       insert  a backslash character ("\") before any exclamation
+       No whitespace characters are permitted in  the  -m  option
+       argument.   Also,  to avoid problems with meta-characters,
+       it is suggested that the  entire  -m  option  argument  be
+       placed  within single quote characters, and that csh users
+       insert a backslash character ("\") before any  exclamation
        marks ("!").
 
 
-
-

HISTORY

-       The tset command appeared in BSD 3.0.  The ncurses  imple-
-       mentation  was lightly adapted from the 4.4BSD sources for
-       a terminfo environment by Eric S. Raymond <esr@snark.thyr-
-       sus.com>.
-
-
-
-

COMPATIBILITY

-       The  tset  utility has been provided for backward-compati-
-       bility with BSD environments (under  most  modern  UNIXes,
-       /etc/inittab  and  getty(1) can set TERM appropriately for
-       each dial-up line; this  obviates  what  was  tset's  most
-       important  use).   This implementation behaves like 4.4BSD
-       tset, with a few exceptions specified here.
-
-       The -S option of BSD tset no longer works;  it  prints  an
-       error message to stderr and dies.  The -s option only sets
-       TERM, not TERMCAP.  Both of these changes are because  the
-       TERMCAP  variable  is  no longer supported under terminfo-
-       based ncurses, which makes tset -S useless (we made it die
-       noisily rather than silently induce lossage).
+

HISTORY

+       A  reset command appeared in 2BSD (April 1979), written by
+       Kurt Shoens.  This program set the erase and kill  charac-
+       ters  to  ^H  (backspace) and @ respectively.  Mark Horton
+       improved that in 3BSD (October 1979), adding  intr,  quit,
+       start/stop and eof 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  tset  program  using the -I and -Q options, i.e.,
+       using that to improve  the  terminal  modes.   With  those
+       options,  that  version  of  reset did not use the termcap
+       database.
+
+       A separate tset command was provided in 2BSD by Eric  All-
+       man.   While  the oldest published source (from 1979) pro-
+       vides both tset and reset, 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 tset,  adding  the
+       code  from  the  existing  "reset"  feature  when tset was
+       invoked as reset.  Rather than simply copying the existing
+       program,  in  this  merged  version, tset 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 tset until 4.4BSD was released in 1993.
+
+       The ncurses implementation was lightly  adapted  from  the
+       4.4BSD  sources for a terminfo environment by Eric S. Ray-
+       mond <esr@snark.thyrsus.com>.
+
+
+

COMPATIBILITY

+       Neither IEEE Std 1003.1/The Open Group Base Specifications
+       Issue 7 (POSIX.1-2008) nor X/Open Curses Issue 7 documents
+       tset or reset.
+
+       The AT&T tput utility (AIX,  HPUX,  Solaris)  incorporated
+       the  terminal-mode  manipulation  as well as termcap-based
+       features such as  resetting  tabstops  from  tset  in  BSD
+       (4.1c), presumably with the intention of making tset obso-
+       lete.  However, each of those systems still provides tset.
+       In  fact,  the  commonly-used  reset  utility is always an
+       alias for tset.
+
+       The tset utility provides for backward-compatibility  with
+       BSD  environments  (under most modern UNIXes, /etc/inittab
+       and getty(1) can set TERM appropriately for  each  dial-up
+       line;  this  obviates what was tset's most important use).
+       This implementation behaves like 4.4BSD tset, with  a  few
+       exceptions specified here.
+
+       A  few  options are different because the TERMCAP variable
+       is no longer supported under terminfo-based ncurses:
+
+       o   The -S option of BSD tset no longer works;  it  prints
+           an error message to the standard error and dies.
+
+       o   The -s option only sets TERM, not TERMCAP.
 
        There  was  an  undocumented  4.4BSD feature that invoking
-       tset via a link named `TSET` (or via any other name begin-
+       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.
 
@@ -271,23 +358,54 @@
        -d, and -p 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 -m option instead.   The  -n
-       option  remains, but has no effect.  The -adnp options are
-       therefore omitted from the usage summary above.
-
-       It is still permissible to specify  the  -e,  -i,  and  -k
-       options  without arguments, although it is strongly recom-
-       mended that such usage be fixed to explicitly specify  the
+       options be changed to use the -m option instead.  The  -a,
+       -d,  and  -p  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 tset provided  a
+       -n  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 -e, -i, and -k
+       options without arguments, although it is strongly  recom-
+       mended  that such usage be fixed to explicitly specify the
        character.
 
-       As  of  4.4BSD,  executing tset as reset no longer implies
+       As of 4.4BSD, executing tset as reset  no  longer  implies
        the -Q option.  Also, the interaction between the - option
        and the terminal argument in some historic implementations
        of tset has been removed.
 
-
-
-

ENVIRONMENT

+       The -c and -w options are not found in earlier implementa-
+       tions.  However, a different  window  size-change  feature
+       was provided in 4.4BSD.
+
+       o   In  4.4BSD, tset uses the window size from the termcap
+           description to set the window size if tset is not able
+           to obtain the window size from the operating system.
+
+       o   In   ncurses,  tset  obtains  the  window  size  using
+           setupterm, which may be from the operating system, the
+           LINES  and COLUMNS 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 setupterm would still fail).  For that
+       reason, the LINES and COLUMNS 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 resize(1) program.
+
+
+

ENVIRONMENT

        The tset command uses these environment variables:
 
        SHELL
@@ -299,13 +417,12 @@
 
        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 "/",
             tset removes the variable from the environment before
             looking for the terminal description.
 
 
-
-

FILES

+

FILES

        /etc/ttys
             system  port  name  to terminal type mapping database
             (BSD versions only).
@@ -314,21 +431,35 @@
             terminal capability database
 
 
-
-

SEE ALSO

+

SEE ALSO

        csh(1),   sh(1),   stty(1),   curs_terminfo(3x),   tty(4),
        terminfo(5), ttys(5), environ(7)
 
-       This describes ncurses version 5.9 (patch 20140524).
+       This describes ncurses version 6.0 (patch 20170114).
 
 
 
                                                                 tset(1)
 
-
-
-Man(1) output converted with -man2html -
+