LinuxCommandLibrary
GitHubF-DroidGoogle Play Store

groff

GNU document formatting system

TLDR

Format document to PDF
$ groff -Tpdf [file.ms] > output.pdf
copy
Format with man macros
$ groff -man [file.1] > output.ps
copy
Format with ms macros to PDF
$ groff -ms -Tpdf [file.ms] > output.pdf
copy
Preview in terminal
$ groff -Tutf8 [file.roff] | less
copy
Process with table and equation preprocessors
$ groff -t -e -ms [file.ms] > output.ps
copy
Display the pipeline without executing it
$ groff -V -Tpdf [file.ms]
copy

SYNOPSIS

groff [options] [files]

DESCRIPTION

groff is the GNU implementation of the roff document formatting system. It is a front-end that orchestrates the execution of preprocessors, the troff formatter, and an output driver in a pipeline. It processes text files with embedded formatting commands to produce typeset output in various formats including PDF, PostScript, HTML, and terminal display.The system includes preprocessors for tables (tbl), equations (eqn), and diagrams (pic), and supports multiple macro packages for different document types.

PARAMETERS

FILES

Input files to process.
-T DEVICE
Output device (pdf, ps, html, utf8, ascii, latin1, dvi).
-m MACRO
Use macro package (man, ms, me, mm).
-t
Run tbl preprocessor for tables.
-e
Run eqn preprocessor for equations.
-p
Run pic preprocessor for diagrams.
-s
Run soelim preprocessor for file inclusion.
-S
Safer mode. Disables .open, .opena, .pso, .sy, and .pi requests.
-U
Unsafe mode. Reverts to the unsafe requests disabled by -S.
-V
Print the pipeline that would be run to standard error, without executing it.
-Z
Disable postprocessing. Output raw troff intermediate output.
-a
Generate a plain text approximation of the typeset output.
-man
Shorthand for -m man. Use man macros.
-ms
Shorthand for -m ms. Use ms macros.
--help
Display help information.

CONFIGURATION

/usr/share/groff/current/tmac/

System-wide macro files and configuration for groff output devices.

CAVEATS

Steep learning curve. Macro packages have different conventions. The -man and -ms shorthands are groff extensions not present in traditional troff. The default output device is ps (PostScript) unless overridden with -T.

HISTORY

groff was created by James Clark as a free implementation of AT&T troff. It is now maintained as part of the GNU project.

SEE ALSO

troff(1), nroff(1), man(1), tbl(1), eqn(1), pic(1)

Copied to clipboard
Kai