# Groff-&groff-version;

The Groff package contains programs for processing and formatting text.

## Installation of Groff

Groff expects the environment variable `PAGE` to contain the default paper size. For users in the United States, `PAGE=letter` is appropriate. Elsewhere, `PAGE=A4` may be more suitable.

Prepare Groff for compilation:

    PAGE=[paper_size] ./configure --prefix=/usr

Compile the package:

    make

This package does not come with a test suite.

Install the package:

    make install

Some documentation programs, such as `xman`, will not work properly without the following symlinks:

    ln -sv soelim /usr/bin/zsoelim
    ln -sv eqn /usr/bin/geqn
    ln -sv tbl /usr/bin/gtbl

## Contents of Groff

Installed programs Installed directories
- addftinfo, afmtodit, chem, eqn, eqn2graph, gdiffmk, geqn (link to eqn), grap2graph, grn, grodvi, groff, groffer, grog, grolbp, grolj4, grops, grotty, gtbl (link to tbl), hpftodit, indxbib, lkbib, lookbib, mmroff, neqn, nroff, pdfroff, pfbtops, pic, pic2graph, post-grohtml, pre-grohtml, preconv, refer, roff2dvi, roff2html, roff2pdf, roff2ps, roff2text, roff2x, soelim, tbl, tfmtodit, troff, and zsoelim (link to soelim) /usr/lib/groff, /usr/share/doc/groff, /usr/share/groff

Short Descriptions

`addftinfo`

- Reads a troff font file and adds some additional font-metric information that is used by the `groff` system

`afmtodit`

- Creates a font file for use with `groff` and `grops`

`chem`

- Groff preprocessor for producing chemical structure diagrams

`eqn`

- Compiles descriptions of equations embedded within troff input files into commands that are understood by `troff`

`eqn2graph`

- Converts a troff EQN (equation) into a cropped image

`gdiffmk`

- Marks differences between groff/nroff/troff files

`geqn`

- A link to `eqn`

`grap2graph`

- Converts a grap diagram into a cropped bitmap image

`grn`

- A `groff` preprocessor for gremlin files

`grodvi`

- A driver for `groff` that produces TeX dvi format

`groff`

- A front-end to the groff document formatting system; normally, it runs the `troff` program and a post-processor appropriate for the selected device

`groffer`

- Displays groff files and man pages on X and tty terminals

`grog`

- Reads files and guesses which of the `groff` options `-e`, `-man`, `-me`, `-mm`, `-ms`, `-p`, `-s`, and `-t` are required for printing files, and reports the `groff` command including those options

`grolbp`

- Is a `groff` driver for Canon CAPSL printers (LBP-4 and LBP-8 series laser printers)

`grolj4`

- Is a driver for `groff` that produces output in PCL5 format suitable for an HP LaserJet 4 printer

`grops`

- Translates the output of GNU `troff` to PostScript

`grotty`

- Translates the output of GNU `troff` into a form suitable for typewriter-like devices

`gtbl`

- A link to `tbl`

`hpftodit`

- Creates a font file for use with `groff -Tlj4` from an HP-tagged font metric file

`indxbib`

- Creates an inverted index for the bibliographic databases with a specified file for use with `refer`, `lookbib`, and `lkbib`

`lkbib`

- Searches bibliographic databases for references that contain specified keys and reports any references found

`lookbib`

- Prints a prompt on the standard error (unless the standard input is not a terminal), reads a line containing a set of keywords from the standard input, searches the bibliographic databases in a specified file for references containing those keywords, prints any references found on the standard output, and repeats this process until the end of input

`mmroff`

- A simple preprocessor for `groff`

`neqn`

- Formats equations for American Standard Code for Information Interchange (ASCII) output

`nroff`

- A script that emulates the `nroff` command using `groff`

`pdfroff`

- Creates pdf documents using groff

`pfbtops`

- Translates a PostScript font in `.pfb` format to ASCII

`pic`

- Compiles descriptions of pictures embedded within troff or TeX input files into commands understood by TeX or `troff`

`pic2graph`

- Converts a PIC diagram into a cropped image

`post-grohtml`

- Translates the output of GNU `troff` to HTML

`pre-grohtml`

- Translates the output of GNU `troff` to HTML

`preconv`

- Converts encoding of input files to something GNU `troff` understands

`refer`

- Copies the contents of a file to the standard output, except that lines between .[ and .] are interpreted as citations, and lines between .R1 and .R2 are interpreted as commands for how citations are to be processed

`roff2dvi`

- Transforms roff files into other formats

`roff2html`

- Transforms roff files into other formats

`roff2pdf`

- Transforms roff files into other formats

`roff2ps`

- Transforms roff files into other formats

`roff2text`

- Transforms roff files into other formats

`roff2x`

- Transforms roff files into other formats

`soelim`

- Reads files and replaces lines of the form .so file by the contents of the mentioned file

`tbl`

- Compiles descriptions of tables embedded within troff input files into commands that are understood by `troff`

`tfmtodit`

- Creates a font file for use with `groff -Tdvi`

`troff`

- Is highly compatible with Unix `troff`; it should usually be invoked using the `groff` command, which will also run preprocessors and post-processors in the appropriate order and with the appropriate options

`zsoelim`

- A link to `soelim`