grotty - groff driver for typewriter-like devices
grotty [ -bBcdfhioruUv ] [ -Fdir ] [ files... ]
It is possible to have whitespace between the -F option and its parameter.
grotty translates the output of GNU troff into a form suitable for
typewriter-like devices. Normally grotty should be invoked by using
the groff command with a -Tascii, -Tlatin1, -Tkoi8-r or -Tutf8 option
on ASCII based systems, and with -Tcp1047 and -Tutf8 on EBCDIC based
hosts. If no files are given, grotty will read the standard input. A
filename of - will also cause grotty to read the standard input. Output
is written to the standard output.
By default, grotty emits SGR escape sequences (from ISO 6429, also
called ANSI color escapes) to change text attributes (bold, italic,
colors). This makes it possible to have eight different background and
foreground colors; additionally, bold and italic attributes can be used
at the same time (by using the BI font).
The following colors are defined in tty.tmac: black, white, red, green,
blue, yellow, magenta, cyan. Unknown colors are mapped to the default
color (which is dependent on the settings of the terminal; in most
cases, this is black for the foreground and white for the background).
Use the -c switch to revert to the old behaviour, printing a bold character
c with the sequence `c BACKSPACE c' and an italic character c by
the sequence `_ BACKSPACE c'. At the same time, color output is disabled.
The same effect can be achieved by setting either the
GROFF_NO_SGR environment variable or using the `sgr' X command (see
For SGR support, it is necessary to use the -R option of less(1) to
disable the interpretation of grotty's old output format. Consequently,
all programs which use less as the pager program have to pass
this option to it. For man(1) in particular, either add -R to the
$PAGER environment variable, e.g.
or use the -P option of man to set the pager executable and its
options, or modify the configuration file of man in a similar fashion.
grotty's old output format can be displayed on a terminal by piping
through ul(1). Pagers such as more(1) or less(1) are also able to display
these sequences. Use either -B or -U when piping into less(1);
use -b when piping into more(1). There is no need to filter the output
through col(1) since grotty never outputs reverse line feeds.
The font description file may contain a command
where n is a decimal integer. If the 01 bit in n is set, then the font
will be treated as an italic font; if the 02 bit is set, then it will
be treated as a bold font. The code field in the font description
field gives the code which will be used to output the character. This
code can also be used in the \N escape sequence in troff.
-b Suppress the use of overstriking for bold characters. Ignored
if -c isn't used.
-B Use only overstriking for bold-italic characters. Ignored if -c
-c Use grotty's old output format (see above). This also disables
-d Ignore all \D commands. Without this grotty will render
\D'l...' commands that have at least one zero argument (and so
are either horizontal or vertical) using -, |, and + characters.
-f Use form feeds in the output. A form feed will be output at the
end of each page that has no output on its last line.
-Fdir Prepend directory dir/devname to the search path for font and
device description files; name is the name of the device, usually
ascii, latin1, koi8-r, utf8, or cp1047.
-h Use horizontal tabs in the output. Tabs are assumed to be set
every 8 columns.
-i Use escape sequences to set the italic text attribute instead of
the underline attribute for italic fonts (`I' and `BI'). Note
that most terminals (including xterm) don't support this.
Ignored if -c is active.
-o Suppress overstriking (other than for bold or underlined characters
in case the old output format has been activated with -c).
-r Use escape sequences to set the reverse text attribute instead
of the underline attribute for italic fonts (`I' and `BI').
Ignored if -c is active.
-u Suppress the use of underlining for italic characters. Ignored
if -c isn't used.
-U Use only underlining for bold-italic characters. Ignored if -c
-v Print the version number.
grotty understands a single X command produced using the \X escape
\X'tty: sgr n'
If n is non-zero or missing, enable SGR output (this is the
default), otherwise use the old drawing scheme for bold and
If set, the old drawing scheme for bold and underline (using the
backspace character) is active. Colors are disabled.
Device description file for ascii device.
Font description file for font F of ascii device.
Device description file for koi8-r device.
Font description file for font F of koi8-r device.
Device description file for latin1 device.
Font description file for font F of latin1 device.
Device description file for utf8 device.
Font description file for font F of utf8 device.
Device description file for cp1047 device.
Font description file for font F of cp1047 device.
Macros for use with grotty.
Additional klugdey character definitions for use with grotty.
Note that on EBCDIC hosts, only files for the cp1047 device will be
grotty is intended only for simple documents.
There is no support for fractional horizontal or vertical motions.
There is no support for \D commands other than horizontal and vertical
Characters above the first line (ie with a vertical position of 0) cannot
Color handling is different compared to grops(1). \M doesn't set the
fill color for closed graphic objects (which grotty doesn't support
anyway) but changes the background color of the character cell, affecting
all subsequent operations.
groff(1), troff(1), groff_out(5), groff_font(5), groff_char(7), ul(1),
more(1), man(1), less(1)
Groff Version 1.19 8 September 2003 GROTTY(1)
[ Back ]