---
name: "plan9-troff"
section: "1"
platform: "linux"
package: "9base"
version: "1:6-5"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/plan9-troff"
---

# plan9-troff(1)

text formatting and typesetting

## NAME

troff, nroff - text formatting and typesetting

## SYNOPSIS

**troff** \[ *option ...* \] \[ *file ...* \]

**nroff** \[ *option ...* \] \[ *file ...* \]

## DESCRIPTION

*Troff* formats text in the named *files* for printing on a typesetter. *Nroff* does the same, but produces output suitable for typewriter-like devices.

If no *file* argument is present, the standard input is read. An argument consisting of a single minus (**-**) is taken to be a file name corresponding to the standard input. The options are:

- **-o***list*

  Print pages in the comma-separated *list* of numbers and ranges. A range *N***-***M* means  *N* through *M*; initial **-***M* means up to *M*; final *N***-** means from *N* to the end.

- **-n***N*

  Number first generated page *N*.

- **-m***name*

  Process the macro file **/sys/lib/tmac/tmac.***name* before the input *files*.

- **-r***aN*

  Set register *a* (one character name) to *N*.

- **-i**

  Read standard input after the input files are exhausted.

- **-q**

  Invoke the simultaneous input-output mode of the **rd** request.

- **-N**

  Produce output suitable for typewriter-like devices.

### Typesetter devices (not -N) only

- **-a**

  Send a printable textual approximation of the results to the standard output.

- **-T***dest*

  Prepare output for typesetter *dest*:\

  - **-Tutf**

    (The default.) PostScript printers with preprocessing to handle Unicode characters encoded in UTF

  - **-Tpost**

    Regular PostScript printers

  - **-T202**

    Mergenthaler Linotron 202

- **-F***dir*

  Take font information from directory *dir*.

### Typewriter (-N) output only

- **-s***N*

  Halt prior to every *N* pages (default *N*=1) to allow paper loading or changing.

- **-T***name*

  Prepare output for specified terminal. Known *names* include **utf** for the normal Plan 9 UTF encoding of the Unicode Standard character set (default), **37** for the Teletype model 37, **lp** (\`line-printer') for any terminal without half-line capability, **450** for the DASI-450 (Diablo Hyterm), and **think** (HP ThinkJet).

- **-e**

  Produce equally-spaced words in adjusted lines, using full terminal resolution.

- **-h**

  Use output tabs during horizontal spacing to speed output and reduce output character count. Tab settings are assumed to be every 8 nominal character widths.

## FILES

- **/tmp/trtmp\***

  temporary file

- **/tmac/tmac.\***

  standard macro files

- **/troff/term/\***

  terminal driving tables for *nroff*

- **/troff/font/\***

  font width tables for *troff*

## SOURCE

**/src/cmd/troff**

## SEE ALSO

[*lpr*(1)](/lpr/1.md), [*proof*(1)](/proof/1.md), *tr2post*(1), [*eqn*(1)](/eqn/1.md), [*tbl*(1)](/tbl/1.md), [*pic*(1)](/pic/1.md), [*grap*(1)](/grap/1.md), *doctype*(1), *ms*(7), *image*(7), [*tex*(1)](/tex/1.md), [*deroff*(1)](/deroff/1.md)\
 J. F. Ossanna and B. W. Kernighan, \`\`Troff User's Manual''\
 B. W. Kernighan, \`\`A TROFF Tutorial'', *Unix Research System Programmer's Manual,* Tenth Edition, Volume 2.
