Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
tput(1)				 User Commands			       tput(1)

       tput - initialize a terminal or query terminfo database

       tput [-T	type] capname [parm...]

       tput -S <<

       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 clear,	initialize or reset the	terminal; or to	return
       the long	name of	the requested terminal type. tput outputs a string  if
       the  capability attribute (capname) 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 status (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 status ($?,	see sh(1)) to be sure it is 0.	See  the  EXIT	STATUS

       The following options are supported:

       -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 and  the  layer  size
		       will not	be referenced.

       -S	       Allows more than	one capability per invocation of tput.
		       The capabilities	must be	passed to tput from the	 stan-
		       dard  input  instead  of	from the command line (see the
		       example in the EXAMPLES section). Only one  capname  is
		       allowed	per line. The -S option	changes	the meaning of
		       the 0 and 1 boolean and string exit statuses  (see  the
		       EXAMPLES	section).

       The following operands are supported:

       capname	       Indicates  the  capability  attribute from the terminfo
		       database. See terminfo(4) for a complete	list of	 capa-
		       bilities	and the	capname	associated with	each.

		       The  following strings will be supported	as operands by
		       the implementation in the "C" locale:

		       clear	       Display the clear-screen	sequence.

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

					   1.  if present, the terminal's ini-
					       tialization  strings  will   be
					       output	(is1,  is2,  is3,  if,

					   2.  any delays (for instance,  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, stan-
					       dard 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 identi-
				       cally 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)).

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

       Example 1: Initializing the terminal according to TERM

       This example initializes	the terminal according to the type of terminal
       in the environment variable TERM. This command should  be  included  in
       everyone's  .profile  after  the	 environment  variable	TERM  has been
       exported, as illustrated	on the profile(4) manual page.

       example%	tput init

       Example 2: Resetting a terminal

       This example resets an AT&T 5620	terminal, overriding the type of  ter-
       minal in	the environment	variable TERM:

       example%	tput -T5620 reset

       Example 3: Moving the cursor

       The  following  example sends 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).

       example%	tput cup 0 0

       This next example sends the sequence to move the	cursor to row 23, col-
       umn 4.

       example%	tput cup 23 4

       Example 4: Echoing the clear-screen sequence

       This example echos the clear-screen sequence for	the current  terminal.

       example%	tput clear

       Example 5: Printing the number of columns

       This command prints the number of columns for the current terminal.

       example%	tput cols

       The  following  command prints the number of columns for	the 450	termi-

       example%	tput -T450 cols

       Example 6: Setting shell	variables

       This example sets 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"
       example%	bold='tput smso'
       example%	offbold='tput rmso'

       Example 7: Setting the exit status

       This example sets the exit status to indicate if	the  current  terminal
       is a hardcopy terminal.

       example%	tput hc

       Example 8: Printing the long name from terminfo

       This  command  prints  the long name from the terminfo database for the
       type of terminal	specified in the environment variable TERM.

       example%	tput longname

       Example 9: Processing several capabilities with one invocation

       This example shows tput processing several capabilities in one  invoca-
       tion.  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	(!) on a line by itself.

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

       See  environ(5) for descriptions	of the following environment variables
       that affect the execution of tput: LANG,	LC_ALL,	LC_CTYPE, LC_MESSAGES,
       and NLSPATH.

       TERM	Determine  the	terminal  type.	 If  this variable is unset or
		null, and if the -T option is not  specified,  an  unspecified
		default	terminal type will be used.

       The following exit values are returned:

		  o  If	 capname  is  of type boolean and -S is	not specified,
		     indicates TRUE.

		  o  If	capname	is of type string and  -S  is  not  specified,
		     indicates capname is defined for this terminal type.

		  o  If	 capname is of type boolean or string and -S is	speci-
		     fied, indicates that all lines were successful.

		  o  capname is	of type	integer.

		  o  The requested string was written successfully.

		  o  If	capname	is of type boolean and -S  is  not  specified,
		     indicates FALSE.

		  o  If	 capname  is  of  type string and -S is	not specified,
		     indicates that capname is not defined for	this  terminal

       2	Usage error.

       3	No information is available about the specified	terminal type.

       4	The specified operand is invalid.

       >4	An error occurred.

       -1	capname	is a numeric variable that is  not  specified  in  the
		terminfo  database.  For  instance,  tput -T450	lines and tput
		-T2621 xmc.

       /usr/include/curses.h	       curses(3CURSES) header

       /usr/include/term.h	       terminfo	header

       /usr/lib/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 informa-
				       tion, see the "Tabs and Initialization"
				       section of terminfo(4)

       /usr/share/lib/terminfo/?/*     compiled	terminal description database

       See attributes(5) for descriptions of the following attributes:

       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       |Availability		     |SUNWcsu			   |
       |Interface Stability	     |Standard			   |

       clear(1),  sh(1),  stty(1),  tabs(1), curses(3CURSES), profile(4), ter-
       minfo(4), attributes(5),	environ(5), standards(5), term(5)

SunOS 5.10			  1 Feb	1995			       tput(1)


Want to link to this manual page? Use this URL:

home | help