+</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.
+
+ Keith Bostic replaced this in 1989 with a new implementa-
+ tion based on the AT&T SystemV 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.
+
+ 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&T <STRONG>tput</STRONG> in two
+ important areas:
+
+ <STRONG>o</STRONG> tput writes to the standard output. That need not be
+ a regular terminal.
+
+ The AT&T implementation's <STRONG>init</STRONG> and <STRONG>reset</STRONG> commands use
+ the <STRONG>tset</STRONG> source, which manipulates terminal modes. It
+ successively tries standard output, standard error,
+ standard input before falling back to "/dev/tty" and
+ finally just assumes a 1200Bd terminal. When updating
+ terminal modes, it ignores errors.
+
+ <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 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.
+