]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - doc/html/man/tput.1.html
ncurses 6.0 - patch 20161119
[ncurses.git] / doc / html / man / tput.1.html
index 606f7770a45968a2b7e4ae01f7a0b86b851540d6..bbc22a4eeed642b453410eeb6c2c370ad3f71e57 100644 (file)
+<!-- 
+  * t
+  ****************************************************************************
+  * Copyright (c) 1998-2012,2016 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            *
+  * "Software"), to deal in the Software without restriction, including      *
+  * without limitation the rights to use, copy, modify, merge, publish,      *
+  * distribute, distribute with modifications, sublicense, and/or sell       *
+  * copies of the Software, and to permit persons to whom the Software is    *
+  * furnished to do so, subject to the following conditions:                 *
+  *                                                                          *
+  * The above copyright notice and this permission notice shall be included  *
+  * in all copies or substantial portions of the Software.                   *
+  *                                                                          *
+  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
+  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
+  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
+  * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
+  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
+  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
+  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
+  *                                                                          *
+  * Except as contained in this notice, the name(s) of the above copyright   *
+  * holders shall not be used in advertising or otherwise to promote the     *
+  * sale, use or other dealings in this Software without prior written       *
+  * authorization.                                                           *
+  ****************************************************************************
+  * @Id: tput.1,v 1.46 2016/10/22 19:57:25 tom Exp @
+-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <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>tput 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>
 <BODY>
+<H1 class="no-header">tput 1</H1>
 <PRE>
 <PRE>
