NAME ditroff - classical device independent roff

DESCRIPTION The name ditroff once marked a development level of the troff text pro- cessing system. In actual roff(7) systems, the name troff is used as a synonym for ditroff.

The first roff system was written by Joe Osanna around 1973. It sup- ported only two output devices, the nroff program produced text ori- ented tty output, while the troff program generated graphical output for exactly one output device, the Wang Graphic Systems CAT typesetter.

In 1979, Brian Kernighan rewrote troff to support more devices by cre- ating an intermediate output format for troff that can be fed into postprocessor programs which actually do the printout on the device. Kernighan s version marks what is known as classical troff today. In order to distinguish it from Osannas original mono-device version, it was called ditroff (device independent troff) on some systems, though this naming isnt mentioned in the classical documentation.

Today, any existing roff system is based on Kernighans multi-device troff. The distinction between troff and ditroff isn t necessary any longer, for each modern troff provides already the complete functional- ity of ditroff. On most systems, the name troff is used to denote ditroff.

The easiest way to use ditroff is the GNU roff system, groff. The groff(1) program is a wrapper around (di)troff that automatically han- dles postprocessing.

SEE ALSO [CSTR #54] The 1992 revision of the Nroff/Troff Users Manual by J. F. Osanna and Brian Kernighan, see Bell Labs CSTR #54 http://cm.bell-labs.com/cm/cs/cstr/ 54.ps.gz.

[CSTR #97] A Typesetter-independent TROFF by Brian Kernighan is the origi- nal documentation of the first multi-device troff (ditroff), see Bell Labs CSTR #97 http://cm.bell-labs.com/cm/cs/cstr/ 97.ps.gz.

roff(7) This document gives details on the history and concepts of roff.

troff(1) The actual implementation of ditroff.

groff(1) The GNU roff program and pointers to all documentation around groff.

groff_out(5) The groff version of the intermediate output language, the basis for multi-devicing.

AUTHORS Copyright (C) 2001, 2002 Free Software Foundation, Inc.

This document is distributed under the terms of the FDL (GNU Free Documentation License) version 1.1 or later. You should have received a copy of the FDL on your system, it is also available on-line at the GNU copyleft site http://www.gnu.org/copyleft/fdl.html.

This document is part of groff, the GNU roff distribution. It was written by Bernd Warken bwarken@mayn.de and is maintained by Werner Lemberg wl@gnu.org.

Groff Version 19 February 2002 DITROFF(7)