grog options recognized are
-C (which is also passed on) to enable compatibility mode;
--version print information on the version number; and
--help print usage information.
--help stop the program directly without printing a
groff command to standard output.
All other specified short options (words starting with one minus
-) are interpreted as
groff options or option clusters with or without argument.
No space is allowed between options and their argument.
Except from the
-marg options, all options will be passed on, i.e. they are included
unchanged in the command for the output without effecting the work of
filespec argument can either be the name of an existing file or a single minus
- to mean standard input.
filespec is specified standard input is read automatically.
grog reads all
filespec parameters as a whole.
It tries to guess which of the following
groff options are required for running the input under
-t. The guessed
groff command including those options and the found
filespec parameters is put on the standard output.
It is possible to specify arbitrary
groff options on the command line.
These are passed on the output without change, except for the
groff program has trouble when the wrong
-marg option or several of these options are specified.
In these cases,
grog will print an error message and exit with an error code.
It is better to specify no
Because such an option is only accepted and passed when
grog does not find any of these options or the same option is found.
If several different
-marg options are found by
grog an error message is produced and the program is terminated with an
But the output is written with the wrong options nevertheless.
Remember that it is not necessary to determine a macro package.
roff file can also be written in the
groff language without any macro package.
grog will produce an output without an
groff also works with pure text files without any
grog cannot be used to identify a file to be a
program heavily depends on a working
grog source contains two files written in different programming languages:
Perl version, while
is a shell script using
BR awk (1).
During the run of
it is determined whether the system contains a suitable version of
is transformed into
is used instead.
grog recognized that the file
meintro.me is written with the
-me macro package.
On the other hand,
groff -pte -ms pic.ms
Besides determining the macro package
grog recognized that the file
pic.ms additionally needs
-pte, the combination of
If both files are combined by the command
grog meintro.me pic.ms
an error message is sent to standard error because
groff cannot work with two different macro packages:
grog: error: there are several macro packages: -me -ms
Additionally the corresponding output with the wrong options is printed
to standard output:
groff -pte -me -ms meintro.me pic.ms
But the program is terminated with an error code.
The call of
grog -ksS -Tdvi grnexmpl.g
groff options that are just passed on the output without any interface to
grog. These are the option cluster
-ksS consisting of
-S; and the option
-T with argument
dvi. The output is
groff -ksS -Tdvi grnexmpl.g
so no additional option was added by
grog. As no option
-marg was found by
grog this file does not use a macro package.
grog can also handle files using the
chem chAh_brackets.chem | groff -pe
chem is run first and
groff is appended.
pic is implied automatically by
chem. Additionally, the file uses
Copyright (C) 1989-2000, 2001, 2002, 2003, 2006, 2007, 2009, 2010
Free Software Foundation, Inc.
Written by James Clark.
Rewritten and put under GPL by Bernd Warken.
This file is part of
grog, which is part of
groff, a free software project.
You can redistribute it and/or modify it under the terms of the
GNU General Public License
(CR]GPL]) as published by the
Free Software Foundation,
either version~2, or (at your option) any later version.
You should have received a copy of the CR]GNU General Public
License] along with
groff, see the files CB]COPYING] and CB]LICENSE] in the top
directory of the
groff source package.
Or read the
You can also write to the
Free Software Foundation, 51 Franklin St - Fifth Floor, Boston,MA 02110-1301, USA.