# info > DITROFF

---
type: CommandReference
command: ditroff
mode: man
section: 7
source: man-pages
---

## Quick Reference

- `groff file` — format a document using the GNU roff system, which automatically handles device postprocessing
- `troff file` — invoke the modern troff (synonym for ditroff) directly

## Name

**ditroff** — classical device-independent roff

## Synopsis

No direct command; ditroff is a historical stage of the roff system. Today, it is invoked via `troff` or `groff`.

## Options

No options are documented for ditroff itself.

## Examples

The standard way to use ditroff today is through the GNU roff wrapper:

shell
groff document.ms
This runs the troff formatter and the appropriate postprocessor for the default output device.

## See Also

- [roff(7)](https://man7.org/linux/man-pages/man7/roff.7.html) — history and conceptual overview of roff systems
- [troff(1)](https://man7.org/linux/man-pages/man1/troff.1.html) — GNU implementation of (di)troff
- [groff(1)](https://man7.org/linux/man-pages/man1/groff.1.html) — GNU roff program
- [groff_out(5)](https://man7.org/linux/man-pages/man5/groff_out.5.html) — groff intermediate output language
- CSTR #54 — 1992 revision of the Nroff/Troff User's Manual by Ossanna and Kernighan
- CSTR #97 — "A Typesetter-independent TROFF" by Kernighan, original documentation of ditroff

## Exit Codes

No exit codes are documented for ditroff.