nroff(1) General Commands Manual nroff(1)
Name
nroff - format documents with groff for TTY (terminal) devices
Synopsis
nroff [-bcCEhikpRStUVz] [-d ctext] [-d string=text] [-K fallback-
encoding] [-m macro-package] [-M macro-directory] [-n page-
number] [-o page-list] [-P postprocessor-argument] [-r cnumeric-
expression] [-r register=numeric-expression] [-T output-device]
[-w warning-category] [-W warning-category] [file ...]
nroff --help
nroff -v
nroff --version
Description
nroff formats documents written in the ]8;;man:groff(7)\groff(7)]8;;\ language for type-
writer-like devices such as terminal emulators. GNU nroff emulates the
AT&T nroff command using ]8;;man:groff(1)\groff(1)]8;;\. nroff generates output via
]8;;man:grotty(1)\grotty(1)]8;;\, groff's terminal output driver, which needs to know the
character encoding scheme used by the device. Consequently, acceptable
arguments to the -T option are ascii, latin1, utf8, and cp1047; any
others are ignored. If neither the GROFF_TYPESETTER environment vari-
able nor the -T command-line option (which overrides the environment
variable) specifies a (valid) device, nroff consults the locale to se-
lect an appropriate output device. It first tries the ]8;;man:locale(1)\locale(1)]8;;\ pro-
gram, then checks several locale-related environment variables; see
section “Environment” below. If all of the foregoing fail, -Tascii is
implied.
The -b, -c, -C, -d, -E, -i, -m, -M, -n, -o, -r, -U, -w, -W, and -z op-
tions have the effects described in ]8;;man:troff(1)\troff(1)]8;;\. -c and -h imply “-P-c”
and “-P-h”, respectively; -c is also interpreted directly by troff. In
addition, this implementation ignores the AT&T nroff options -e, -q,
and -s (which are not implemented in groff). The options -k, -K, -p,
-P, -R, -t, and -S are documented in ]8;;man:groff(1)\groff(1)]8;;\. -V causes nroff to dis-
play the constructed groff command on the standard output stream, but
does not execute it. -v and --version show version information about
nroff and the programs it runs, while --help displays a usage message;
all exit afterward.
Exit status
nroff exits with error status 2 if there was a problem parsing its ar-
guments, with status 0 if any of the options -V, -v, --version, or
--help were specified, and with the status of groff otherwise.
Environment
Normally, the path separator in environment variables ending with PATH
is the colon; this may vary depending on the operating system. For ex-
ample, Windows uses a semicolon instead.
GROFF_BIN_PATH
is a colon-separated list of directories in which to search for
the groff executable before searching in PATH. If unset, /usr/
bin is used.
GROFF_TYPESETTER
specifies the default output device for groff.
LC_ALL
LC_CTYPE
LANG
LESSCHARSET
are pattern-matched in this order for contents matching standard
character encodings supported by groff in the event no -T option
is given and GROFF_TYPESETTER is unset, or the values specified
are invalid.
Files
/usr/share/groff/1.23.0/tmac/tty-char.tmac
defines fallback definitions of roff special characters. These
definitions more poorly optically approximate typeset output
than those of tty.tmac in favor of communicating semantic infor-
mation. nroff loads it automatically.
Notes
Pager programs like ]8;;man:more(1)\more(1)]8;;\ and ]8;;man:less(1)\less(1)]8;;\ may require command-line op-
tions to correctly handle some output sequences; see ]8;;man:grotty(1)\grotty(1)]8;;\.
See also
]8;;man:groff(1)\groff(1)]8;;\, ]8;;man:troff(1)\troff(1)]8;;\, ]8;;man:grotty(1)\grotty(1)]8;;\, ]8;;man:locale(1)\locale(1)]8;;\, ]8;;man:roff(7)\roff(7)]8;;\
groff 1.23.0 31 March 2024 nroff(1)
Generated by dwww version 1.16 on Tue Dec 16 06:00:52 CET 2025.