Provided by: ncurses-bin_6.0+20160213-1ubuntu1_amd64 bug

NAME

       tput, reset - initialize a terminal or query terminfo database

SYNOPSIS

       tput [-Ttype] capname [parms ... ]
       tput [-Ttype] init
       tput [-Ttype] reset
       tput [-Ttype] longname
       tput -S  <<
       tput -V

DESCRIPTION

       The  tput  utility  uses  the  terminfo  database to make the values of terminal-dependent
       capabilities and information available to the shell (see sh(1)), to  initialize  or  reset
       the  terminal, or return the long name of the requested terminal type.  The result depends
       upon the capability's type:

              string
                   tput writes the string  to  the  standard  output.   No  trailing  newline  is
                   supplied.

              integer
                   tput writes the decimal value to the standard output, with a trailing newline.

              boolean
                   tput simply sets the exit code (0 for TRUE if the terminal has the capability,
                   1 for FALSE if it does not), and writes nothing to the standard output.

       Before using a value returned on the standard output, the application should test the exit
       code  (e.g.,  $?,  see  sh(1))  to  be  sure it is 0.  (See the EXIT CODES and DIAGNOSTICS
       sections.)  For a complete list of capabilities and the capname associated with each,  see
       terminfo(5).

       -Ttype indicates  the  type of terminal.  Normally this option is unnecessary, because the
              default is taken from the environment variable TERM.  If -T is specified, then  the
              shell variables LINES and COLUMNS will also be ignored.

       capname
              indicates  the  capability  from  the  terminfo  database.  When termcap support is
              compiled in, the termcap name for the capability is also accepted.

       parms  If the capability is a string that takes parameters, the arguments  parms  will  be
              instantiated into the string.

              Most  parameters  are  numbers.   Only  a  few terminfo capabilities require string
              parameters; tput uses a table to decide which to pass as  strings.   Normally  tput
              uses  tparm  (3X)  to perform the substitution.  If no parameters are given for the
              capability, tput writes the string without performing the substitution.

       -S     allows more than one capability per invocation of tput.  The capabilities  must  be
              passed  to  tput  from  the  standard  input  instead of from the command line (see
              example).  Only one capname is allowed per line.  The -S option changes the meaning
              of the 0 and 1 boolean and string exit codes (see the EXIT CODES section).

              Again,  tput  uses  a  table  and the presence of parameters in its input to decide
              whether to use tparm (3X), and how to interpret the parameters.

       -V     reports the version of ncurses which was used in this program, and exits.

       init   If the terminfo database is present and an entry for  the  user's  terminal  exists
              (see -Ttype, above), the following will occur:

              (1)    if present, the terminal's initialization strings will be output as detailed
                     in the terminfo(5) section on Tabs and Initialization,

              (2)    any delays (e.g., newline) specified in the entry will be  set  in  the  tty
                     driver,

              (3)    tabs  expansion  will  be turned on or off according to the specification in
                     the entry, and

              (4)    if tabs are not expanded, standard tabs will be set (every 8 spaces).

              If an entry does not contain the information needed  for  any  of  the  four  above
              activities, that activity will silently be skipped.

       reset  Instead of putting out initialization strings, the terminal's reset strings will be
              output if present (rs1, rs2, rs3, rf).  If the reset strings are not  present,  but
              initialization  strings are, the initialization strings will be output.  Otherwise,
              reset acts identically to init.

       longname
              If the terminfo database is present and an entry for  the  user's  terminal  exists
              (see  -Ttype  above), then the long name of the terminal will be put out.  The long
              name is the last name in the first  line  of  the  terminal's  description  in  the
              terminfo database [see term(5)].

       If  tput  is  invoked  by a link named reset, this has the same effect as tput reset.  See
       tset for comparison, which has similar behavior.

