man2html: Unknown operator .
man2html: Unknown operator .
Content-type: text/html
Manpage of GROFF_TMAC
GROFF_TMAC
Section: File Formats (5)
Updated: 28 July 2004
Index
Return to Main Contents
NAME
groff_tmac - macro files in the roff typesetting system
DESCRIPTION
The
roff(7)
type-setting system provides a set of macro packages suitable for
special kinds of documents.
Each macro package stores its macros and definitions in a file called
the package's
tmac file.
The name is deduced from
`TroffMACros'.
The tmac files are normal roff source documents, except that they
usually contain only definitions and setup commands, but no text.
All tmac files are kept in a single or a small number of directories,
the
tmac
directories.
GROFF MACRO PACKAGES
groff
provides all classical macro packages, some more full packages, and
some secondary packages for special purposes.
Note that it is not possible to use multiple primary macro packages at the
same time; saying e.g.
-
ell_cmd groff -m man -m ms foo
or
-
ell_cmd groff -m man foo -m ms bar
will fail.
Man~Pages
- man
-
This is the classical macro package for UNIX manual pages
(man~pages); it is quite handy and easy to use; see
groff_man(7).
- doc
-
- mdoc
-
An alternative macro package for man~pages mainly used in BSD
systems; it provides many new features, but it is not the standard for
man~pages; see
groff_mdoc(7).
Full Packages
The packages in this section provide a complete set of macros for
writing documents of any kind, up to whole books.
They are similar in functionality; it is a matter of taste which one
to use.
- me
-
The classical
me
macro package; see
Regenwassertank>groff_me(7).
- mm
-
The semi-classical
mm
macro package; see
groff_mm(7).
- mom
-
The new
mom
macro package, only available in groff.
As this is not based on other packages, it can be freely designed.
So it is expected to become quite a nice, modern macro package.
See
groff_mom(7).
- ms
-
The classical
ms
macro package; see
groff_ms(7).
Special Packages
The macro packages in this section are not intended for stand-alone
usage, but can be used to add special functionality to any other
macro package or to plain groff.
- papersize
-
This macro file is already loaded at start-up by
troff
so it isn't necessary to call it explicitly.
It provides an interface to set the paper size on the command line with
the option B]-dpaper=]I]size].
Possible values for
size
are the same as the predefined
papersize
values in the DESC file (only lowercase; see
groff_font(5)
for more) except
a7-d7.
An appended
l
(ell) character denotes landscape orientation.
Examples:
a4,
c3l,
letterl.
-
Most output drivers need additional command line switches
-p
and
-l
to override the default paper length and orientation as set in man2html: Unknown operator .
man2html: Unknown operator .
man2html: Unknown operator .
man2html: Unknown operator .
man2html: Unknown operator .
man2html: Unknown operator .
man2html: Unknown operator .
man2html: Unknown operator .
the driver
specific DESC file.
For example, use the following for PS output on A4 paper in landscape
orientation:
-
ell_cmd groff -Tps -dpaper=a4l -P-pa4 -P-l -ms foo.ms > foo.ps
- pic
-
This file provides proper definitions for the macros
PS
and
PE,
needed for the
pic(1)
preprocessor.
They will center each picture.
Use it only if your macro package doesn't provide proper definitions
for those two macros (actually, most of them already have).
- pspic
-
A single macro is provided in this file,
PSPIC,
to include a PostScript graphic in a document.
It makes only sense for output devices which support inclusion of PS
images:
-Tps,
-Tdvi,
and
-Thtml;
the file is then loaded automatically.
Syntax:
-
-
.PSPIC [-L|-R|-I n] file [width [height]]
-
file
is the name of the file containing the illustration;
width
and
height
give the desired width and height of the graphic.
The
width
and
height
arguments may have scaling indicators attached;
the default scaling indicator is~i.
This macro will scale the graphic uniformly
in the x and y~directions so that it is no more than
width
wide
and
height
high.
By default, the graphic will be horizontally centered.
The
-L
and
-R
options cause the graphic to be left-aligned and right-aligned,
respectively.
The
-I
option causes the graphic to be indented by~n
(default scaling indicator is~m).
- trace
-
Use this for tracing macro calls.
It is only useful for debugging.
See
groff_trace(7).
- tty-char
-
Overrides the definition of standard troff characters and some groff
characters for tty devices.
The optical appearance is intentionally inferior compared to that of
normal tty formatting to allow processing with critical equipment.
- www
-
Additions of elements known from the html format, as being used in the
internet (World Wide Web) pages; this includes URL links and mail
addresses; see
groff_www(7).
NAMING
In classical roff systems, there was a funny naming scheme for macro
packages, due to a simplistic design in option parsing.
Macro packages were always included by option
when this option was directly followed by its argument without an
intervening space, this looked like a long option preceded by a single
minus [em] a sensation in the computer stone age.
To make this optically working for macro package names, all classical
macro packages choose a name that started with the letter
which was omitted in the naming of the macro file.
For example, the macro package for the man pages was called
man,
while its macro file
tmac.an.
So it could be activated by the argument
an
to option
or
for short.
For similar reasons, macro packages that did not start with an
had a leading
added in the documentation and in talking; for example, the package
corresponding to
tmac.doc
was called
mdoc
in the documentation, although a more suitable name would be
doc.
For, when omitting the space between the option and its argument, the
command line option for activating this package reads
To cope with all situations, actual versions of
groff(1)
are smart about both naming schemes by providing two macro files
for the inflicted macro packages; one with a leading
the other one without it.
So in
groff,
the
man
macro package may be specified as on of the following four methods:
-