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  en-
		       vironment  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  ac-
					       tivities,  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  ex-
       ported, 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 se-
       quence,	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, in-
		     dicates 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, in-
		     dicates 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