[BSDI Home Page] MAN tput(1)

Index Page and Help

Type of Search:
Man Page Lookup
Apropos Keyword Search (all sections)
Man Page or Keyword Search:

This data is part of a licensed program from BERKELEY SOFTWARE DESIGN, INC. Portions are copyrighted by BSDI, The Regents of the University of California, Massachusetts Institute of Technology, Free Software Foundation, and others.

tput(1)                                                               tput(1)

       tput, reset - initialize a terminal or query terminfo database

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

       The tput utility uses the terminfo database to make the values of ter-
       minal-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.  tput outputs  a  string  if  the
       attribute  (capability  name)  is of type string, or an integer if the
       attribute is of type integer.  If the attribute is  of  type  boolean,
       tput  simply  sets  the  exit code (0 for TRUE if the terminal has the
       capability, 1 for FALSE if it  does  not),  and  produces  no  output.
       Before using a value returned on standard output, the user should test
       the exit code [$?, 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(1).

       -Ttype indicates the type of terminal.  Normally this option is unnec-
              essary, because the default is taken from the environment vari-
              able TERM.  If -T is specified, then the shell variables  LINES
              and  COLUMNS  will be ignored,and the operating system will not
              be queried for the actual screen size.

              indicates the attribute from the terminfo database.  When term-
              cap  support is compiled in, the termcap name for the attribute
              is also accepted.

       parms  If the attribute is a string that takes parameters,  the  argu-
              ments  parms  will  be  instantiated  into the string.  An all-
              numeric argument will be passed to the attribute as a number.

              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 param-
              eters are given for the attribute, tput writes the string with-
              out 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  cap-
              name is allowed per line.  The -S option changes the meaning of
              the 0 and 1 boolean and string exit codes (see the  EXIT  CODES

              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  (is1,  is2, is3, if, iprog), (2) any delays (e.g., new-
              line) specified in the entry will be set in the tty driver, (3)
              tabs expansion will be turned on or off according to the speci-
              fication in the entry, and (4) if tabs are not expanded,  stan-
              dard  tabs  will be set (every 8 spaces).  If an entry does not
              contain the information needed for any of the four above activ-
              ities, 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.  Other-
              wise, reset acts identically to init.

              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.

       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" cur-
            sor 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 ter-
            minal.  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

       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

       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 termi-
            nated by an exclamation mark (!) on a line by itself.

              compiled terminal description database

              curses(3X) header file

              terminfo header file

              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)

       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 cap-

                   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 stan-
                   dard output); a value of  1  is  set  if  capname  is  not
                   defined  for  this  terminal  type  (nothing is written to
                   standard output).

                   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.

       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(1)  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

       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.

       clear(1), stty(1), tabs(1), terminfo(5).