-<!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>                                                         <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
 
 
-</PRE>
-<H2>NAME</H2><PRE>
-       <B>tput</B> - initialize a terminal or query terminfo database
 
 
 
 
-</PRE>
-<H2>SYNOPSIS</H2><PRE>
-       <B>tput</B> [<B>-T</B><I>type</I>] <I>capname</I> [<I>parms</I> ... ]
-       <B>tput</B> [<B>-T</B><I>type</I>] <B>init</B>
-       <B>tput</B> [<B>-T</B><I>type</I>] <B>reset</B>
-       <B>tput</B> [<B>-T</B><I>type</I>] <B>longname</B>
-       <B>tput</B> <B>-S</B>  <B>&lt;&lt;</B>
 
 
+</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
+       <STRONG>tput</STRONG>,  <STRONG>reset</STRONG>  -  initialize  a  terminal or query terminfo
+       database
 
 
-</PRE>
-<H2>DESCRIPTION</H2><PRE>
-       The  <B>tput</B>  utility  uses the <B>terminfo</B> database to make the
-       values of terminal-dependent capabilities and  information
-       available to the shell (see <B><A HREF="sh.1.html">sh(1)</A></B>), to initialize or reset
-       the terminal, or return the long  name  of  the  requested
-       terminal  type.   <B>tput</B>  outputs  a string if the attribute
-       (<I>cap</I>ability <I>name</I>) is of type string, or an integer if  the
-       attribute is of type integer.  If the attribute is of type
-       boolean, <B>tput</B> simply sets the exit code (<B>0</B> for TRUE if the
-       terminal  has the capability, <B>1</B> 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 [<B>$?</B>,
-       see <B><A HREF="sh.1.html">sh(1)</A></B>] to be sure it is <B>0</B>.  (See the  <B>EXIT</B>  <B>CODES</B>  and
-       <B>DIAGNOSTICS</B>  sections.)   For a complete list of capabili-
-       ties and  the  <I>capname</I>  associated  with  each,  see  <B>ter-</B>
-       <B><A HREF="minfo.5.html">minfo(5)</A></B>.
-
-       <B>-T</B><I>type</I> indicates  the  <I>type</I>  of  terminal.   Normally this
+
+</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
+       <STRONG>tput</STRONG> [<STRONG>-T</STRONG><EM>type</EM>] <EM>capname</EM> [<EM>parameters</EM>]
+       <STRONG>tput</STRONG> [<STRONG>-T</STRONG><EM>type</EM>] <STRONG>clear</STRONG>
+       <STRONG>tput</STRONG> [<STRONG>-T</STRONG><EM>type</EM>] <STRONG>init</STRONG>
+       <STRONG>tput</STRONG> [<STRONG>-T</STRONG><EM>type</EM>] <STRONG>reset</STRONG>
+       <STRONG>tput</STRONG> [<STRONG>-T</STRONG><EM>type</EM>] <STRONG>longname</STRONG>
+       <STRONG>tput</STRONG> <STRONG>-S</STRONG>  <STRONG>&lt;&lt;</STRONG>
+       <STRONG>tput</STRONG> <STRONG>-V</STRONG>
+
+
+</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+       The <STRONG>tput</STRONG> utility uses the <STRONG>terminfo</STRONG> database  to  make  the
+       values  of terminal-dependent capabilities and information
+       available to the shell (see <STRONG>sh(1)</STRONG>), 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
+               <STRONG>tput</STRONG> writes the string to the standard output.  No
+               trailing newline is supplied.
+
+          integer
+               <STRONG>tput</STRONG> writes the decimal value to the standard out-
+               put, with a trailing newline.
+
+          boolean
+               <STRONG>tput</STRONG>  simply sets the exit code (<STRONG>0</STRONG> for TRUE if the
+               terminal has the capability, <STRONG>1</STRONG>  for  FALSE  if  it
+               does not), and writes nothing to the standard out-
+               put.
+
+       Before using a value returned on the standard output,  the
+       application  should  test  the  exit  code  (e.g., <STRONG>$?</STRONG>, see
+       <STRONG>sh(1)</STRONG>) to be sure it is <STRONG>0</STRONG>.  (See the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> and  <STRONG>DIAG-</STRONG>
+       <STRONG>NOSTICS</STRONG>  sections.)   For  a complete list of capabilities
+       and the <EM>capname</EM> associated with each, see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
+
+
+</PRE><H3><a name="h3-Options">Options</a></H3><PRE>
+       <STRONG>-T</STRONG><EM>type</EM> indicates the  <EM>type</EM>  of  terminal.   Normally  this
               option is unnecessary, because the default is taken
               option is unnecessary, because the default is taken
-              from the environment variable <B>TERM</B>.  If <B>-T</B> is spec-
-              ified, then the shell variables <B>LINES</B>  and  <B>COLUMNS</B>
-              will  be  ignored,and the operating system will not
-              be queried for the actual screen size.
-
-       <I>capname</I>
-              indicates the attribute from the <B>terminfo</B> database.
-              When  <B>termcap</B>  support  is compiled in, the <B>termcap</B>
-              name for the attribute is also accepted.
-
-       <I>parms</I>  If the attribute is a string that takes parameters,
-              the  arguments  <I>parms</I> will be instantiated into the
-              string.  An all numeric argument will be passed  to
-              the attribute as a number.
-
-       <B>-S</B>     allows  more  than one capability per invocation of
-              <B>tput</B>.  The capabilities must be passed to <B>tput</B> from
+              from the environment variable <STRONG>TERM</STRONG>.  If <STRONG>-T</STRONG> is spec-
+              ified,  then  the shell variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG>
+              will also be ignored.
+
+       <STRONG>-S</STRONG>     allows more than one capability per  invocation  of
+              <STRONG>tput</STRONG>.  The capabilities must be passed to <STRONG>tput</STRONG> from
               the standard input instead of from the command line
               the standard input instead of from the command line
-              (see example).  Only one  <I>capname</I>  is  allowed  per
-              line.   The  <B>-S</B> option changes the meaning of the <B>0</B>
-              and <B>1</B> boolean and string exit codes (see  the  EXIT
+              (see  example).   Only  one  <EM>capname</EM> is allowed per
+              line.  The <STRONG>-S</STRONG> option changes the meaning of  the  <STRONG>0</STRONG>
+              and  <STRONG>1</STRONG>  boolean and string exit codes (see the EXIT
               CODES section).
 
               CODES section).
 
-       <B>init</B>   If  the  <B>terminfo</B>  database is present and an entry
-              for the user's terminal exists (see <B>-T</B><I>type</I>, above),
-              the  following will occur: (1) if present, the ter-
-              minal's initialization strings will be output (<B>is1</B>,
-              <B>is2</B>,  <B>is3</B>,  <B>if</B>,  <B>iprog</B>), (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 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.
-
-       <B>reset</B>  Instead  of putting out initialization strings, the
+              Again, <STRONG>tput</STRONG> uses a table and the presence of param-
+              eters  in  its  input  to  decide  whether  to  use
+              <STRONG><A HREF="tparm.3x.html">tparm(3x)</A></STRONG>, and how to interpret the parameters.
+
+       <STRONG>-V</STRONG>     reports the version of ncurses which  was  used  in
+              this program, and exits.
+
+
+</PRE><H3><a name="h3-Commands">Commands</a></H3><PRE>
+       <EM>capname</EM>
+              indicates  the  capability  from the <STRONG>terminfo</STRONG> data-
+              base.  When <STRONG>termcap</STRONG> support  is  compiled  in,  the
+              <STRONG>termcap</STRONG> name for the capability is also accepted.
+
+              If  the  capability  is a string that takes parame-
+              ters, the arguments following the  capability  will
+              be used as parameters for the string.
+
+              Most  parameters  are numbers.  Only a few terminfo
+              capabilities require string parameters; <STRONG>tput</STRONG> uses a
+              table to decide which to pass as strings.  Normally
+              <STRONG>tput</STRONG> uses <STRONG><A HREF="tparm.3x.html">tparm(3x)</A></STRONG> to  perform  the  substitution.
+              If no parameters are given for the capability, <STRONG>tput</STRONG>
+              writes the string without performing the  substitu-
+              tion.
+
+       <STRONG>init</STRONG>   If  the  <STRONG>terminfo</STRONG>  database is present and an entry
+              for the user's terminal exists (see <STRONG>-T</STRONG><EM>type</EM>, above),
+              the following will occur:
+
+              (1)  if   present,  the  terminal's  initialization
+                   strings will be output as detailed in the <STRONG>ter-</STRONG>
+                   <STRONG><A HREF="terminfo.5.html">minfo(5)</A></STRONG> section on <EM>Tabs</EM> <EM>and</EM> <EM>Initialization</EM>,
+
+              (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 these  activities,  that  activity  will
+              silently be skipped.
+
+       <STRONG>reset</STRONG>  Instead  of putting out initialization strings, the
               terminal's reset strings will be output if  present
               terminal's reset strings will be output if  present
-              (<B>rs1</B>,  <B>rs2</B>, <B>rs3</B>, <B>rf</B>).  If the reset strings are not
+              (<STRONG>rs1</STRONG>,  <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>, <STRONG>rf</STRONG>).  If the reset strings are not
               present, but initialization strings are,  the  ini-
               tialization  strings  will  be  output.  Otherwise,
               present, but initialization strings are,  the  ini-
               tialization  strings  will  be  output.  Otherwise,
-              <B>reset</B> acts identically to <B>init</B>.
+              <STRONG>reset</STRONG> acts identically to <STRONG>init</STRONG>.
 
 
-       <B>longname</B>
-              If the <B>terminfo</B> database is present  and  an  entry
-              for  the user's terminal exists (see <B>-T</B><I>type</I> above),
+       <STRONG>longname</STRONG>
+              If the <STRONG>terminfo</STRONG> database is present  and  an  entry
+              for  the user's terminal exists (see <STRONG>-T</STRONG><EM>type</EM> above),
               then the long name of the terminal will be put out.
               The long name is the last name in the first line of
               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 <B>terminfo</B> database
-              [see <B><A HREF="term.5.html">term(5)</A></B>].
+              the terminal's description in the <STRONG>terminfo</STRONG> database
+              [see <STRONG><A HREF="term.5.html">term(5)</A></STRONG>].
 
 
 
 
-</PRE>
-<H2>EXAMPLES</H2><PRE>
-       <B>tput</B> <B>init</B>
+</PRE><H3><a name="h3-Aliases">Aliases</a></H3><PRE>
+       <STRONG>tput</STRONG> handles the <STRONG>clear</STRONG>, <STRONG>init</STRONG> and <STRONG>reset</STRONG> commands specially:
+       it allows for the possibility that it is invoked by a link
+       with those names.
+
+       If  <STRONG>tput</STRONG>  is  invoked  by a link named <STRONG>reset</STRONG>, this has the
+       same effect as  <STRONG>tput</STRONG>  <STRONG>reset</STRONG>.   The  <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>  utility  also
+       treats a link named <STRONG>reset</STRONG> specially.
+
+       Before  ncurses 6.1, the two utilities were different from
+       each other:
+
+       <STRONG>o</STRONG>   <STRONG>tset</STRONG> utility reset  the  terminal  modes  and  special
+           characters (not done with <STRONG>tput</STRONG>).
+
+       <STRONG>o</STRONG>   On the other hand, <STRONG>tset</STRONG>'s repertoire of terminal capa-
+           bilities for resetting the terminal was more  limited,
+           i.e., only <STRONG>reset_1string</STRONG>, <STRONG>reset_2string</STRONG> and <STRONG>reset_file</STRONG>
+           in contrast to the tab-stops and margins which are set
+           by this utility.
+
+       <STRONG>o</STRONG>   The  <STRONG>reset</STRONG>  program  is  usually  an  alias  for <STRONG>tset</STRONG>,
+           because of this  difference  with  resetting  terminal
+           modes and special characters.
+
+       If <STRONG>tput</STRONG> is invoked by a link named <STRONG>init</STRONG>, this has the same
+       effect as <STRONG>tput</STRONG> <STRONG>init</STRONG>.  Again, you are less  likely  to  use
+       that  link  because  another program named <STRONG>init</STRONG> has a more
+       well-established use.
+
+
+</PRE><H2><a name="h2-EXAMPLES">EXAMPLES</a></H2><PRE>
+       <STRONG>tput</STRONG> <STRONG>init</STRONG>
             Initialize the terminal according to the type of ter-
             Initialize the terminal according to the type of ter-
-            minal in the environmental variable <B>TERM</B>.  This  com-
-            mand  should be included in everyone's .profile after
-            the environmental variable <B>TERM</B> has been exported, as
-            illustrated on the <B><A HREF="profile.4.html">profile(4)</A></B> manual page.
-
-       <B>tput</B> <B>-T5620</B> <B>reset</B>
-            Reset  an  AT&amp;T 5620 terminal, overriding the type of
-            terminal in the environmental variable <B>TERM</B>.
-
-       <B>tput</B> <B>cup</B> <B>0</B> <B>0</B>
-            Send the sequence to move the cursor to row <B>0</B>, column
-            <B>0</B> (the upper left corner of the screen, usually known
+            minal  in the environmental variable <STRONG>TERM</STRONG>.  This com-
+            mand should be included in everyone's .profile  after
+            the environmental variable <STRONG>TERM</STRONG> has been exported, as
+            illustrated on the <STRONG>profile(5)</STRONG> manual page.
+
+       <STRONG>tput</STRONG> <STRONG>-T5620</STRONG> <STRONG>reset</STRONG>
+            Reset an AT&amp;T 5620 terminal, overriding the  type  of
+            terminal in the environmental variable <STRONG>TERM</STRONG>.
+
+       <STRONG>tput</STRONG> <STRONG>cup</STRONG> <STRONG>0</STRONG> <STRONG>0</STRONG>
+            Send the sequence to move the cursor to row <STRONG>0</STRONG>, column
+            <STRONG>0</STRONG> (the upper left corner of the screen, usually known
             as the "home" cursor position).
 
             as the "home" cursor position).
 
-       <B>tput</B> <B>clear</B>
+       <STRONG>tput</STRONG> <STRONG>clear</STRONG>
             Echo the clear-screen sequence for the current termi-
             nal.
 
             Echo the clear-screen sequence for the current termi-
             nal.
 
-       <B>tput</B> <B>cols</B>
+       <STRONG>tput</STRONG> <STRONG>cols</STRONG>
             Print the number of columns for the current terminal.
 
             Print the number of columns for the current terminal.
 
-       <B>tput</B> <B>-T450</B> <B>cols</B>
+       <STRONG>tput</STRONG> <STRONG>-T450</STRONG> <STRONG>cols</STRONG>
             Print the number of columns for the 450 terminal.
 
             Print the number of columns for the 450 terminal.
 
-
-       <B>bold=`tput</B> <B>smso`</B> <B>offbold=`tput</B> <B>rmso`</B>
-            Set the shell variables <B>bold</B>, to begin stand-out mode
-            sequence, and <B>offbold</B>, to end standout mode sequence,
+       <STRONG>bold=`tput</STRONG> <STRONG>smso`</STRONG> <STRONG>offbold=`tput</STRONG> <STRONG>rmso`</STRONG>
+            Set the shell variables <STRONG>bold</STRONG>, to begin stand-out mode
+            sequence, and <STRONG>offbold</STRONG>, to end standout mode sequence,
             for the current terminal.  This might be followed  by
             for the current terminal.  This might be followed  by
-            a  prompt:  <B>echo</B>  <B>"${bold}Please</B>  <B>type</B>  <B>in</B> <B>your</B> <B>name:</B>
-            <B>${offbold}\c"</B>
+            a  prompt:  <STRONG>echo</STRONG>  <STRONG>"${bold}Please</STRONG>  <STRONG>type</STRONG>  <STRONG>in</STRONG> <STRONG>your</STRONG> <STRONG>name:</STRONG>
+            <STRONG>${offbold}\c"</STRONG>
 
 
-       <B>tput</B> <B>hc</B>
+       <STRONG>tput</STRONG> <STRONG>hc</STRONG>
             Set exit code to indicate if the current terminal  is
             a hard copy terminal.
 
             Set exit code to indicate if the current terminal  is
             a hard copy terminal.
 
-       <B>tput</B> <B>cup</B> <B>23</B> <B>4</B>
+       <STRONG>tput</STRONG> <STRONG>cup</STRONG> <STRONG>23</STRONG> <STRONG>4</STRONG>
             Send  the sequence to move the cursor to row 23, col-
             umn 4.
 
             Send  the sequence to move the cursor to row 23, col-
             umn 4.
 
-       <B>tput</B> <B>longname</B>
-            Print the long name from the  <B>terminfo</B>  database  for
-            the  type  of terminal specified in the environmental
-            variable <B>TERM</B>.
+       <STRONG>tput</STRONG> <STRONG>cup</STRONG>
+            Send the terminfo string for cursor-movement, with no
+            parameters substituted.
 
 
-       <B>tput</B> <B>-S</B> <B>&lt;&lt;!</B>
-       <B>&gt;</B> <B>clear</B>
-       <B>&gt;</B> <B>cup</B> <B>10</B> <B>10</B>
-       <B>&gt;</B> <B>bold</B>
-       <B>&gt;</B> <B>!</B>
+       <STRONG>tput</STRONG> <STRONG>longname</STRONG>
+            Print  the  long  name from the <STRONG>terminfo</STRONG> database for
+            the type of terminal specified in  the  environmental
+            variable <STRONG>TERM</STRONG>.
 
 
-            This example shows tput processing several  capabili-
-            ties  in  one  invocation.   This  example 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 (<B>!</B>) on a line by itself.
+            <STRONG>tput</STRONG> <STRONG>-S</STRONG> <STRONG>&lt;&lt;!</STRONG>
+            <STRONG>&gt;</STRONG> <STRONG>clear</STRONG>
+            <STRONG>&gt;</STRONG> <STRONG>cup</STRONG> <STRONG>10</STRONG> <STRONG>10</STRONG>
+            <STRONG>&gt;</STRONG> <STRONG>bold</STRONG>
+            <STRONG>&gt;</STRONG> <STRONG>!</STRONG>
 
 
+            This  example shows <STRONG>tput</STRONG> processing several capabili-
+            ties 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 (<STRONG>!</STRONG>) on a line by itself.
 
 
-</PRE>
-<H2>FILES</H2><PRE>
-       <B>@DATADIR@/terminfo</B>
-              compiled terminal description database
 
 
-       <B>/usr/include/curses.h</B>
-              <B><A HREF="ncurses.3x.html">curses(3x)</A></B> header file
-
-       <B>/usr/include/term.h</B>
-              <B>terminfo</B> header file
+</PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
+       <STRONG>/usr/share/terminfo</STRONG>
+              compiled terminal description database
 
 
-       <B>@DATADIR@/tabset/*</B>
+       <STRONG>/usr/share/tabset/*</STRONG>
               tab settings for some terminals, in a format appro-
               tab settings for some terminals, in a format appro-
-              priate   to  be  output  to  the  terminal  (escape
-              sequences that set  margins  and  tabs);  for  more
-              information, see the "Tabs and Initialization" sec-
-              tion of <B><A HREF="terminfo.4.html">terminfo(4)</A></B>
-
-
-</PRE>
-<H2>SEE ALSO</H2><PRE>
-       <B><A HREF="clear.1.html">clear(1)</A></B>, <B><A HREF="stty.1.html">stty(1)</A></B>, <B><A HREF="tabs.5.html">tabs(5)</A></B>.   <B><A HREF="profile.5.html">profile(5)</A></B>,  <B><A HREF="terminfo.4.html">terminfo(4)</A></B>  in
-       the  <I>System</I>  <I>Administrator</I>'<I>s</I> <I>Reference</I> <I>Manual</I>.  Chapter 10
-       of the <I>Programmer</I>'<I>s</I> <I>Guide</I>.
-
-
-</PRE>
-<H2>EXIT CODES</H2><PRE>
-       If <I>capname</I> is of type boolean, a value of  <B>0</B>  is  set  for
-       TRUE and <B>1</B> for FALSE unless the <B>-S</B> option is used.
-
-       If  <I>capname</I>  is of type string, a value of <B>0</B> is set if the
-       <I>capname</I> is defined for this terminal <I>type</I>  (the  value  of
-       <I>capname</I>  is  returned on standard output); a value of <B>1</B> is
-       set if <I>capname</I> is not defined for this  terminal  <I>type</I>  (a
-       null value is returned on standard output).
-
-       If  <I>capname</I> is of type boolean or string and the <B>-S</B> option
-       is used, a value of <B>0</B> is returned  to  indicate  that  all
-       lines were successful.  No indication of which line failed
-       can be given so exit code <B>1</B> will never appear.  Exit codes
-       <B>2</B>, <B>3</B>, and <B>4</B> retain their usual interpretation.
-
-       If <I>capname</I> is of type integer, a value of <B>0</B> is always set,
-       whether or not <I>capname</I> is defined for this terminal  <I>type</I>.
-       To determine if <I>capname</I> is defined for this terminal <I>type</I>,
-       the user must test the value of standard output.  A  value
-       of  <B>-1</B> means that <I>capname</I> is not defined for this terminal
-       <I>type</I>.
-
-       Any other exit code indicates an error; see  the  DIAGNOS-
+              priate  to  be  output  to  the  terminal   (escape
+              sequences  that  set  margins  and  tabs); for more
+              information, see the <EM>Tabs</EM> <EM>and</EM> <EM>Initialization</EM>,  sec-
+              tion of <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
+
+
+</PRE><H2><a name="h2-EXIT-CODES">EXIT CODES</a></H2><PRE>
+       If the <STRONG>-S</STRONG> option is used, <STRONG>tput</STRONG> 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 <STRONG>0</STRONG>.   No  indication  of  which
+       line failed can be given so exit code <STRONG>1</STRONG> will never appear.
+       Exit codes <STRONG>2</STRONG>, <STRONG>3</STRONG>, and <STRONG>4</STRONG> retain their usual  interpretation.
+       If the <STRONG>-S</STRONG> option is not used, the exit code depends on the
+       type of <EM>capname</EM>:
+
+          <EM>boolean</EM>
+                 a value of <STRONG>0</STRONG> is set for TRUE and <STRONG>1</STRONG> for FALSE.
+
+          <EM>string</EM> a value of <STRONG>0</STRONG> is set if the  <EM>capname</EM>  is  defined
+                 for  this terminal <EM>type</EM> (the value of <EM>capname</EM> is
+                 returned on standard output); a value  of  <STRONG>1</STRONG>  is
+                 set  if <EM>capname</EM> is not defined for this terminal
+                 <EM>type</EM> (nothing is written to standard output).
+
+          <EM>integer</EM>
+                 a value of <STRONG>0</STRONG> is always set, whether or not  <EM>cap-</EM>
+                 <EM>name</EM>  is  defined  for  this  terminal <EM>type</EM>.  To
+                 determine if <EM>capname</EM> is defined for this  termi-
+                 nal  <EM>type</EM>,  the user must test the value written
+                 to standard output.  A value of  <STRONG>-1</STRONG>  means  that
+                 <EM>capname</EM> is not defined for this terminal <EM>type</EM>.
+
+          <EM>other</EM>  <STRONG>reset</STRONG>  or <STRONG>init</STRONG> may fail to find their respective
+                 files.  In that case, the exit code is set to  4
+                 + <STRONG>errno</STRONG>.
+
+       Any  other  exit code indicates an error; see the DIAGNOS-
        TICS section.
 
 
        TICS section.
 
 
-</PRE>
-<H2>DIAGNOSTICS</H2><PRE>
-       <B>tput</B> prints the following error messages and sets the cor-
+</PRE><H2><a name="h2-DIAGNOSTICS">DIAGNOSTICS</a></H2><PRE>
+       <STRONG>tput</STRONG> prints the following error messages and sets the cor-
        responding exit codes.
 
        exit code   error message
        responding exit codes.
 
        exit code   error message
-       <B>0</B>           (<I>capname</I> is a numeric variable that is not specified in the
-                   <B><A HREF="terminfo.5.html">terminfo(5)</A></B> database for this terminal type, e.g.
-                   <B>tput</B> <B>-T450</B> <B>lines</B> and <B>tput</B> <B>-T2621</B> <B>xmc</B>)
-       <B>1</B>           no error message is printed, see the <B>EXIT</B> <B>CODES</B> section.
-       <B>2</B>           usage error
-       <B>3</B>           unknown terminal <I>type</I> or no <B>terminfo</B> database
-       <B>4</B>           unknown <B>terminfo</B> capability <I>capname</I>
-
-
-</PRE>
-<H2>PORTABILITY</H2><PRE>
-       The <B>longname</B> and <B>-S</B> options, and  the  parameter-substitu-
-       tion  features  used in the <B>cup</B> example, are not supported
-       in BSD curses or in AT&amp;T/USL curses before SVr4.
-
-
-
-
-
-
-
-
-
+       ---------------------------------------------------------------------
+       <STRONG>0</STRONG>           (<EM>capname</EM>  is a numeric variable that is not specified in
+                   the <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> database for this  terminal  type,  e.g.
+                   <STRONG>tput</STRONG> <STRONG>-T450</STRONG> <STRONG>lines</STRONG> and <STRONG>tput</STRONG> <STRONG>-T2621</STRONG> <STRONG>xmc</STRONG>)
+       <STRONG>1</STRONG>           no error message is printed, see the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> section.
+       <STRONG>2</STRONG>           usage error
+       <STRONG>3</STRONG>           unknown terminal <EM>type</EM> or no <STRONG>terminfo</STRONG> database
+       <STRONG>4</STRONG>           unknown <STRONG>terminfo</STRONG> capability <EM>capname</EM>
+       <STRONG>&gt;4</STRONG>          error occurred in -S
+       ---------------------------------------------------------------------
+
+
+</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
+       The  <STRONG>tput</STRONG> command was begun by Bill Joy in 1980.  The ini-
+       tial version only cleared the screen.
+
+       AT&amp;T System V provided a  different  <STRONG>tput</STRONG>  command,  whose
+       <STRONG>init</STRONG>  and  <STRONG>reset</STRONG>  subcommands (more than half the program)
+       were incorporated from the <STRONG>reset</STRONG> feature of BSD <STRONG>tset</STRONG> writ-
+       ten  by  Eric Allman.  Later the corresponding source code
+       for <EM>reset</EM> was removed from the BSD  <STRONG>tset</STRONG>  (in  June  1993,
+       released in 4.4BSD-Lite a year later).
+
+       Keith  Bostic replaced the BSD <STRONG>tput</STRONG> command in 1989 with a
+       new implementation based on  the  AT&amp;T  System  V  program
+       <STRONG>tput</STRONG>.   Like  the  AT&amp;T program, Bostic's version accepted
+       some parameters named for  <EM>terminfo</EM>  <EM>capabilities</EM>  (<STRONG>clear</STRONG>,
+       <STRONG>init</STRONG>,  <STRONG>longname</STRONG>  and <STRONG>reset</STRONG>).  However (because he had only
+       termcap available), it accepted <EM>termcap</EM>  <EM>names</EM>  for  other
+       capabilities.   Also, Bostic's BSD <STRONG>tput</STRONG> did not modify the
+       terminal I/O modes as the earlier BSD <STRONG>tset</STRONG> had done.
+
+       At the same  time,  Bostic  added  a  shell  script  named
+       "clear", which used <STRONG>tput</STRONG> to clear the screen.
+
+       Both  of  these  appeared in 4.4BSD, becoming the "modern"
+       BSD implementation of <STRONG>tput</STRONG>.
+
+
+</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+       This implementation of <STRONG>tput</STRONG> differs from AT&amp;T <STRONG>tput</STRONG> in  two
+       important areas:
+
+       <STRONG>o</STRONG>   <STRONG>tput</STRONG> <EM>capname</EM> writes to the standard output.  That need
+           not be a regular terminal.  However,  the  subcommands
+           which  manipulate terminal modes may not use the stan-
+           dard output.
+
+           The AT&amp;T implementation's <STRONG>init</STRONG> and <STRONG>reset</STRONG> commands  use
+           the BSD (4.1c) <STRONG>tset</STRONG> source, which manipulates terminal
+           modes.  It successively tries standard  output,  stan-
+           dard  error,  standard  input  before  falling back to
+           "/dev/tty" and finally just assumes a 1200Bd terminal.
+           When updating terminal modes, it ignores errors.
+
+           Until  changes  made  after  ncurses 6.0, <STRONG>tput</STRONG> did not
+           modify  terminal  modes.   <STRONG>tput</STRONG>  now  uses  a  similar
+           scheme,  using  functions  shared with <STRONG>tset</STRONG> (and ulti-
+           mately based on the 4.4BSD <STRONG>tset</STRONG>).  If it is  not  able
+           to  open  a terminal, e.g., when running in <STRONG>cron</STRONG>, <STRONG>tput</STRONG>
+           will return an error.
+
+       <STRONG>o</STRONG>   AT&amp;T <STRONG>tput</STRONG> guesses the type of its <EM>capname</EM> operands  by
+           seeing if all of the characters are numeric, or not.
+
+           Most implementations which provide support for <EM>capname</EM>
+           operands use the <EM>tparm</EM> function to  expand  parameters
+           in it.  That function expects a mixture of numeric and
+           string parameters, requiring <STRONG>tput</STRONG> to know  which  type
+           to use.
+
+           This  implementation  uses  a  table  to determine the
+           parameter types for the standard <EM>capname</EM> operands, and
+           an  internal  library  function to analyze nonstandard
+           <EM>capname</EM> operands.
+
+       The <STRONG>longname</STRONG> and <STRONG>-S</STRONG> options, and  the  parameter-substitu-
+       tion  features used in the <STRONG>cup</STRONG> example, were not supported
+       in BSD curses before 4.3reno (1989) or in AT&amp;T/USL  curses
+       before SVr4 (1988).
+
+       IEEE  Std 1003.1/The Open Group  Base Specifications Issue
+       7 (POSIX.1-2008) documents only the  operands  for  <STRONG>clear</STRONG>,
+       <STRONG>init</STRONG>  and <STRONG>reset</STRONG>.  There are a few interesting observations
+       to make regarding that:
+
+       <STRONG>o</STRONG>   In this implementation, <STRONG>clear</STRONG> is part of  the  <EM>capname</EM>
+           support.  The others (<STRONG>init</STRONG> and <STRONG>longname</STRONG>) do not corre-
+           spond to terminal capabilities.
+
+       <STRONG>o</STRONG>   Other implementations of <STRONG>tput</STRONG>  on  SVr4-based  systems
+           such  as  Solaris,  IRIX64  and HPUX as well as others
+           such as AIX and Tru64 provide support for <EM>capname</EM>  op-
+           erands.
+
+       <STRONG>o</STRONG>   A  few  platforms  such  as  FreeBSD recognize termcap
+           names rather than terminfo capability names  in  their
+           respective  <STRONG>tput</STRONG>  commands.  Since 2010, NetBSD's <STRONG>tput</STRONG>
+           uses terminfo names.  Before that, it  (like  FreeBSD)
+           recognized termcap names.
+
+       Because  (apparently)  <EM>all</EM>  of  the certified Unix systems
+       support the full set of capability  names,  the  reasoning
+       for documenting only a few may not be apparent.
+
+       <STRONG>o</STRONG>   X/Open Curses Issue 7 documents <STRONG>tput</STRONG> differently, with
+           <EM>capname</EM> and the other features used in this  implemen-
+           tation.
+
+       <STRONG>o</STRONG>   That  is,  there  are two standards for <STRONG>tput</STRONG>: POSIX (a
+           subset) and X/Open Curses (the  full  implementation).
+           POSIX  documents a subset to avoid the complication of
+           including X/Open Curses and the terminal  capabilities
+           database.
+
+       <STRONG>o</STRONG>   While it is certainly possible to write a <STRONG>tput</STRONG> program
+           without using curses, none of the systems which have a
+           curses  implementation  provide  a  <STRONG>tput</STRONG> utility which
+           does not provide the <EM>capname</EM> feature.
+
+
+</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+       <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>,   <STRONG>stty(1)</STRONG>,   <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>,   <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>,    <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>,
+       <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>.
+
+       This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20161119).
+
 
 
 
 
+                                                                <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
 </PRE>
 </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-Options">Options</a></li>
+<li><a href="#h3-Commands">Commands</a></li>
+<li><a href="#h3-Aliases">Aliases</a></li>
+</ul>
+</li>
+<li><a href="#h2-EXAMPLES">EXAMPLES</a></li>
+<li><a href="#h2-FILES">FILES</a></li>
+<li><a href="#h2-EXIT-CODES">EXIT CODES</a></li>
+<li><a href="#h2-DIAGNOSTICS">DIAGNOSTICS</a></li>
+<li><a href="#h2-HISTORY">HISTORY</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
+</ul>
+</div>
 </BODY>
 </HTML>
 </BODY>
 </HTML>