term - Terminal driver tables for nroff
The nroff(1) command uses driver tables to customize its
output for various types of output devices. These driver
tables are written as C programs and compiled and
installed in /usr/share/lib/term/tabname. The name specifier
is the name of a terminal type as used with nroff
-Tname. The structure of the tables is as follows:
#define INCH 240 struct {
int bset;
int breset;
int Hor;
int Vert;
int Newline;
int Char;
int Em;
int Halfline;
int Adj;
char *twinit;
char *twrest;
char *twnl;
char *hlr;
char *hlf;
char *flr;
char *bdon;
char *bdoff;
char *ploton;
char *plotoff;
char *up;
char *down;
char *right;
char *left;
char *codetab[256-32];
char *zzz; } t;
The fields have the following meanings: Bits to set in the
c_oflag field of the termio structure before output. For
further information, see tty(7). Bits to reset in the
c_oflag field of the termio structure before output. Horizontal
resolution in fractions of an inch. Vertical resolution
in fractions of an inch. Space moved by a newline
(linefeed) character in fractions of an inch. Quantum of
character sizes in fractions of an inch (that is, a character
is a multiple of Char units wide). Size of an em in
fractions of an inch. Space moved by a half-linefeed (or
half-reverse-linefeed) character in fractions of an inch.
Quantum of white space in fractions of an inch (that is,
white spaces are a multiple of Adj units wide).
Note: if this value is less than the size of the
space character (in units of Char; see the following
fields for how the sizes of characters are
defined), nroff outputs fractional spaces using
plot mode. Also, if nroff is used with the -e
flag, it sets Adj to equal Hor. The set of characters
used to initialize the terminal in a mode
suitable for nroff The set of characters used to
restore the terminal to normal mode. The set of
characters used to move down one line. The set of
characters used to move up one-half line. The set
of characters used to move down one-half line. The
set of characters used to move up one line. The
set of characters used to turn on hardware boldface
mode, if any. The set of characters used to turn
off hardware boldface mode, if any. The set of
characters used to turn on hardware italics mode,
if any. The set of characters used to turn off
hardware italics mode, if any. The set of characters
used to turn on hardware plot mode (for Diablo
type mechanisms), if any. The set of characters
used to turn off hardware plot mode (for Diablo
type mechanisms), if any. The set of characters
used to move up one resolution unit (Vert) in plot
mode, if any. The set of characters used to move
down one resolution unit (Vert) in plot mode, if
any. The set of characters used to move right one
resolution unit (Hor) in plot mode, if any. The
set of characters used to move left one resolution
unit (Hor) in plot mode, if any. Definition of
characters needed to print an nroff character on
the terminal. The first byte is the number of
character units (Char) needed to hold the character;
that is, ``\001'' is one unit wide, ``\002''
is two units wide, and so on. The high-order bit
(0200) is on if the character is to be underlined
in underline mode (.ul). The rest of the bytes are
the characters used to produce the character in
question. If the character has the sign (0200) bit
on, it is a code to move the terminal in plot mode.
It is encoded as follows: Vertical motion Horizontal
motion Negative (up or left) motion Positive
(down or right) motion Number of such motions to
make A zero terminator at the end.
All quantities that are in units of fractions of an inch
should be expressed as INCH*num/denom, where num and denom
are respectively the numerator and denominator of the
fraction; that is, 1/48 of an inch would be written as
``INCH1/48''.
If any sequence of characters does not pertain to the output
device, that sequence should be given as a null
string.
The source code for the terminal name is in
/usr/share/lib/term/tabname. When a new terminal type is
added, the makefile Makefile.install in that directory
should be updated.
Building New nroff Drivers [Toc] [Back]
The /usr/share/lib/term/mktab.o object module is an nroff
compiler-independent driver table generator tool. It is
intended to be used as follows: cc -o /tmp/mktab tabxxx.c
mktab.o, /tmp/mktab > tabxx
Default nroff Drivers [Toc] [Back]
The following nroff drivers are provided: Dumb 10-pitch
printer with no halfline or upline capability. Generic
crt terminal (linked to lpr). LN03S ASCII printer. VT100
crt terminal. Default pseudo-printer device for the
man(1) and catman(8) commands. NOTE: The lp driver as
supplied is linked to the vt100 device. Your system
administrator can change the definition of lp to another
device.
Driver tables Source file for the driver tables
tty(7) delim off
term(4)
[ Back ] |