* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: tput.1,v 1.70 2021/09/04 19:02:50 tom Exp @
+ * @Id: tput.1,v 1.75 2021/12/25 21:31:59 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
<TITLE>tput 1</TITLE>
<link rel="author" href="mailto:bug-ncurses@gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+
</HEAD>
<BODY>
<H1 class="no-header">tput 1</H1>
---------------------------------------------------------------------
<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>tput</STRONG> <STRONG>-T450</STRONG> <STRONG>lines</STRONG> and <STRONG>tput</STRONG> <STRONG>-Thp2621</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
incorporated from the <STRONG>reset</STRONG> feature of BSD <STRONG>tset</STRONG> written by Eric
Allman.
- <STRONG>o</STRONG> SVr4 added color initialization using the <EM>orig</EM><STRONG>_</STRONG><EM>colors</EM> and
- <EM>orig</EM><STRONG>_</STRONG><EM>pairs</EM> capabilities in the <STRONG>init</STRONG> subcommand.
+ <STRONG>o</STRONG> SVr4 added color initialization using the <STRONG>orig_colors</STRONG> and <STRONG>orig_pair</STRONG>
+ capabilities in the <STRONG>init</STRONG> subcommand.
Keith Bostic replaced the BSD <STRONG>tput</STRONG> command in 1989 with a new
implementation based on the AT&T System V program <STRONG>tput</STRONG>. Like the AT&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 (<STRONG>clear</STRONG>, <STRONG>init</STRONG>, <STRONG>longname</STRONG> and <STRONG>reset</STRONG>). However (because he
+ had only <EM>termcap</EM> available), it accepted <EM>termcap</EM> names 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.
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 ultimately 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.
+ to open a terminal, e.g., when running in <STRONG>cron(1)</STRONG>, <STRONG>tput</STRONG> will return
+ an error.
<STRONG>o</STRONG> AT&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
+ the <STRONG>tparm</STRONG> 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.
for the standard <EM>capname</EM> operands, and an internal library function
to analyze nonstandard <EM>capname</EM> operands.
+ Besides providing more reliable operation than AT&T's utility, a
+ portability problem is introduced by this analysis: An OpenBSD
+ developer adapted the internal library function from ncurses to
+ port NetBSD's termcap-based <STRONG>tput</STRONG> to terminfo. That had been
+ modified to interpret multiple commands on a line. Portable
+ applications should not rely upon this feature; ncurses provides it
+ to support applications written specifically for OpenBSD.
+
This implementation (unlike others) can accept both <EM>termcap</EM> and
<EM>terminfo</EM> names for the <EM>capname</EM> feature, if <EM>termcap</EM> support is compiled
in. However, the predefined <EM>termcap</EM> and <EM>terminfo</EM> names have two
</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="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
- This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20210904).
+ This describes <STRONG>ncurses</STRONG> version 6.3 (patch 20220115).