EXAMPLES

       tput init
            Initialize the terminal according to  the  type  of  terminal  in  the  environmental
            variable  TERM.   This  command  should  be included in everyone's .profile after the
            environmental variable TERM has been  exported,  as  illustrated  on  the  profile(5)
            manual page.

       tput -T5620 reset
            Reset  an  AT&T  5620  terminal, overriding the type of terminal in the environmental
            variable TERM.

       tput cup 0 0
            Send the sequence to move the cursor to row 0, column 0 (the upper left corner of the
            screen, usually known as the "home" cursor position).

       tput clear
            Echo the clear-screen sequence for the current terminal.

       tput cols
            Print the number of columns for the current terminal.

       tput -T450 cols
            Print the number of columns for the 450 terminal.

       bold=`tput smso` offbold=`tput rmso`
            Set  the  shell variables bold, to begin stand-out mode sequence, and offbold, to end
            standout mode sequence, for the current  terminal.   This  might  be  followed  by  a
            prompt: echo "${bold}Please type in your name: ${offbold}\c"

       tput hc
            Set exit code to indicate if the current terminal is a hard copy terminal.

       tput cup 23 4
            Send the sequence to move the cursor to row 23, column 4.

       tput cup
            Send the terminfo string for cursor-movement, with no parameters substituted.

       tput longname
            Print  the long name from the terminfo database for the type of terminal specified in
            the environmental variable TERM.

            tput -S <<!
            > clear
            > cup 10 10
            > bold
            > !

            This example shows tput processing several capabilities in one invocation.  It clears
            the  screen,  moves  the  cursor  to position 10, 10 and turns on bold (extra bright)
            mode.  The list is terminated by an exclamation mark (!) on a line by itself.

FILES

       /etc/terminfo
              compiled terminal description database

       /usr/share/tabset/*
              tab settings for some terminals, in a  format  appropriate  to  be  output  to  the
              terminal  (escape  sequences  that set margins and tabs); for more information, see
              the "Tabs and Initialization" section of terminfo(5)

EXIT CODES

       If the -S option is used, tput checks for errors from each line, and  if  any  errors  are
       found, will set the exit code to 4 plus the number of lines with errors.  If no errors are
       found, the exit code is 0.  No indication of which line failed can be given so exit code 1
       will  never  appear.  Exit codes 2, 3, and 4 retain their usual interpretation.  If the -S
       option is not used, the exit code depends on the type of capname:

            boolean
                   a value of 0 is set for TRUE and 1 for FALSE.

            string a value of 0 is set if the capname is defined  for  this  terminal  type  (the
                   value  of  capname  is  returned  on  standard output); a value of 1 is set if
                   capname is not defined for this terminal type (nothing is written to  standard
                   output).

            integer
                   a  value  of  0  is  always  set,  whether  or not capname is defined for this
                   terminal type.  To determine if capname is defined for this terminal type, the
                   user must test the value written to standard output.  A value of -1 means that
                   capname is not defined for this terminal type.

            other  reset or init may fail to find their respective files.  In that case, the exit
                   code is set to 4 + errno.

       Any other exit code indicates an error; see the DIAGNOSTICS section.

DIAGNOSTICS

       tput prints the following error messages and sets the corresponding exit codes.

       exit code   error message
       ─────────────────────────────────────────────────────────────────────
       0           (capname  is a numeric variable that is not specified in
                   the terminfo(5) database for this  terminal  type,  e.g.
                   tput -T450 lines and tput -T2621 xmc)
       1           no error message is printed, see the EXIT CODES section.
       2           usage error
       3           unknown terminal type or no terminfo database
       4           unknown terminfo capability capname
       >4          error occurred in -S
       ─────────────────────────────────────────────────────────────────────

PORTABILITY

       The  longname  and  -S  options,  and  the parameter-substitution features used in the cup
       example, are not supported in BSD curses or in AT&T/USL curses before SVr4.

       X/Open documents only the operands for clear, init and  reset.   In  this  implementation,
       clear is part of the capname support.  Other implementations of tput on SVr4-based systems
       such as Solaris, IRIX64 and HPUX as well as others such as AIX and Tru64  provide  support
       for capname operands.

       A  few  platforms  such as FreeBSD and NetBSD recognize termcap names rather than terminfo
       capability names in their respective tput commands.

       Most implementations which provide support for capname operands use the tparm function  to
       expand  parameters  in  it.   That  function  expects  a  mixture  of  numeric  and string
       parameters, requiring tput to know which type to use.  This implementation uses a table to
       determine  that  for  the  standard  capname operands, and an internal library function to
       analyze nonstandard capname operands.  Other implementations  may  simply  guess  that  an
       operand containing only digits is intended to be a number.

SEE ALSO

       clear(1), stty(1), tabs(1), terminfo(5), termcap(3NCURSES).

       This describes ncurses version 6.0 (patch 20160213).

                                                                                          tput(1)