.ig groff.man Last update: 14 July 2002 Copyright (C) 1989, 2002 Free Software Foundation, Inc. Rewritten in 2002 by Bernd Warken <bwarken@mayn.de> Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being this .ig-section and AUTHOR, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the Free Documentation License is included as a file called FDL in the main directory of the groff source package. .. . .\" -------------------------------------------------------------------- .\" Setup .\" -------------------------------------------------------------------- . .mso www.tmac . .\" set adjust to both .ad b . .\" fonts of fixed length . .if n \{\ . mso tty-char.tmac . ftr CR R . ftr CI I . ftr CB B .\} . .if '\*[.T]'dvi' \ . ftr CB CW . .\" -------------------------------------------------------------------- .\" String definitions . .ds @- "\-\" .ds @-- "\-\^\-\" . .ds Ellipsis .\|.\|.\" . . .\" -------------------------------------------------------------------- .\" Begin of macro definitions .de c .\" this is like a comment request when escape mechanism is off .. .eo . .c -------------------------------------------------------------------- .de TP+ .br .ns .TP \$1 .. .c -------------------------------------------------------------------- .c Like TP, but if specified indent is more than half .c the current line-length - indent, use the default indent. .de Tp . ie \n[.$]=0:((0\$1)*2u>(\n.lu-\n(.iu)) .TP . el .TP "\$1" .. .c -------------------------------------------------------------------- .de Text . nop \)\$* .. .c -------------------------------------------------------------------- .de Synopsis . ds @arg1 \$1\" . nr @old_indent \n[.i] . ad l . in +\w'\f[B]\*[@arg1]\0'u . ti \n[@old_indent]u . B \*[@arg1]\0\c . rr @old_indent . rm @arg1 .. .c -------------------------------------------------------------------- .de EndSynopsis . ad . in .. .c -------------------------------------------------------------------- .c ShortOpt[] (name [arg]) .c .c short option in synopsis .c .de ShortOpt[] . if \n[.$]=0 \ . return . ds @opt \$1\" . shift . ie \n[.$]=0 \ . Text \f[R][\f[]\f[CB]\*[@-]\*[@opt]\f[]\f[R]]\f[] . el \ . Text \f[R][\f[]\f[CB]\*[@-]\*[@opt]\~\f[]\f[I]\/\$*\f[]\f[R]]\f[] . rm @opt .. .c -------------------------------------------------------------------- .c Option in synopsis (short option) .de SynOpt . if \n[.$]=0 \ . return . ds @opt \$1\" . shift . ie \n[.$]=0 \ . Text \f[R][\f[]\f[CB]\*[@-]\*[@opt]\f[]\f[R]]\f[] . el \ . Text \f[R][\f[]\f[CB]\*[@-]\*[@opt]\~\f[]\f[I]\/\$*\f[]\f[R]]\f[] . rm @opt .. .c -------------------------------------------------------------------- .c ShortOpt ([char [punct]]) .c .c `-c' somwhere in the text .c second arg is punctuation .c .de ShortOpt . ds @opt \$1\" . shift . Text \f[CB]\*[@-]\*[@opt]\f[]\/\$* . rm @opt .. .c -------------------------------------------------------------------- .c LongOpt ([name [punct]]) .c .c `--name' somwhere in the text .c second arg is punctuation .c .de LongOpt . ds @opt \$1\" . shift . Text \f[CB]\*[@--]\f[]\f[B]\*[@opt]\f[]\/\$* . rm @opt .. .c -------------------------------------------------------------------- .c OptDef (shortopt [longopt [argument]]) .c .c option documentation .c args : `shortopt', `longopt' can be "" .c .de OptDef . ds @short . ds @long . ds @arg . if \n[.$]>=1 \{\ . ds @arg1 "\$1\" . if !'\*[@arg1]'' \ . ds @short "\f[CB]\*[@-]\*[@arg1]\f[]\" . if \n[.$]>=2 \{\ . if !'\*[@short]'' \ . as @short \f[CW]\0\f[] . ds @arg2 "\$2\" . if !'\*[@arg2]'' \ . ds @long "\f[CB]\*[@--]\f[]\f[B]\*[@arg2]\f[]\" . if \n[.$]>=3 \{\ . if !'\*[@long]'' \ . as @long \|=\|\" . shift 2 . ds @arg \f[I]\$*\" . \} . \} . \} . IP "\f[R]\*[@short]\*[@long]\*[@arg]\f[]" . rm @arg . rm @arg1 . rm @arg2 . rm @short . rm @long .. .c -------------------------------------------------------------------- .c Continuation of an OptDef header. .de OptDef+ . br . ns . OptDef \$@ .. .c -------------------------------------------------------------------- .c Environment variable .de EnvVar . SM . BR \$1 \$2 .. .c -------------------------------------------------------------------- .c a shell command line .de ShellCommand . nr @font \n[.f] . c replace argument separator by unbreakable space . ds @args \$1\"" . shift . while (\n[.$]>0) \{\ . ds @args \*[@args]\~\$1 . shift . \} . br . ad l . nh . Text \f[I]sh#\h'1m'\f[P]\f[CR]\*[@args]\f[P]\&\" . ft R . ft P . hy . ad . ft \n[@font] . br . rr @font . rm @args .. .c -------------------------------------------------------------------- .c `char or string' .de Quoted . ft CR . Text \[oq]\$*\[cq] . ft .. .c -------------------------------------------------------------------- .c End of macro definitions .ec . . .\" -------------------------------------------------------------------- .\" Title .\" -------------------------------------------------------------------- . .TH GROFF @MAN1EXT@ "@MDATE@" "Groff Version @VERSION@" .SH NAME groff \- front-end for the groff document formatting system . . .\" -------------------------------------------------------------------- .SH SYNOPSIS .\" -------------------------------------------------------------------- . .ad l .Synopsis groff .ShortOpt[] abcegilpstzCEGNRSUVXZ .ShortOpt[] d cs .ShortOpt[] f fam .ShortOpt[] F dir .ShortOpt[] I dir .ShortOpt[] L arg .ShortOpt[] m name .ShortOpt[] M dir .ShortOpt[] n num .ShortOpt[] o list .ShortOpt[] P arg .ShortOpt[] r cn .ShortOpt[] T dev .ShortOpt[] w name .ShortOpt[] W name .RI [ file .Text \*[Ellipsis]] .EndSynopsis . .Synopsis groff .ShortOpt h | .LongOpt help .EndSynopsis . .Synopsis groff .ShortOpt v | .LongOpt version .RI [ option .Text \*[Ellipsis]] .EndSynopsis . .P The command line is parsed according to the usual GNU convention. . The whitespace between a command line option and its argument is optional. . Options can be grouped behind a single .ShortOpt (minus character). . A filename of .ShortOpt (minus character) denotes the standard input. . . .\" -------------------------------------------------------------------- .SH DESCRIPTION .\" -------------------------------------------------------------------- . This document describes the .B groff program, the main front-end for the .I groff document formatting system. . The .I groff program and macro suite is the implementation of a .BR roff (@MAN7EXT@) system within the free software collection .URL http://\:www.gnu.org "GNU" . . The .I groff system has all features of the classical .IR roff , but adds many extensions. . .P The .B groff program allows to control the whole .I groff system by comand line options. . This is a great simplification in comparison to the classical case (which uses pipes only). . . .\" -------------------------------------------------------------------- .SH OPTIONS .\" -------------------------------------------------------------------- . As .B groff is a wrapper program for .B @g@troff both programs share a set of options. . But the .B groff program has some additional, native options and gives a new meaning to some .B @g@troff options. . On the other hand, not all .B @g@troff options can be fed into .BR groff . . . .\" -------------------------------------------------------------------- .SS Native groff Options .\" -------------------------------------------------------------------- . The following options either do not exist for .B @g@troff or are differently interpreted by .BR groff . . . .OptDef e Preprocess with .BR @g@eqn . . . .OptDef g Preprocess with .BR @g@grn . . . .OptDef G Preprocess with .BR grap . . . .OptDef h help Print a help message. . . .OptDef I "" dir Add search directory for .BR \%@g@soelim (@MAN1EXT@). This option implies the .ShortOpt s option. . . .OptDef l Send the output to a spooler program for printing. . The command that should be used for this is specified by the .B print command in the device description file, see .BR \%groff_font (@MAN5EXT@). If this command is not present, the output is piped into the .BR lpr (1) program by default. . See options .ShortOpt L and .ShortOpt X . . . .OptDef L "" arg Pass .I arg to the spooler program. Several arguments should be passed with a separate .ShortOpt L option each. . Note that .B groff does not prepend .ShortOpt\" just a minus sign (a minus sign) to .I arg before passing it to the spooler program. . . .OptDef N Don't allow newlines within .I eqn delimiters. . This is the same as the .ShortOpt N option in .BR @g@eqn . . . .OptDef p Preprocess with .BR @g@pic . . . .OptDef P "" "-option" .OptDef+ P "" "-option \f[CB]-P\f[] arg" Pass .I -option or .I -option arg to the postprocessor. . The option must be specified with the necessary preceding minus sign(s) .Quoted \*[@-] or .Quoted \*[@--] because groff does not prepend any dashes before passing it to the postprocessor. . For example, to pass a title to the gxditview postprocessor, the shell command .IP .ShellCommand groff -X -P -title -P 'groff it' \f[I]foo\f[] .IP is equivalent to .IP .ShellCommand groff -X -Z \f[I]foo\f[] | gxditview -title 'groff it' - . . .OptDef R Preprocess with .BR @g@refer . . No mechanism is provided for passing arguments to .B @g@refer because most .B @g@refer options have equivalent language elements that can be specified within the document. . See .BR \%@g@refer (@MAN1EXT@) for more details. . . .OptDef s Preprocess with .BR @g@soelim . . . .OptDef S Safer mode. . Pass the .ShortOpt S option to .B @g@pic and disable the following .B @g@troff requests: .BR .open , .BR .opena , .BR .pso , .BR .sy , and .BR .pi . For security reasons, safer mode is enabled by default. . . .OptDef t Preprocess with .BR @g@tbl . . . .OptDef T "" dev Set output device to .IR dev . The possible values in .I groff are .BR ascii , .BR cp1047 , .BR dvi , .BR html , .BR latin1 , .BR lbp , .BR lj4 , .BR ps , .BR utf8 , .BR X75 , and .BR X100 . . Additionally, .B X75-12 and .B X100-12 are available for documents which use 12\|pt as the base document size. . The default device is .BR @DEVICE@ . . . .OptDef U Unsafe mode. . Reverts to the (old) unsafe behaviour; see option .ShortOpt S . . . .OptDef v version Output version information of .B groff and of all programs that are run by it; that is, the given command line is parsed in the usual way, passing .ShortOpt v to all subprograms. . . .OptDef V Output the pipeline that would be run by .BR groff (as a wrapper program), but do not execute it. . . .OptDef X Use .B gxditview instead of using the usual postprocessor to (pre)view a document. . The printing spooler behavior as outlined with options .ShortOpt l and .ShortOpt L is carried over to .BR \%gxditview (@MAN1EXT@) by determining an argument for the .B -printCommand option of .BR \%gxditview (@MAN1EXT@). . This sets the default .B Print action and the corresponding menu entry to that value. . .ShortOpt X only produces good results with .ShortOpt Tps , .ShortOpt TX75 , .ShortOpt TX75-12 , .ShortOpt TX100 , and .ShortOpt TX100-12 . . The default resolution for previewing .ShortOpt Tps output is 75\|dpi; this can be changed by passing the .ShortOpt resolution option to .BR gxditview , for example . .IP .ShellCommand groff -X -P-resolution -P100 -man foo.1 . . .OptDef z Suppress output generated by .BR @g@troff . Only error messages will be printed. . . .OptDef Z Do not postprocess the output of .B @g@troff that is normally called automatically by .BR groff . This will print the intermediate output to standard output; see .BR \%groff_out (@MAN5EXT@). . . .\" -------------------------------------------------------------------- .SS Tranparent Options .\" -------------------------------------------------------------------- . The following options are transparently handed over to the formatter program .B @g@troff that is called by groff subsequently. . These options are described in more detail in .BR @g@troff (@MAN1EXT@). . .OptDef a ascii approximation of output. . .OptDef b backtrace on error or warning. . .OptDef c disable color output. . .OptDef C enable compatibility mode. . .OptDef d "" cs .OptDef+ d "" name=s define string. . .OptDef E disable .B @g@troff error messages. . .OptDef f "" fam set default font family. . .OptDef F "" dir set path for font DESC files. . .OptDef i process standard input after the specified input files. . .OptDef m "" name include macro file \f[I]name\f[]\f[B].tmac\f[] (or \f[B]tmac.\f[]\f[I]name\f[]); see also .BR \%groff_tmac (@MAN5EXT@). . .OptDef M "" dir path for macro files. . .OptDef n "" num number the first page .IR num . . .OptDef o "" list output only pages in .IR list . . .OptDef r "" cn .OptDef+ r "" name=n set number register. . .OptDef w "" name enable warning .IR name . . .OptDef W "" name disable warning .IR name . . . .\" -------------------------------------------------------------------- .SH "USING GROFF" .\" -------------------------------------------------------------------- . The .I groff system implements the infrastructure of classical roff; see .BR roff (@MAN7EXT@) for a survey on how a roff system works in general. . Due to the front-end programs available within the groff system, using .I groff is much easier than .IR "classical roff" . . This section gives an overview of the parts that consitute the groff system. . It complements .BR roff (@MAN7EXT@) with groff-specific features. . This section can be regarded as a guide to the documentation around the groff system. . . .\" -------------------------------------------------------------------- .SS Front-ends .\" -------------------------------------------------------------------- . The .B groff program is a wrapper around the .BR @g@troff (@MAN1EXT@) program. . It allows to specify the preprocessors by command line options and automatically runs the postprocessor that is appropriate for the selected device. . Doing so, the sometimes tedious piping mechanism of classical .BR roff (@MAN7EXT@) can be avoided. . .P The .BR grog (@MAN1EXT@) program can be used for guessing the correct groff command line to format a file. . .P The .BR \%groffer (@MAN1EXT@) program is an allround-viewer for groff files and man pages. . . .\" -------------------------------------------------------------------- .SS Preprocessors .\" -------------------------------------------------------------------- . The groff preprocessors are reimplementations of the classical preprocessors with moderate extensions. . The preprocessors distributed with the .I groff package are . .TP .BR @g@eqn (@MAN1EXT@) for mathematical formul\(ae, .TP .BR @g@grn (@MAN1EXT@) for including .BR gremlin (1) pictures, .TP .BR @g@pic (@MAN1EXT@) for drawing diagrams, .TP .BR \%@g@refer (@MAN1EXT@) for bibliographic references, .TP .BR \%@g@soelim (@MAN1EXT@) for including macro files from standard locations, . .P and .TP .BR @g@tbl (@MAN1EXT@) for tables. . .P Besides these, there are some internal preprocessors that are automatically run with some devices. . These aren't visible to the user. . . .\" -------------------------------------------------------------------- .SS "Macro Packages" .\" -------------------------------------------------------------------- . Macro packages can be included by option .ShortOpt m . . The groff system implements and extends all classical macro packages in a compatible way and adds some packages of its own. . Actually, the following macro packages come with .IR groff : . .TP .B man The traditional man page format; see .BR \%groff_man (@MAN7EXT@). It can be specified on the command line as .ShortOpt man or .ShortOpt m .BR man . . .TP .B mandoc The general package for man pages; it automatically recognizes whether the documents uses the .I man or the .I mdoc format and branches to the corresponding macro package. . It can be specified on the command line as .ShortOpt mandoc or .ShortOpt m .BR mandoc . . .TP .B mdoc The BSD-style man page format; see .BR \%groff_mdoc (@MAN7EXT@). It can be specified on the command line as .ShortOpt mdoc or .ShortOpt m .BR mdoc . . .TP .B me The classical .I me document format; see .BR \%groff_me (@MAN7EXT@). It can be specified on the command line as .ShortOpt me or .ShortOpt m .BR me . . .TP .B mm The classical .I mm document format; see .BR \%groff_mm (@MAN7EXT@). It can be specified on the command line as .ShortOpt mm or .ShortOpt m .BR mm . . .TP .B ms The classical .I ms document format; see .BR \%groff_ms (@MAN7EXT@). It can be specified on the command line as .ShortOpt ms or .ShortOpt m .BR ms . . .TP .B www HTML-like macros for inclusion in arbitrary groff documents; see .BR \%groff_www (@MAN7EXT@). . .P Details on the naming of macro files and their placement can be found in .BR \%groff_tmac (@MAN5EXT@). . . .\" -------------------------------------------------------------------- .SS "Programming Language" .\" -------------------------------------------------------------------- . General concepts common to all roff programming languages are described in .BR roff (@MAN7EXT@). . .P The groff extensions to the classical troff language are documented in .BR \%groff_diff (@MAN7EXT@). . .P The groff language as a whole is described in the (still incomplete) .IR "groff info file" ; a short (but complete) reference can be found in .BR groff (@MAN7EXT@). . . .\" -------------------------------------------------------------------- .SS Formatters .\" -------------------------------------------------------------------- . The central roff formatter within the groff system is .BR @g@troff (@MAN1EXT@). It provides the features of both the classical troff and nroff, as well as the groff extensions. . The command line option .ShortOpt C switches .B @g@troff into .I "compatibility mode" which tries to emulate classical roff as much as possible. . .P There is a shell script .BR @g@nroff (@MAN1EXT@) that emulates the behavior of classical nroff. . It tries to automatically select the proper output encoding, according to the current locale. . .P The formatter program generates .IR "intermediate output" ; see .BR \%groff_out (@MAN7EXT@). . . .\" -------------------------------------------------------------------- .SS Devices .\" -------------------------------------------------------------------- . In roff, the output targets are called .IR devices . A device can be a piece of hardware, e.g. a printer, or a software file format. . A device is specified by the option .ShortOpt T . The groff devices are as follows. . .TP .B ascii Text output using the .BR ascii (7) character set. . .TP .B cp1047 Text output using the EBCDIC code page IBM cp1047 (e.g. OS/390 Unix). . .TP .B dvi TeX DVI format. . .TP .B html HTML output. . .TP .B latin1 Text output using the ISO Latin-1 (ISO 8859-1) character set; see .BR iso_8859_1 (7). . .TP .B lbp Output for Canon CAPSL printers (LBP-4 and LBP-8 series laser printers). . .TP .B lj4 HP LaserJet4-compatible (or other PCL5-compatible) printers. . .TP .B ps PostScript output; suitable for printers and previewers like .BR gv (1). . .TP .B utf8 Text output using the Unicode (ISO 10646) character set with UTF-8 encoding; see .BR unicode (7). . .TP .B X75 75dpi X Window System output suitable for the previewers .BR xditview (1x) and .BR \%gxditview (@MAN1EXT@). A variant for a 12\|pt document base font is .BR X75-12 . . .TP .B X100 100dpi X Window System output suitable for the previewers .BR xditview (1x) and .BR \%gxditview (@MAN1EXT@). A variant for a 12\|pt document base font is .BR X100-12 . . .P The postprocessor to be used for a device is specified by the .B postpro command in the device description file; see .BR \%groff_font (@MAN5EXT@). . This can be overridden with the .B \-X option. . .P The default device is .BR @DEVICE@ . . . .\" -------------------------------------------------------------------- .SS Postprocessors .\" -------------------------------------------------------------------- . groff provides 3\~hardware postprocessors: . .TP .BR \%grolbp (@MAN1EXT@) for some Canon printers, .TP .BR \%grolj4 (@MAN1EXT@) for printers compatible to the HP LaserJet\~4 and PCL5, .TP .BR \%grotty (@MAN1EXT@) for text output using various encodings, e.g. on text-oriented terminals or line-printers. . .P Today, most printing or drawing hardware is handled by the operating system, by device drivers, or by software interfaces, usally accepting PostScript. . Consequently, there isn't an urgent need for more hardware device postprocessors. . .P The groff software devices for conversion into other document file formats are . .TP .BR \%grodvi (@MAN1EXT@) for the DVI format, .TP .BR \%grohtml (@MAN1EXT@) for HTML format, .TP .BR grops (@MAN1EXT@) for PostScript. . .P Combined with the many existing free conversion tools this should be sufficient to convert a troff document into virtually any existing data format. . . .\" -------------------------------------------------------------------- .SS Utilities .\" -------------------------------------------------------------------- . The following utility programs around groff are available. . .TP .BR \%addftinfo (@MAN1EXT@) Add information to troff font description files for use with groff. . .TP .BR \%afmtodit (@MAN1EXT@) Create font description files for PostScript device. . .TP .BR \%groffer (@MAN1EXT@) General viewer program for groff files and man pages. . .TP .BR \%gxditview (@MAN1EXT@) The groff X viewer, the GNU version of xditview. . .TP .BR \%hpftodit (@MAN1EXT@) Create font description files for lj4 device. . .TP .BR \%indxbib (@MAN1EXT@) Make inverted index for bibliographic databases. . .TP .BR lkbib (@MAN1EXT@) Search bibliographic databases. . .TP .BR \%lookbib (@MAN1EXT@) Interactively search bibliographic databases. . .TP .BR \%pfbtops (@MAN1EXT@) Translate a PostScript font in .pfb format to ASCII. . .TP .BR \%tfmtodit (@MAN1EXT@) Create font description files for TeX DVI device. . .TP .BR \%xditview (1x) roff viewer distributed with X window. . . .\" -------------------------------------------------------------------- .SH ENVIRONMENT .\" -------------------------------------------------------------------- . Normally, the path separator in the following environment variables is the colon; this may vary depending on the operating system. . For example, DOS and Windows use a semicolon instead. . .TP .EnvVar GROFF_BIN_PATH This search path, followed by .EnvVar $PATH , will be used for commands that are executed by .BR groff . . If it is not set then the directory where the groff binaries were installed is prepended to .EnvVar PATH . . .TP .EnvVar GROFF_COMMAND_PREFIX When there is a need to run different roff implementations at the same time .I groff provides the facility to prepend a prefix to most of its programs that could provoke name clashings at run time (default is to have none). . Historically, this prefix was the character .BR g , but it can be anything. . For example, .BR gtroff stood for .IR groff 's .BR troff , .BR gtbl for the .I groff version of .BR tbl . . By setting .EnvVar GROFF_COMMAND_PREFIX to different values, the different roff installations can be addressed. . More exactly, if it is set to prefix .I xxx then .B groff as a wrapper program will internally call .IB xxx troff instead of .BR troff . This also applies to the preprocessors .BR \%eqn , .BR \%grn , .BR \%pic , .BR \%refer , .BR \%tbl , .BR \%soelim , and to the utilities .B \%@g@indxbib and .BR \%@g@lookbib . . This feature does not apply to any programs different from the ones above (most notably .B groff itself) since they are unique to the groff package. . . .TP .EnvVar GROFF_FONT_PATH A list of directories in which to search for the .BI dev name directory in addition to the default ones. . See .BR @g@troff (@MAN1EXT@) and .BR \%groff_font (@MAN5EXT@) for more details. . . .TP .EnvVar GROFF_TMAC_PATH A list of directories in which to search for macro files in addition to the default directories. . See .BR @g@troff (@MAN1EXT@) and .BR \%groff_tmac (@MAN5EXT@) for more details. . . .TP .EnvVar GROFF_TMPDIR The directory in which temporary files will be created. . If this is not set but the environment variable .EnvVar TMPDIR instead, temporary files will be created in the directory .EnvVar $TMPDIR . . Otherwise temporary files will be created in .BR /tmp . The .BR \%@g@refer (@MAN1EXT@), .BR \%groffer (@MAN1EXT@), .BR \%grohtml (@MAN1EXT@), and .BR grops (@MAN1EXT@) commands use temporary files. . . .TP .EnvVar GROFF_TYPESETTER Preset the default device. . If this is not set the .B @DEVICE@ device is used as default. . This device name is overwritten by the option .ShortOpt T . . . .\" -------------------------------------------------------------------- .SH FILES .\" -------------------------------------------------------------------- . There are some directories in which .I groff installs all of its data files. . Due to different installation habits on different operating systems, their locations are not absolutely fixed, but their function is clearly defined and coincides on all systems. . . .\" -------------------------------------------------------------------- .SS "groff Macro Directory" .\" -------------------------------------------------------------------- . This contains all information related to macro packages. . Note that more than a single directory is searched for those files as documented in .BR \%groff_tmac (@MAN5EXT@). . For the groff installation corresponding to this document, it is located at .IR @MACRODIR@ . . The following files contained in the .I groff macro directory have a special meaning: . . .TP .B troffrc Initialization file for troff. . This is interpreted by .B @g@troff before reading the macro sets and any input. . . .TP .B troffrc-end Final startup file for troff, it is parsed after all macro sets have been read. . . .TP .IB name .tmac .TP+ .BI tmac. name Macro file for macro package .IR name . . . .\" -------------------------------------------------------------------- .SS "groff Font Directory" .\" -------------------------------------------------------------------- . This contains all information related to output devices. . Note that more than a single directory is searched for those files; see .BR @g@troff (@MAN1EXT@). . For the groff installation corresponding to this document, it is located at .IR @FONTDIR@ . . The following files contained in the .I groff font directory have a special meaning: . . .TP .BI dev name /DESC Device description file for device .IR name , see .BR \%groff_font (@MAN5EXT@). . . .TP .BI dev name / F Font file for font .I F of device .IR name . . . .\" -------------------------------------------------------------------- .SH EXAMPLES .\" -------------------------------------------------------------------- . The following example illustrates the power of the .B groff program as a wrapper around .BR @g@troff . . .P To process a roff file using the preprocessors .B tbl and .B pic and the .B me macro set, classical troff had to be called by . .P .ShellCommand pic foo.me | tbl | troff -me -Tlatin1 | grotty . .P Using .BR groff , this pipe can be shortened to the equivalent command .P .ShellCommand groff -p -t -me -T latin1 foo.me . .P An even easier way to call this is to use .BR grog (@MAN1EXT@) to guess the preprocessor and macro options and execute the generated command (by specifying shell left quotes) .P .ShellCommand `grog -Tlatin1 foo.me` . .P The simplest way is to view the contents in an automated way by calling . .P .ShellCommand groffer foo.me . . .\" -------------------------------------------------------------------- .SH BUGS .\" -------------------------------------------------------------------- . .P On EBCDIC hosts (e.g. OS/390 Unix), output devices .B ascii and .B latin1 aren't available. . Similarly, output for EBCDIC code page .B cp1047 is not available on ASCII based operating systems. . .P Report bugs to bug-groff@gnu.org. . Include a complete, self-contained example that will allow the bug to be reproduced, and say which version of groff you are using. . . .\" -------------------------------------------------------------------- .SH AVAILABILITY .\" -------------------------------------------------------------------- . Information on how to get groff and related information is available at the .URL http://\:www.gnu.org/\:software/\:groff "GNU website" . The most recent released version of groff is available for anonymous ftp at the .URL ftp://ftp.ffii.org/\:pub/\:groff/\:devel/\:groff-current.tar.gz \ "groff development site" . . .P Three groff mailing lists are available: .TP .MTO bug-groff@gnu.org for reporting bugs, . .TP .MTO groff@gnu.org for general discussion of groff, . .TP .MTO groff-commit@ffii.org a read-only list showing logs of commitments to the CVS repository. . .P Details on CVS access and much more can be found in the file .B README at the top directory of the groff source package. . .P There is a free implementation of the .B grap preprocessor, written by .MTO faber@lunabase.org " Ted Faber" . . The actual version can be found at the . .URL http://\:www.lunabase.org/\:~faber/\:Vault/\:software/\:grap/ \ "grap website" . This is the only grap version supported by groff. . . .\" -------------------------------------------------------------------- .SH AUTHORS .\" -------------------------------------------------------------------- . Copyright \(co 1989, 2002 Free Software Foundation, Inc. . .P 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 .URL http://\:www.gnu.org/\:copyleft/\:fdl.html "GNU copyleft site" . . .P This document is based on the original groff man page written by .MTO jjc@jclark.com "James Clark" . . It was rewritten, enhanced, and put under the FDL license by .MTO bwarken@mayn.de "Bernd Warken" . . It is maintained by .MTO wl@gnu.org "Werner Lemberg" . . .P .I groff is a GNU free software project. . All parts of the .I groff package are protected by GNU copyleft licenses. . The software files are distributed under the terms of the GNU General Public License (GPL), while the documentation files mostly use the GNU Free Documentation License (FDL). . . .\" -------------------------------------------------------------------- .SH "SEE ALSO" .\" -------------------------------------------------------------------- . The .IR "groff info file" contains all information on the groff system within a single document. . Beneath the detailed documentation of all aspects, it provides examples and background information. . See .BR info (1) on how to read it. . .P Due to its complex structure, the groff system has many man pages. . They can be read with .BR man (1) or .BR \%groffer (@MAN1EXT@). . .TP Introduction, history and further readings: .BR roff (@MAN7EXT@). . .TP Viewer for groff files: .BR \%groffer (@MAN1EXT@), .BR \%gxditview (@MAN1EXT@), .BR \%xditview (1x). . .TP Wrapper programs for formatters: .BR \%groff (@MAN1EXT@), .BR \%grog (@MAN1EXT@). . .TP Roff preprocessors: .BR \%@g@eqn (@MAN1EXT@), .BR \%@g@grn (@MAN1EXT@), .BR \%@g@pic (@MAN1EXT@), .BR \%@g@refer (@MAN1EXT@), .BR \%@g@soelim (@MAN1EXT@), .BR \%@g@tbl (@MAN1EXT@), .BR grap (1). . .TP Roff language with the groff extensions: .BR \%groff (@MAN7EXT@), .BR \%groff_char (@MAN7EXT@), .BR \%groff_diff (@MAN7EXT@), .BR \%groff_font (@MAN5EXT@). . .TP Roff formatter programs: .BR \%@g@nroff (@MAN1EXT@), .BR \%@g@troff (@MAN1EXT@), .BR ditroff (@MAN7EXT@). . .TP The intermediate output language: .BR \%groff_out (@MAN7EXT@). . .TP Postprocessors for the output devices: .BR \%grodvi (@MAN1EXT@), .BR \%grohtml (@MAN1EXT@), .BR \%grolbp (@MAN1EXT@), .BR \%grolj4 (@MAN1EXT@), .BR \%grops (@MAN1EXT@), .BR \%grotty (@MAN1EXT@). . .TP Groff macro packages and macro-specific utilities: .BR \%groff_tmac (@MAN5EXT@), .BR \%groff_man (@MAN7EXT@), .BR \%groff_mdoc (@MAN7EXT@), .BR \%groff_me (@MAN7EXT@), .BR \%groff_mm (@MAN7EXT@), .BR \%groff_mmse (@MAN7EXT@), .BR \%groff_mom (@MAN7EXT@), .BR \%groff_ms (@MAN7EXT@), .BR \%groff_www (@MAN7EXT@), .BR \%mmroff (@MAN7EXT@). . .TP The following utilities are available: .BR \%addftinfo (@MAN1EXT@), .BR \%afmtodit (@MAN1EXT@), .BR \%eqn2graph (@MAN1EXT@), .BR \%groffer (@MAN1EXT@), .BR \%gxditview (@MAN1EXT@), .BR \%hpftodit (@MAN1EXT@), .BR \%@g@indxbib (@MAN1EXT@), .BR \%@g@lookbib (@MAN1EXT@), .BR \%pfbtops (@MAN1EXT@), .BR \%pic2graph (@MAN1EXT@), .BR \%tfmtodit (@MAN1EXT@). . . .\" -------------------------------------------------------------------- .\" Emacs setup .\" -------------------------------------------------------------------- . .\" Local Variables: .\" mode: nroff .\" End: