# GROFF(1) - man - phpMan

[GROFF(1)](https://www.chedong.com/phpMan.php/man/GROFF/1/markdown)                               General Commands Manual                              [GROFF(1)](https://www.chedong.com/phpMan.php/man/GROFF/1/markdown)



## NAME
       groff - front-end for the groff document formatting system

## SYNOPSIS
       **groff** [**-abcegijklpstzCEGNRSUVXZ**] [**-d** _cs_] [**-D** _arg_] [**-f** _fam_] [**-F** _dir_] [**-I** _dir_] [**-K** _arg_]
             [**-L** _arg_] [**-m** _name_] [**-M** _dir_] [**-n** _num_] [**-o** _list_] [**-P** _arg_] [**-r** _cn_] [**-T** _dev_] [**-w** _name_]
             [**-W** _name_] [_file_ ...]

### groff -h
### groff --help

       **groff** **-v** [_option_ ...]
       **groff** **--version** [_option_ ...]

## DESCRIPTION
       This  document describes the **groff** program, the main front-end for the _groff_ document format‐
       ting system.  The _groff_ program and macro suite is the implementation  of  a  [**roff**(7)](https://www.chedong.com/phpMan.php/man/roff/7/markdown)  system
       within  the free software collection GNU ⟨<http://www.gnu.org>⟩.  The _groff_ system has all fea‐
       tures of the classical _roff_, but adds many extensions.

       The **groff** program allows control of the whole _groff_ system by command-line options.  This  is
       a great simplification in comparison to the classical case (which uses pipes only).

## OPTIONS
       The  command  line  is parsed according to the usual GNU convention.  Whitespace is permitted
       between a command-line option and its argument.  Options can be grouped behind a  single  ‘-’
       (minus character).  A filename of **-** (minus character) denotes the standard input.

       As  **groff** is a wrapper program for **troff** both programs share a set of options.  But the **groff**
       program has some additional, native options and gives a new meaning to  some  **troff**  options.
       On the other hand, not all **troff** options can be fed into **groff**.

### Native groff Options
       The following options either do not exist for **troff** or are differently interpreted by **groff**.

### -D -k

### -e

### -g

### -G -p

### -h
       **--help** Print a help message.

### -I
              command line and those named in **.psbb** and **.so** requests, and **\X'ps:**  **import'**  ,  **\X'ps:**
              **file'**  and  **\X'pdf:** **pdfpic'** escapes).  The current directory is always searched first.
              This option may be specified more than once; the directories are searched in the order
              specified.   No  directory  search  is performed for files specified using an absolute
              path.  This option implies the **-s** option.

### -j -p

### -k
              **preconv**'s manual page for its behaviour if no **-K** (or **-D**) option is specified.

### -K -k

### -l
              for this is specified by the  **print**  command  in  the  device  description  file,  see
              **groff**___**[font**(5)](https://www.chedong.com/phpMan.php/man/font/5/markdown).   If  this  command is not present, the output is piped into the [**lpr**(1)](https://www.chedong.com/phpMan.php/man/lpr/1/markdown)
              program by default.  See options **-L** and **-X**.

### -L
              -L  option  each.   Note  that **groff** does not prepend ‘-’ (a minus sign) to _arg_ before
              passing it to the spooler program.

### -N -N

### -p

### -P
### -P -P
              Pass _-option_ or _-option_ _arg_ to the postprocessor.  The option must be  specified  with
              the  necessary  preceding minus sign(s) ‘-’ or ‘--’ 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

                     groff -X -P -title -P 'groff it' _foo_

              is equivalent to

                     groff -X -Z _foo_ | gxditview -title 'groff it' -

### -R
              cause most **refer** options have equivalent  language  elements  that  can  be  specified
              within the document.  See [**refer**(1)](https://www.chedong.com/phpMan.php/man/refer/1/markdown) for more details.

### -s

### -S -S
              **.open**, **.opena**, **.pso**, **.sy**, and **.pi**.  For security reasons, safer mode is enabled by de‐
              fault.

### -t

### -T
              see **groff**___**[out**(5)](https://www.chedong.com/phpMan.php/man/out/5/markdown).  Then **groff** calls a postprocessor to  convert  **troff**'s  _intermediate_
              _output_ to its final format.  Real devices in **groff** are

                     dvi    TeX DVI format (postprocessor is **grodvi**).

                     html
                     xhtml  HTML  and  XHTML output (preprocessors are **soelim** and **pre-grohtml**, post‐
                            processor is **post-grohtml**).

                     lbp    Canon CAPSL printers (LBP-4 and LBP-8 series laser printers; postproces‐
                            sor is **grolbp**).

                     lj4    HP LaserJet4 compatible (or other PCL5 compatible) printers (postproces‐
                            sor is **grolj4**).

                     ps     PostScript output (postprocessor is **grops**).

                     pdf    Portable Document Format (PDF) output (postprocessor is **gropdf**).

              For the following TTY output devices (postprocessor is always **grotty**), **-T** selects  the
              output encoding:

                     ascii  7bit ASCII.

                     cp1047 Latin-1 character set for EBCDIC hosts.

                     latin1 ISO 8859-1.

                     utf8   Unicode  character set in UTF-8 encoding.  This mode has the most useful
                            fonts for TTY mode, so it is the best mode for TTY output.

              The following arguments select **gxditview** as the ‘postprocessor’ (it is rather a  view‐
              ing program):

                     X75    75dpi resolution, 10pt document base font.

                     X75-12 75dpi resolution, 12pt document base font.

                     X100   100dpi resolution, 10pt document base font.

                     X100-12
                            100dpi resolution, 12pt document base font.

              The default device is **ps**.

### -U -S

### -v
### --version
              Output  version  information of **groff** and of all programs that are run by it; that is,
              the given command line is parsed in the usual way, passing **-v** to all subprograms.

### -V
              output, but do not execute it.  If given more than once, the commands are both printed
              on the standard error and run.

### -X
              printing  spooler  behavior  as  outlined  with  options  **-l** and **-L** is carried over to
              [**gxditview**(1)](https://www.chedong.com/phpMan.php/man/gxditview/1/markdown) by determining an argument for the **-printCommand** option of  [**gxditview**(1)](https://www.chedong.com/phpMan.php/man/gxditview/1/markdown).
              This sets the default **Print** action and the corresponding menu entry to that value.  **-X**
              only produces good results with **-Tps**, **-TX75**, **-TX75-12**, **-TX100**, and **-TX100-12**.  The de‐
              fault  resolution  for previewing **-Tps** output is 75dpi; this can be changed by passing
              the **-resolution** option to **gxditview**, for example

                     groff -X -P-resolution -P100 -man foo.1

### -z

### -Z
              will cause the **troff** _output_ to appear on standard output, replacing the usual postpro‐
              cessor output; see **groff**___**[out**(5)](https://www.chedong.com/phpMan.php/man/out/5/markdown).

### Transparent Options
       The following options are transparently handed over to the formatter program  **troff**  that  is
       called by **groff** subsequently.  These options are described in more detail in [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown).

### -a

### -b

### -c

### -C

### -d
### -d
              Define string.

### -E

### -f

### -F

### -i

### -m
              Include macro file name_.tmac_ (or _tmac._name); see also **groff**___**[tmac**(5)](https://www.chedong.com/phpMan.php/man/tmac/5/markdown).

### -M

### -n

### -o
              Output only pages in _list_.

### -r
### -r
              Set number register.

### -w
              Enable warning _name_.  See [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown) for names.

### -W
              disable warning _name_.  See [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown) for names.

## USING GROFF
       The _groff_ _system_ implements the infrastructure of classical roff; see [**roff**(7)](https://www.chedong.com/phpMan.php/man/roff/7/markdown) for a survey on
       how a _roff_ system works in general.  Due to the front-end programs available within the _groff_
       system,  using  _groff_  is much easier than _classical_ _roff_.  This section gives an overview of
       the parts that constitute the _groff_ system.  It complements [**roff**(7)](https://www.chedong.com/phpMan.php/man/roff/7/markdown) with _groff_-specific  fea‐
       tures.  This section can be regarded as a guide to the documentation around the _groff_ system.

### Paper Size
       The  _virtual_ paper size used by **troff** to format the input is controlled globally with the re‐
       quests **.po**, **.pl**, and **.ll**.  See **groff**___**[tmac**(5)](https://www.chedong.com/phpMan.php/man/tmac/5/markdown) for the ‘papersize’ macro package which provides
       a convenient interface.

       The  _physical_  paper size, giving the actual dimensions of the paper sheets, is controlled by
       output devices like **grops** with the command-line options **-p** and **-l**.  See **groff**___**[font**(5)](https://www.chedong.com/phpMan.php/man/font/5/markdown) and the
       man  pages  of the output devices for more details.  **groff** uses the command-line option **-P** to
       pass options to output devices; for example, the following selects A4 paper in landscape ori‐
       entation for the PS device:

              groff -Tps -P-pa4 -P-l ...

### Front-ends
       The  **groff**  program  is  a wrapper around the [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown) program.  It allows one to specify the
       preprocessors by command-line options and automatically runs the postprocessor that is appro‐
       priate  for the selected device.  Doing so, the sometimes tedious piping mechanism of classi‐
       cal [**roff**(7)](https://www.chedong.com/phpMan.php/man/roff/7/markdown) can be avoided.

       The [**grog**(1)](https://www.chedong.com/phpMan.php/man/grog/1/markdown) program can be used for guessing the correct _groff_ command line to format a file.

       The [**groffer**(1)](https://www.chedong.com/phpMan.php/man/groffer/1/markdown) program is an all-around viewer for _groff_ files and man pages.

### Preprocessors
       The _groff_ preprocessors are reimplementations of the classical  preprocessors  with  moderate
       extensions.  The standard preprocessors distributed with the _groff_ package are

       [**eqn**(1)](https://www.chedong.com/phpMan.php/man/eqn/1/markdown) for mathematical formulae,

       [**grn**(1)](https://www.chedong.com/phpMan.php/man/grn/1/markdown) for including [**gremlin**(1)](https://www.chedong.com/phpMan.php/man/gremlin/1/markdown) pictures,

       [**pic**(1)](https://www.chedong.com/phpMan.php/man/pic/1/markdown) for drawing diagrams,

       [**chem**(1)](https://www.chedong.com/phpMan.php/man/chem/1/markdown)
              for chemical structure diagrams,

       [**refer**(1)](https://www.chedong.com/phpMan.php/man/refer/1/markdown)
              for bibliographic references,

       [**soelim**(1)](https://www.chedong.com/phpMan.php/man/soelim/1/markdown)
              for including macro files from standard locations,

       and

       [**tbl**(1)](https://www.chedong.com/phpMan.php/man/tbl/1/markdown) for tables.

       A  new preprocessor not available in classical _troff_ is [**preconv**(1)](https://www.chedong.com/phpMan.php/man/preconv/1/markdown) which converts various in‐
       put encodings to something **groff** can understand.  It is always run  first  before  any  other
       preprocessor.

       Besides these, there are some internal preprocessors that are automatically run with some de‐
       vices.  These aren't visible to the user.

### Macro Packages
       Macro packages can be included by option **-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 _groff_:

       **man**    The traditional man page format; see **groff**___**[man**(7)](https://www.chedong.com/phpMan.php/man/man/7/markdown).  It can be specified on the command
              line as **-man** or **-m** **man**.

       **mandoc** The  general  package for man pages; it automatically recognizes whether the documents
              uses the _man_ or the _mdoc_ format and branches to the corresponding macro  package.   It
              can be specified on the command line as **-mandoc** or **-m** **mandoc**.

       **mdoc**   The  BSD-style man page format; see **groff**___**[mdoc**(7)](https://www.chedong.com/phpMan.php/man/mdoc/7/markdown).  It can be specified on the command
              line as **-mdoc** or **-m** **mdoc**.

       **me**     The classical _me_ document format; see **groff**___**[me**(7)](https://www.chedong.com/phpMan.php/man/me/7/markdown).  It can be specified on the command
              line as **-me** or **-m** **me**.

       **mm**     The classical _mm_ document format; see **groff**___**[mm**(7)](https://www.chedong.com/phpMan.php/man/mm/7/markdown).  It can be specified on the command
              line as **-mm** or **-m** **mm**.

       **ms**     The classical _ms_ document format; see **groff**___**[ms**(7)](https://www.chedong.com/phpMan.php/man/ms/7/markdown).  It can be specified on the command
              line as **-ms** or **-m** **ms**.

       **www**    HTML-like macros for inclusion in arbitrary _groff_ documents; see **groff**___**[www**(7)](https://www.chedong.com/phpMan.php/man/www/7/markdown).

       Details  on the naming of macro files and their placement can be found in **groff**___**[tmac**(5)](https://www.chedong.com/phpMan.php/man/tmac/5/markdown); this
       man page also documents some other, minor auxiliary macro packages not mentioned here.

### Programming Language
       General concepts common to all _roff_ programming languages are described in [**roff**(7)](https://www.chedong.com/phpMan.php/man/roff/7/markdown).

       The _groff_ extensions to the classical _troff_ language are documented in **groff**___**[diff**(7)](https://www.chedong.com/phpMan.php/man/diff/7/markdown).

       An overview of language features, including all supported escapes and requests, can be  found
       in [**groff**(7)](https://www.chedong.com/phpMan.php/man/groff/7/markdown).

### Formatters
       The  central _roff_ formatter within the _groff_ system is [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown).  It provides the features of
       both the classical _troff_ and _nroff_, as well as the _groff_ extensions.  The command-line option
### -C
       possible.

       There is a shell script [**nroff**(1)](https://www.chedong.com/phpMan.php/man/nroff/1/markdown) that emulates the behavior of classical **nroff**.  It tries  to
       automatically select the proper output encoding, according to the current locale.

       The formatter program generates _intermediate_ _output_; see **groff**___**[out**(7)](https://www.chedong.com/phpMan.php/man/out/7/markdown).

### Devices
       In _roff_, the output targets are called _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 **-T**.  The  _groff_  de‐
       vices are as follows.

       **ascii**  Text output using the [**ascii**(7)](https://www.chedong.com/phpMan.php/man/ascii/7/markdown) character set.

       **cp1047** Text output using the EBCDIC code page IBM cp1047 (e.g., OS/390 Unix).

       **dvi**    TeX DVI format.

       **html**   HTML output.

       **latin1** Text output using the ISO Latin-1 (ISO 8859-1) character set; see **iso**___**8859**___**[1**(7)](https://www.chedong.com/phpMan.php/man/1/7/markdown).

       **lbp**    Output for Canon CAPSL printers (LBP-4 and LBP-8 series laser printers).

       **lj4**    HP LaserJet4-compatible (or other PCL5-compatible) printers.

       **ps**     PostScript output; suitable for printers and previewers like [**gv**(1)](https://www.chedong.com/phpMan.php/man/gv/1/markdown).

       **pdf**    PDF files; suitable for viewing with tools such as [**evince**(1)](https://www.chedong.com/phpMan.php/man/evince/1/markdown) and [**okular**(1)](https://www.chedong.com/phpMan.php/man/okular/1/markdown).

       **utf8**   Text  output using the Unicode (ISO 10646) character set with UTF-8 encoding; see **uni**‐‐
              [**code**(7)](https://www.chedong.com/phpMan.php/man/code/7/markdown).

       **xhtml**  XHTML output.

       **X75**    75dpi  X  Window  System  output  suitable  for  the   previewers   [**xditview**(1x)](https://www.chedong.com/phpMan.php/man/xditview/1x/markdown)   and
              [**gxditview**(1)](https://www.chedong.com/phpMan.php/man/gxditview/1/markdown).  A variant for a 12pt document base font is **X75-12**.

       **X100**   100dpi   X   Window  System  output  suitable  for  the  previewers  [**xditview**(1x)](https://www.chedong.com/phpMan.php/man/xditview/1x/markdown)  and
              [**gxditview**(1)](https://www.chedong.com/phpMan.php/man/gxditview/1/markdown).  A variant for a 12pt document base font is **X100-12**.

       The postprocessor to be used for a device is specified by the **postpro** command in  the  device
       description file; see **groff**___**[font**(5)](https://www.chedong.com/phpMan.php/man/font/5/markdown).  This can be overridden with the **-X** option.

       The default device is **ps**.

### Postprocessors
       _groff_ provides 3 hardware postprocessors:

       [**grolbp**(1)](https://www.chedong.com/phpMan.php/man/grolbp/1/markdown)
              for some Canon printers,

       [**grolj4**(1)](https://www.chedong.com/phpMan.php/man/grolj4/1/markdown)
              for printers compatible to the HP LaserJet 4 and PCL5,

       [**grotty**(1)](https://www.chedong.com/phpMan.php/man/grotty/1/markdown)
              for  text  output  using  various  encodings, e.g., on text-oriented terminals or line
              printers.

       Today, most printing or drawing hardware is handled by the operating system, by device  driv‐
       ers,  or  by software interfaces, usually accepting PostScript.  Consequently, there isn't an
       urgent need for more hardware device postprocessors.

       The _groff_ software devices for conversion into other document file formats are

       [**grodvi**(1)](https://www.chedong.com/phpMan.php/man/grodvi/1/markdown)
              for the DVI format,

       [**grohtml**(1)](https://www.chedong.com/phpMan.php/man/grohtml/1/markdown)
              for HTML and XHTML formats,

       [**grops**(1)](https://www.chedong.com/phpMan.php/man/grops/1/markdown)
              for PostScript.

       [**gropdf**(1)](https://www.chedong.com/phpMan.php/man/gropdf/1/markdown)
              for PDF.

       Combined with the many existing free conversion tools this should be sufficient to convert  a
       _troff_ document into virtually any existing data format.

### Utilities
       The following utility programs around _groff_ are available.

       [**addftinfo**(1)](https://www.chedong.com/phpMan.php/man/addftinfo/1/markdown)
              Add information to _troff_ font description files for use with _groff_.

       [**afmtodit**(1)](https://www.chedong.com/phpMan.php/man/afmtodit/1/markdown)
              Create font description files for PostScript device.

       [**eqn2graph**(1)](https://www.chedong.com/phpMan.php/man/eqn2graph/1/markdown)
              Convert an **eqn** image into a cropped image.

       [**gdiffmk**(1)](https://www.chedong.com/phpMan.php/man/gdiffmk/1/markdown)
              Mark differences between _groff_, _nroff_, or _troff_ files.

       [**grap2graph**(1)](https://www.chedong.com/phpMan.php/man/grap2graph/1/markdown)
              Convert a **grap** diagram into a cropped bitmap image.

       [**groffer**(1)](https://www.chedong.com/phpMan.php/man/groffer/1/markdown)
              General viewer program for _groff_ files and man pages.

       [**gxditview**(1)](https://www.chedong.com/phpMan.php/man/gxditview/1/markdown)
              The _groff_ X viewer, the GNU version of **xditview**.

       [**hpftodit**(1)](https://www.chedong.com/phpMan.php/man/hpftodit/1/markdown)
              Create font description files for lj4 device.

       [**indxbib**(1)](https://www.chedong.com/phpMan.php/man/indxbib/1/markdown)
              Make inverted index for bibliographic databases.

       [**lkbib**(1)](https://www.chedong.com/phpMan.php/man/lkbib/1/markdown)
              Search bibliographic databases.

       [**lookbib**(1)](https://www.chedong.com/phpMan.php/man/lookbib/1/markdown)
              Interactively search bibliographic databases.

       [**pdfroff**(1)](https://www.chedong.com/phpMan.php/man/pdfroff/1/markdown)
              Create PDF documents using **groff**.

       [**pfbtops**(1)](https://www.chedong.com/phpMan.php/man/pfbtops/1/markdown)
              Translate a PostScript font in .pfb format to ASCII.

       [**pic2graph**(1)](https://www.chedong.com/phpMan.php/man/pic2graph/1/markdown)
              Convert a **pic** diagram into a cropped image.

       [**tfmtodit**(1)](https://www.chedong.com/phpMan.php/man/tfmtodit/1/markdown)
              Create font description files for TeX DVI device.

       [**xditview**(1x)](https://www.chedong.com/phpMan.php/man/xditview/1x/markdown)
              _roff_ viewer historically distributed with the X Window System.

       [**xtotroff**(1)](https://www.chedong.com/phpMan.php/man/xtotroff/1/markdown)
              Convert X font metrics into GNU _troff_ font metrics.

## 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  in‐
       stead.

       _GROFF_BIN_PATH_
              This  search  path, followed by _PATH_, is used for commands that are executed by **groff**.
              If it is not set then the  directory  where  the  _groff_  binaries  were  installed  is
              prepended to _PATH_.

       _GROFF_COMMAND_PREFIX_
              When there is a need to run different _roff_ implementations at the same time _groff_ pro‐
              vides 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 **g**, but it can be anything.  For example, **gtroff**  stood  for  _groff_'s  **troff**,
              **gtbl**  for the _groff_ version of **tbl**.  By setting _GROFF_COMMAND_PREFIX_ to different val‐
              ues, the different _roff_ installations can be addressed.  More exactly, if it is set to
              prefix _xxx_ then **groff** as a wrapper program internally calls _xxx_**troff** instead of **troff**.
              This also applies to the preprocessors **eqn**, **grn**, **pic**, **refer**, **tbl**, **soelim**, and  to  the
              utilities  **indxbib** and **lookbib**.  This feature does not apply to any programs different
              from the ones above (most notably **groff** itself) since they are  unique  to  the  _groff_
              package.

       _GROFF_ENCODING_
              The  value  of  this environment value is passed to the **preconv** preprocessor to select
              the encoding of input files.  Setting this option implies **groff**'s command-line  option
              **-k**  (this  is,  **groff**  actually  always calls **preconv**).  If set without a value, **groff**
              calls **preconv** without arguments.  An explicit **-K**  command-line  option  overrides  the
              value of _GROFF_ENCODING_.  See [**preconv**(1)](https://www.chedong.com/phpMan.php/man/preconv/1/markdown) for details.

       _GROFF_FONT_PATH_
              A  list of directories in which to search for the _dev_name directory in addition to the
              default ones.  See [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown) and **groff**___**[font**(5)](https://www.chedong.com/phpMan.php/man/font/5/markdown) for more details.

       _GROFF_TMAC_PATH_
              A list of directories in which to search for macro files in addition  to  the  default
              directories.  See [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown) and **groff**___**[tmac**(5)](https://www.chedong.com/phpMan.php/man/tmac/5/markdown) for more details.

       _GROFF_TMPDIR_
              The  directory in which temporary files are created.  If this is not set but the envi‐
              ronment variable _TMPDIR_ instead, temporary files are created in the directory  _TMPDIR_.
              On  MS-DOS  and Windows platforms, the environment variables _TMP_ and _TEMP_ (in that or‐
              der) are searched also, after _GROFF_TMPDIR_ and _TMPDIR_.  Otherwise, temporary files are
              created in _/tmp_.  The [**refer**(1)](https://www.chedong.com/phpMan.php/man/refer/1/markdown), [**groffer**(1)](https://www.chedong.com/phpMan.php/man/groffer/1/markdown), [**grohtml**(1)](https://www.chedong.com/phpMan.php/man/grohtml/1/markdown), and [**grops**(1)](https://www.chedong.com/phpMan.php/man/grops/1/markdown) commands use tem‐
              porary files.

       _GROFF_TYPESETTER_
              Preset the default device.  If this is not set the **ps** device is used as default.  This
              device name is overwritten by the option **-T**.

## EXAMPLES
       The following example illustrates the power of the **groff** program as a wrapper around **troff**.

       To  process  a  _roff_ file using the preprocessors **tbl** and **pic** and the **me** macro set, classical
       _troff_ had to be called by

              pic foo.me | tbl | troff -me -Tlatin1 | grotty

       Using **groff**, this pipe can be shortened to the equivalent command

              groff -p -t -me -T latin1 foo.me

       An even easier way to call this is to use [**grog**(1)](https://www.chedong.com/phpMan.php/man/grog/1/markdown) to guess the preprocessor and macro options
       and execute the generated command (by using backquotes to specify shell command substitution)

              `grog -Tlatin1 foo.me`

       The simplest way is to view the contents in an automated way by calling

              groffer foo.me

## BUGS
       On EBCDIC hosts (e.g., OS/390 Unix), output devices **ascii** and **latin1** aren't available.  Simi‐
       larly, output for EBCDIC code page **cp1047** is not available on ASCII based operating systems.

## INSTALLATION DIRECTORIES
       _groff_ installs files in varying locations depending on its  compile-time  configuration.   On
       this installation, the following locations are used.

       _/etc/X11/app-defaults_
              Application defaults directory for [_gxditview_(1)](https://www.chedong.com/phpMan.php/man/gxditview/1/markdown).

       _/usr/bin_
              Directory containing _groff_'s executable commands.

       _/usr/share/groff/1.22.4/eign_
              List of common words for [_indxbib_(1)](https://www.chedong.com/phpMan.php/man/indxbib/1/markdown).

       _/usr/share/groff/1.22.4_
              Directory for data files.

       _/usr/dict/papers/Ind_
              Default index for [_lkbib_(1)](https://www.chedong.com/phpMan.php/man/lkbib/1/markdown) and [_refer_(1)](https://www.chedong.com/phpMan.php/man/refer/1/markdown).

       _/usr/share/doc/groff-base_
              Documentation directory.

       _/usr/share/doc/groff-base/examples_
              Example directory.

       _/usr/share/groff/1.22.4/font_
              Font directory.

       _/usr/share/doc/groff-base/html_
              HTML documentation directory.

       _/usr/lib/font_
              Legacy font directory.

       _/usr/share/groff/site-font_
              Local font directory.

       _/usr/share/groff/site-tmac_
              Local macro package (_tmac_ file) directory.

       _/usr/share/groff/1.22.4/tmac_
              Macro package (_tmac_ file) directory.

       _/usr/share/groff/1.22.4/oldfont_
              Font directory for compatibility with old versions of _groff_; see [_grops_(1)](https://www.chedong.com/phpMan.php/man/grops/1/markdown).

       _/usr/share/doc/groff-base/pdf_
              PDF documentation directory.

       _/usr/lib/groff/site-tmac_
              System macro package (_tmac_ file) directory.

### groff Macro Directory
       This contains all information related to macro packages.  Note that more than a single direc‐
       tory is searched for those files as documented in **groff**___**[tmac**(5)](https://www.chedong.com/phpMan.php/man/tmac/5/markdown).  For the _groff_  installation
       corresponding to this document, it is located at _/usr/share/groff/1.22.4/tmac_.  The following
       files contained in the _groff_ _macro_ _directory_ have a special meaning:

       _troffrc_
              Initialization file for _troff_.  This is interpreted by **troff** before reading the  macro
              sets and any input.

       _troffrc-end_
              Final startup file for _troff_.  It is parsed after all macro sets have been read.

       name_.tmac_
       _tmac._name
              Macro file for macro package _name_.

### groff Font Directory
       This contains all information related to output devices.  Note that more than a single direc‐
       tory is searched for those files; see [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown).  For the _groff_ installation corresponding  to
       this  document, it is located at _/usr/share/groff/1.22.4/font_.  The following files contained
       in the _groff_ _font_ _directory_ have a special meaning:

       _dev_name_/DESC_
              Device description file for device _name_, see **groff**___**[font**(5)](https://www.chedong.com/phpMan.php/man/font/5/markdown).

       _dev_name_/_F
              Font file for font _F_ of device _name_.

## AVAILABILITY
       Information on how to get _groff_ and related information is available at the groff page of the
       GNU website ⟨<http://www.gnu.org/software/groff>⟩.

       Three _groff_ mailing lists are available:

              bug tracker activity (read-only) ⟨<bug-groff@gnu.org>⟩;

              general discussion ⟨<groff@gnu.org>⟩; and

              commit  activity  (read-only) ⟨<groff-commit@gnu.org>⟩, which reports changes to _groff_'s
              source code repository by its developers.

       Details on repository access and much more can be found in the file _README_ at the top  direc‐
       tory of the _groff_ source package.

       A  free  implementation  of the **grap** preprocessor, written by Ted Faber ⟨<faber@lunabase.org>⟩,
       can be found at the grap website ⟨<http://www.lunabase.org/~faber/Vault/software/grap/>⟩.  This
       is the only _grap_ supported by _groff_.

## AUTHORS
       **groff**  was  written  by James Clark ⟨<jjc@jclark.com>⟩.  This document was rewritten, enhanced,
       and put under the FDL license in 2002 by Bernd Warken ⟨<groff-bernd.warken-72@web.de>⟩.

## SEE ALSO
       _Groff:_ _The_ _GNU_ _Implementation_ _of_ _troff_, by Trent A. Fisher and Werner Lemberg, is the primary
       _groff_ manual.  You can browse it interactively with “info groff”.

       Due  to  its  complex  structure, the _groff_ system has many man pages.  They can be read with
       [**man**(1)](https://www.chedong.com/phpMan.php/man/man/1/markdown) or [**groffer**(1)](https://www.chedong.com/phpMan.php/man/groffer/1/markdown).

       But there are special sections of _man_ _pages_.  _groff_ has man pages in  sections  **1**,  **5**,**and**  7**.**
       When there are several _man_ _pages_ with the same name in the same _man_ section, the one with the
       lowest section is should as first.  The other man pages can be shown  anyway  by  adding  the
       section  number  as  argument before the man page name.  Reading the man page about the _groff_
       language is done by one of
              **man** **7** **groff**
              **groffer** **7** **groff**

       Introduction, history and further readings:
              [**roff**(7)](https://www.chedong.com/phpMan.php/man/roff/7/markdown).

       Viewer for groff files:
              [**groffer**(1)](https://www.chedong.com/phpMan.php/man/groffer/1/markdown), [**gxditview**(1)](https://www.chedong.com/phpMan.php/man/gxditview/1/markdown), [**xditview**(1x)](https://www.chedong.com/phpMan.php/man/xditview/1x/markdown).

       Wrapper programs for formatters:
              [**groff**(1)](https://www.chedong.com/phpMan.php/man/groff/1/markdown), [**grog**(1)](https://www.chedong.com/phpMan.php/man/grog/1/markdown).

       Roff preprocessors:
              [**eqn**(1)](https://www.chedong.com/phpMan.php/man/eqn/1/markdown), [**grn**(1)](https://www.chedong.com/phpMan.php/man/grn/1/markdown), [**pic**(1)](https://www.chedong.com/phpMan.php/man/pic/1/markdown), [**chem**(1)](https://www.chedong.com/phpMan.php/man/chem/1/markdown), [**preconv**(1)](https://www.chedong.com/phpMan.php/man/preconv/1/markdown), [**refer**(1)](https://www.chedong.com/phpMan.php/man/refer/1/markdown), [**soelim**(1)](https://www.chedong.com/phpMan.php/man/soelim/1/markdown), [**tbl**(1)](https://www.chedong.com/phpMan.php/man/tbl/1/markdown), [**grap**(1)](https://www.chedong.com/phpMan.php/man/grap/1/markdown).

       Roff language with the groff extensions:
              [**groff**(7)](https://www.chedong.com/phpMan.php/man/groff/7/markdown), **groff**___**[char**(7)](https://www.chedong.com/phpMan.php/man/char/7/markdown), **groff**___**[diff**(7)](https://www.chedong.com/phpMan.php/man/diff/7/markdown), **groff**___**[font**(5)](https://www.chedong.com/phpMan.php/man/font/5/markdown).

       Roff formatter programs:
              [**nroff**(1)](https://www.chedong.com/phpMan.php/man/nroff/1/markdown), [**troff**(1)](https://www.chedong.com/phpMan.php/man/troff/1/markdown), [**ditroff**(7)](https://www.chedong.com/phpMan.php/man/ditroff/7/markdown).

       The intermediate output language:
              **groff**___**[out**(7)](https://www.chedong.com/phpMan.php/man/out/7/markdown).

       Postprocessors for the output devices:
              [**grodvi**(1)](https://www.chedong.com/phpMan.php/man/grodvi/1/markdown), [**grohtml**(1)](https://www.chedong.com/phpMan.php/man/grohtml/1/markdown), [**grolbp**(1)](https://www.chedong.com/phpMan.php/man/grolbp/1/markdown), [**grolj4**(1)](https://www.chedong.com/phpMan.php/man/grolj4/1/markdown), **lj4**___**[font**(5)](https://www.chedong.com/phpMan.php/man/font/5/markdown), [**grops**(1)](https://www.chedong.com/phpMan.php/man/grops/1/markdown), [**gropdf**(1)](https://www.chedong.com/phpMan.php/man/gropdf/1/markdown),
              [**grotty**(1)](https://www.chedong.com/phpMan.php/man/grotty/1/markdown).

       Groff macro packages and macro-specific utilities:
              **groff**___**[tmac**(5)](https://www.chedong.com/phpMan.php/man/tmac/5/markdown), **groff**___**[man**(7)](https://www.chedong.com/phpMan.php/man/man/7/markdown), **groff**___**[mdoc**(7)](https://www.chedong.com/phpMan.php/man/mdoc/7/markdown), **groff**___**[me**(7)](https://www.chedong.com/phpMan.php/man/me/7/markdown), **groff**___**[mm**(7)](https://www.chedong.com/phpMan.php/man/mm/7/markdown), **groff**___**[mmse**(7)](https://www.chedong.com/phpMan.php/man/mmse/7/markdown)
              (only in Swedish locales), **groff**___**[mom**(7)](https://www.chedong.com/phpMan.php/man/mom/7/markdown), **groff**___**[ms**(7)](https://www.chedong.com/phpMan.php/man/ms/7/markdown), **groff**___**[www**(7)](https://www.chedong.com/phpMan.php/man/www/7/markdown), **groff**___**[trace**(7)](https://www.chedong.com/phpMan.php/man/trace/7/markdown),
              [**mmroff**(7)](https://www.chedong.com/phpMan.php/man/mmroff/7/markdown).

       The following utilities are available:
              [**addftinfo**(1)](https://www.chedong.com/phpMan.php/man/addftinfo/1/markdown), [**afmtodit**(1)](https://www.chedong.com/phpMan.php/man/afmtodit/1/markdown), [**eqn2graph**(1)](https://www.chedong.com/phpMan.php/man/eqn2graph/1/markdown), [**gdiffmk**(1)](https://www.chedong.com/phpMan.php/man/gdiffmk/1/markdown), [**grap2graph**(1)](https://www.chedong.com/phpMan.php/man/grap2graph/1/markdown), [**groffer**(1)](https://www.chedong.com/phpMan.php/man/groffer/1/markdown),
              [**gxditview**(1)](https://www.chedong.com/phpMan.php/man/gxditview/1/markdown), [**hpftodit**(1)](https://www.chedong.com/phpMan.php/man/hpftodit/1/markdown), [**indxbib**(1)](https://www.chedong.com/phpMan.php/man/indxbib/1/markdown), [**lkbib**(1)](https://www.chedong.com/phpMan.php/man/lkbib/1/markdown), [**lookbib**(1)](https://www.chedong.com/phpMan.php/man/lookbib/1/markdown), [**pdfroff**(1)](https://www.chedong.com/phpMan.php/man/pdfroff/1/markdown), [**pfbtops**(1)](https://www.chedong.com/phpMan.php/man/pfbtops/1/markdown),
              [**pic2graph**(1)](https://www.chedong.com/phpMan.php/man/pic2graph/1/markdown), [**tfmtodit**(1)](https://www.chedong.com/phpMan.php/man/tfmtodit/1/markdown), [**xtotroff**(1)](https://www.chedong.com/phpMan.php/man/xtotroff/1/markdown).



groff 1.22.4                                23 March 2022                                   [GROFF(1)](https://www.chedong.com/phpMan.php/man/GROFF/1/markdown)
