TSET(1) UNIX Programmer's Manual TSET(1) NAME tset - set terminal modes SYNOPSIS tset [ options ] [ -m [_i_d_e_n_t][_t_e_s_t _b_a_u_d_r_a_t_e]:_t_y_p_e ... ] [ type ] DESCRIPTION _T_s_e_t causes terminal dependent processing such as setting erase and kill characters, setting or resetting delays, and the like. It first determines the _t_y_p_e of terminal involved, names for which are specified by the /_e_t_c/_t_e_r_m_c_a_p data base, and then does necessary initializations and mode settings. In the case where no argument types are speci- fied, _t_s_e_t simply reads the terminal type out of the environment variable TERM and re-initializes the terminal. The rest of this manual concerns itself with type initiali- zation, done typically once at login, and options used at initialization time to determine the terminal type and set up terminal modes. When used in a startup script ._p_r_o_f_i_l_e (for _s_h(1) users) or ._l_o_g_i_n (for _c_s_h(1) users) it is desirable to give informa- tion about the types of terminal usually used on terminals which are not hardwired. These ports are initially identi- fied as being _d_i_a_l_u_p or _p_l_u_g_b_o_a_r_d or _a_r_p_a_n_e_t etc. To specify what terminal type is usually used on these ports -m is followed by the appropriate port type identifier, an optional baud-rate specification, and the terminal type to be used if the mapping conditions are satisfied. If more than one mapping is specified, the first applicable mapping prevails. A missing type identifier matches all identif- iers. Baud rates are specified as with _s_t_t_y(1), and are compared with the speed of the diagnostic output (which is almost always the control terminal). The baud rate test may be any combination of: >, =, <, @, and !; @ is a synonym for = and ! inverts the sense of the test. To avoid problems with metacharacters, it is best to place the entire argument to -m within ``''' characters; users of _c_s_h(1) must also put a ``\'' before any ``!'' used here. Thus tset -m 'dialup>300:adm3a' -m dialup:dw2 -m 'plugboard:?adm3a' causes the terminal type to be set to an _a_d_m_3_a if the port in use is a dialup at a speed greater than 300 baud; to a _d_w_2 if the port is (otherwise) a dialup (i.e. at 300 baud or less). If the _t_y_p_e above begins with a question mark, the Printed 11/10/80 8/26/80 1 TSET(1) UNIX Programmer's Manual TSET(1) user is asked if s/he really wants that type. A null response means to use that type; otherwise, another type can be entered which will be used instead. Thus, in this case, the user will be queried on a plugboard port as to whether they are using an _a_d_m_3_a. For other ports the port type will be taken from the /etc/ttytype file or a final, default _t_y_p_e option may be given on the command line not preceded by a -m. It is often desirable to return the terminal type, as speci- fied by the -m options, and information about the terminal to a shell's environment. This can be done using the -s option; using the Bourne shell, _s_h(1): eval `tset -s _o_p_t_i_o_n_s...` or using the C shell, _c_s_h(1): setenv noglob; eval `tset -s _o_p_t_i_o_n_s...` These commands cause _t_s_e_t to generate as output a sequence of shell commands which place the variables TERM and TERMCAP in the environment; see _e_n_v_i_r_o_n(5). Once the terminal type is known, _t_s_e_t engages in terminal mode setting. This normally involves sending an initializa- tion sequence to the terminal and setting the single charac- ter erase (and optionally the line-kill (full line erase)) characters. On terminals that can backspace but not overstrike (such as a CRT), and when the erase character is the default erase character (`#' on standard systems), the erase character is changed to a Control-H (backspace). The options are: -e set the erase character to be the named character _c on all terminals, the default being the backspace charac- ter on the terminal, usually ^H. -k is similar to -e but for the line kill character rather than the erase character; _c defaults to ^X (for purely historical reasons); ^U is the preferred setting. No kill processing is done if -k is not specified. -I supresses outputting terminal initialization strings. -Q supresses printing the ``Erase set to'' and ``Kill set to'' messages. -S Outputs the strings to be assigned to TERM and TERMCAP Printed 11/10/80 8/26/80 2 TSET(1) UNIX Programmer's Manual TSET(1) in the environment rather than commands for a shell. FILES /etc/ttytype terminal id to type map database /etc/termcap terminal capability database SEE ALSO csh(1), setenv(1), sh(1), stty(1), environ(5), ttytype(5), termcap(5) AUTHOR Eric Allman BUGS Should be merged with _s_t_t_y(1). NOTES For compatibility with earlier versions of _t_s_e_t a number of flags are accepted whose use is discouraged: -d type equivalent to -m dialup:type -p type equivalent to -m plugboard:type -a type equivalent to -m arpanet:type -E c Sets the erase character to _c only if the terminal can backspace. - prints the terminal type on the standard output -r prints the terminal type on the diagnostic output. Printed 11/10/80 8/26/80 3