Next: Output Device Intro, Previous: Macro Package Intro, Up: Introduction [Contents][Index]
An alternative approach to complexity management, particularly when
constructing tables, setting mathematics, or drawing diagrams, lies in
preprocessing. A preprocessor employs a domian-specific language
to ease the generation of tables, equations, and so forth in terms that
are convenient for human entry. Each preprocessor reads a document and
translates the parts of it that apply to it into GNU troff
input.
Command-line options to groff
tell it which preprocessors to
use.
groff
provides preprocessors for laying out tables
(gtbl
), typesetting equations (geqn
), drawing
diagrams (gpic
and ggrn
), inserting bibliographic
references (grefer
), and drawing chemical structures
(gchem
). An associated program that is useful when dealing
with preprocessors is gsoelim
.1
groff
also supports grap
, a preprocessor for drawing
graphs. A free implementation of it can be obtained separately.
Unique to groff
is the preconv
preprocessor that enables
groff
to handle documents in a variety of input encodings.
Other preprocessors exist, but no free implementations
are known. An example is ideal
, which draws diagrams using a
mathematical constraint language.