TERMINAL TYPE MAPPING
When the terminal is not hardwired into the system (or the current system information is incorrect) the terminal type derived from the /etc/ttys file or the TERM environment variable is often something generic like "network", "dialup", or "unknown". When tset is used in a startup script ( .profile for sh(1) users or .login for csh(1) users) it is often desirable to provide information about the type of terminal used on such ports. The purpose of the -m option is to "map" from some set of conditions to a terminal type, that is, to tell tset If Im on this port at a particular speed, guess that Im on that kind of terminal.
The argument to the -m option consists of an optional port type, an optional operator, an optional baud rate specification, an optional colon (:) character and a terminal type. The port type is a string (delimited by either the operator or the colon character). The operator may be any combination of: ">", "<", "@", and "!"; ">" means greater than, "<" means less than, "@" means equal to and "!" inverts the sense of the test. The baud rate is specified as a number and is compared with the speed of the standard error output (which should be the control terminal). The terminal type is a string.
If the terminal type is not specified on the command line, the -m mappings are applied to the terminal type. If the port type and baud rate match the mapping, the terminal type specified in the mapping replaces the current type. If more than one mapping is specified, the first applicable mapping is used.
For example, consider the following mapping: "dialup>9600:vt100". The port type is "dialup", the operator is ">", the baud rate specification is "9600", and the terminal type is "vt100". The result of this mapping is to specify that if the terminal type is "dialup", and the baud rate is greater than 9600 baud, a terminal type of "vt100" will be used.
If no port type is specified, the terminal type will match any port type, for example, "-m dialup:vt100 -m :?xterm" will cause any dialup port, regardless of baud rate, to match the terminal type "vt100", and any non-dialup port type to match the terminal type "?xterm". Note, because of the leading question mark, the user will be queried on a default port as to whether they are actually using an xterm terminal.
No whitespace characters are permitted in the -m option argument. Also, to avoid problems with metacharacters, it is suggested that the entire -m option argument be placed within single quote characters, and that csh users insert a backslash character (\) before any exclamation marks (!).
The tset command utilizes the SHELL and TERM environment variables.