-.TH GROFF_MOM @MAN7EXT@ "@MDATE@" "groff @VERSION@"
-.SH NAME
-groff_mom \- groff \(lqmom\(rq macros; \(lqmom\(rq is a \(lqroff\(rq \
-language, part of \(lqgroff\(rq
-.
-.
-.\" Save and disable compatibility mode (for, e.g., Solaris 10/11).
-.do nr groff_mom_C \n[.C]
-.cp 0
+.TH groff_mom @MAN7EXT@ "@MDATE@" "groff @VERSION@"
+.SH Name
+groff_mom \- modern macros for document composition with GNU
+.I roff
.
.
.\" ====================================================================
.\" Legal Terms
.\" ====================================================================
.\"
-.\" Copyright (C) 2002-2018 Free Software Foundation, Inc.
+.\" Copyright (C) 2002-2020 Free Software Foundation, Inc.
.\"
.\" This file is part of mom, which is part of groff, the GNU roff
.\" type-setting system.
.\" <http://www.gnu.org/licenses/>.
.
.
+.\" Save and disable compatibility mode (for, e.g., Solaris 10/11).
+.do nr *groff_groff_mom_7_man_C \n[.cp]
+.cp 0
+.
+.\" Define fallback for groff 1.23's MR macro if the system lacks it.
+.nr do-fallback 0
+.if !\n(.f .nr do-fallback 1 \" mandoc
+.if \n(.g .if !d MR .nr do-fallback 1 \" older groff
+.if !\n(.g .nr do-fallback 1 \" non-groff *roff
+.if \n[do-fallback] \{\
+. de MR
+. ie \\n(.$=1 \
+. I \%\\$1
+. el \
+. IR \%\\$1 (\\$2)\\$3
+. .
+.\}
+.rr do-fallback
+.
+.
.\" ====================================================================
.\" Setup
.\" ====================================================================
.
-.ds Ellipsis \&.\|.\|.\&\"
-.
.hw line-space
.
.
. if (\\n[.$] = 1) .as result \,\f[\\$1]
. nh
. nop \\*[result]\&
-. hy
+. rm result
+. hy \\n[HY]
..
.
.
.\" ====================================================================
-.SH "SYNOPSIS"
+.SH Synopsis
.\" ====================================================================
.
-.SY pdfmom
-.RB [ \-Tps
-.RI [ pdfroff-option
-\*[Ellipsis]]]
-.RI [ groff-option
-\*[Ellipsis]]
-.I file
-\*[Ellipsis]
-.YS
-.
.SY groff
.B \-mom
-.RI [ option
-\*[Ellipsis]]
-.I file
-\*[Ellipsis]
+.RI [ option\~ .\|.\|.\&]
+.RI [ file\~ .\|.\|.]
+.
.SY groff
.B "\-m mom"
-.RI [ option
-\*[Ellipsis]]
-.I file
-\*[Ellipsis]
+.RI [ option\~ .\|.\|.\&]
+.RI [ file\~ .\|.\|.]
.YS
.
.
.\" ====================================================================
-.SH CALLING MOM
+.SH Description
.\" ====================================================================
.
-.B mom
+.I mom
is a macro set for
-.BR groff ,
-designed primarily to format documents for
-.I PDF
-and
-.I PostScript
-output.
+.IR groff ,
+designed primarily to prepare documents for PDF and PostScript output.
.
.
-.P
-.B mom
-provides two categories of macros: macros for typesetting, and
-macros for document processing.
+.I mom
+provides macros in two categories: typesetting
+and document processing.
.
-The typesetting macros provide access to groff's typesetting
-capabilities in ways that are simpler to master than groff's
-primitives.
+The former provide access to
+.IR groff 's
+typesetting capabilities in ways that are simpler to master than
+.IR groff 's
+requests and escape sequences.
.
-The document processing macros provide highly customizable markup
-tags that allow the user to design and output professional-looking
-documents with a minimum of typesetting intervention.
+The latter provide highly customizable markup tags that allow the user
+to design and output professional-looking documents with a minimum of
+typesetting intervention.
.
.
.P
Files processed with
-.BR pdfmom (@MAN1EXT@)
-with or without the
-.RI \-T ps
-option, produce
-.I PDF
-documents.
-.
-The documents include a
-.I PDF
-outline that appears in the \[oq]Contents\[cq] panel of document
-viewers, and may contain clickable internal and external links.
+.MR pdfmom @MAN1EXT@
+produce PDF documents.
.
+The documents include a PDF outline that appears in the navigation pane
+panel of document viewers,
+and may contain clickable internal and external links.
.
.P
-When
-.RI \-T ps
-is absent,
-.B groff's
-native
-.I PDF
-driver,
-.BR gropdf ,
+Normally.
+.IR groff 's
+native PDF driver,
+.MR gropdf @MAN1EXT@ ,
is used to generate the output.
.
-When given, the output is still
-.IR PDF ,
-but processing is passed over to
-.BR pdfroff ,
+When
+.I pdfmom
+is given the
+.RB \[lq] "\-T ps" \[rq]
+option,
+it still produces PDF,
+but processing is delegated to
+.IR pdfroff ,
which uses
-.B groff's
+.IR groff 's
PostScript driver,
-.BR grops \&.
-Not all
-.I PDF
-features are available when
-.RI \-T ps
-is given; its primary use is to allow processing of files with
-embedded
-.I PostScript
+.MR grops @MAN1EXT@ .
+.
+Not all PDF features are available when
+.B \-T ps
+is given;
+its primary use is to allow processing of files with embedded PostScript
images.
+.\" XXX: but we have PDFPIC now...so -Tps is necessary only for people
+.\" who want to avoid use of unsafe mode?
.
.
.P
Files processed with
.B groff \-mom
(or
-.BI "\-m " mom\/\c
-) produce
-.I PostScript
-output by default.
+.BR "\-m mom" )
+format for the device specified with the
+.B \-T
+option.
+.
+(In this installation,
+.B @DEVICE@
+is the default output device.)
.
.
.P
-.B mom
-comes with her own very complete documentation in
-.I HTML
-format.
+.I mom
+comes with her own comprehensive documentation in HTML.
.
-A separate
-.IR "PDF manual" ,
-.I Producing PDFs
-with groff and
-.BR mom ,
-covers full
-.B mom
-or
-.I PDF
-usage.
+A PDF manual,
+\[lq]Producing PDFs with
+.I groff
+and
+.IR mom \[rq],
+discusses preparation of PDF documents with
+.I mom
+in detail.
.
.
.\" ====================================================================
-.SH FILES
+.SH Files
.\" ====================================================================
.
.TP
-.I @MACRODIR@/\:om.tmac
-\[en] the main macro file
-.TQ
.I @MACRODIR@/\:mom.tmac
-\[en] a wrapper file that calls om.tmac directly.
+is a wrapper enabling the package to be loaded with
+.RB \[lq] "groff \-m mom" \[rq].
.
-.TP
-.I @HTMLDOCDIR@/\:mom/\:toc.html
-\[en] entry point to the HTML documentation
-.
-.TP
-.I @PDFDOCDIR@/\:mom\-pdf.pdf
-\[en] the PDF manual,
-.I Producing PDFs with groff and mom
.
.TP
-.IR @EXAMPLEDIR@/\:mom/\: * .mom
-\[en] example files using mom
-.
-.
-.\" ====================================================================
-.SH DOCUMENTATION IN ALPHABETICAL ORDER
-.\" ====================================================================
-.
-.
-This part of the man page contains information just as in groff(7),
-.I mom macros
-and
-.I mom escape sequences
-in alphabetical order.
-.
+.I @MACRODIR@/\:om.tmac
+implements the package.
.
-.P
-The logical order of
-.I mom macros
-and
-.I mom escape sequences
-is very well documented in
.
.TP
.I @HTMLDOCDIR@/\:mom/\:toc.html
-\[en] entry point to the HTML documentation
-.
-.
-.P
-That document is quite good for beginners, but other users should be
-happy to have some documentation in reference style.
+is the entry point to the HTML documentation.
.
.
-.P
-So we restrict this part to the alphabetical order of macros and
-escape sequences.
-.
-But, so far, we took all documentation details from the
-.I toc.html
-file, just in a more useful alphabetical order.
+.TP
+.I @PDFDOCDIR@/\:mom\-pdf.pdf
+is \[lq]Producing PDFs with
+.I groff
+and
+.IR mom \[rq],
+by Deri James and Peter Schaffter.
.
.
-So this part of the man page is nothing new, but only a logical
-arrangement.
+.TP
+.IR @EXAMPLEDIR@/\:mom/\: * .mom
+are examples of
+.I mom
+usage.
.
.
.\" ====================================================================
-.SH "QUICK REFERENCE"
+.SH Reference
.\" ====================================================================
.
.\" ====================================================================
-.SS "Quick Reference of Inline Escape Sequences in alphabetical Order"
+.SS "Escape sequences"
.\" ====================================================================
.
.TP
.
.TP
.FONT B \[rs]*[BCK I " n" B ]
-move backwards in a line
+move backward in a line
.
.
.TP
.
.
.TP
-.FONT B \[rs]*[CONDSUP] R \*[Ellipsis] B \[rs]*[CONDSUPX]
+.FONT B \[rs]*[CONDSUP] R .\|.\|. B \[rs]*[CONDSUPX]
pseudo-condensed superscript
.
.
.TP
.FONT B \[rs]*[DOWN I " n" B ]
-temporarily move downwards in a line
+temporarily move downward in a line
.
.
.TP
.
.
.TP
-.FONT B \[rs]*[EXTSUP] R \*[Ellipsis] B \[rs]*[EXTSUPX]
+.FONT B \[rs]*[EXTSUP] R .\|.\|. B \[rs]*[EXTSUPX]
pseudo extended superscript
.
.
.
.
.TP
-.FONT B \[rs]*[ST I <n> B ] R \*[Ellipsis] B \[rs]*[ST I <n> B X]
+.FONT B \[rs]*[ST I <n> B ] R .\|.\|. B \[rs]*[ST I <n> B X]
string tabs (mark tab positions inline)
.
.
.TP
-.FONT B \[rs]*[SUP] R \*[Ellipsis] B \[rs]*[SUPX]
+.FONT B \[rs]*[SUP] R .\|.\|. B \[rs]*[SUPX]
superscript
.
.
.
.
.TP
-.FONT B \[rs]*[UL] R \*[Ellipsis] B \[rs]*[ULX]
+.FONT B \[rs]*[UL] R .\|.\|. B \[rs]*[ULX]
invoke underlining inline (fixed width fonts only)
.
.
.TP
.FONT B \[rs]*[UP I " n" B ]
-temporarily move upwards in a line
+temporarily move upward in a line
.
.
.\" ====================================================================
-.SS "Quick Reference of Macros in alphabetical Order"
+.SS Macros
.\" ====================================================================
.
.TP
.
.
.\" ====================================================================
-.SH "DOCUMENTATION OF DETAILS"
+.SH "Documentation of details"
.\" ====================================================================
.
.\" ====================================================================
-.SS "Details of Inline Escape Sequences in alphabetical Order"
+.SS "Details of inline escape sequences in alphabetical order"
.\" ====================================================================
.
.TP
.
.TP
.FONT B \[rs]*[BCK I " n" B ]
-move wards in a line
+move backward in a line
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" BOLDER
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \[rs]*[BOLDER]
.TQ
.B \[rs]*[BOLDERX]
turns the feature off.
.
-Both are inline escapes, therefore they should not appear as separate
-lines, but rather be embedded in text lines, like this:
+Both are inline escape sequences;
+therefore,
+they should not appear as separate lines,
+but rather be embedded in text lines, like this:
.RS
.EX
-.FONT R "Not " B \[rs]*[BOLDER] R everything B \[rs]*[BOLDERX] R " is as it seems."
+.FONT R "Not " B \[rs]*[BOLDER] R everything B \[rs]*[BOLDERX] \
+R " is as it seems."
.EE
.RE
.
Alternatively, if you wanted the whole line emboldened, you should do
.RS
.EX
-.FONT B \[rs]*[BOLDER] R "Not everything is as it seems." B \[rs]*[BOLDERX]
+.FONT B \[rs]*[BOLDER] R "Not everything is as it seems." \
+B \[rs]*[BOLDERX]
.EE
.RE
.
.P
Note: If you're using the document processing macros with
.BR "\%.PRINTSTYLE \%TYPEWRITE" ,
-.B mom
+.I mom
ignores
.B \[rs]*[BOLDER]
requests.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" BU
-.\" ======================================================================
+.\" ====================================================================
.TP
.FONT B \[rs]*[BU I " n" B ]
move characters pairs closer together inline (related to macro
.BR \%.KERN )
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" COND
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \[rs]*[COND]
.TQ
.B \[rs]*[CONDX]
turns the feature off.
.
-Both are inline escapes, therefore they should not appear as separate
-lines, but rather be embedded in text lines, like this:
+Both are inline escape sequences;
+therefore,
+they should not appear as separate lines,
+but rather be embedded in text lines, like this:
.RS
.EX
.FONT B \[rs]*[COND] I "Not everything is as it seems." B \[rs]*[CONDX]
.B \%.PT_SIZE
macro or with the
.B \[rs]s
-inline escape.
+inline escape sequence.
.
If you wish the new point size to be pseudo-condensed, simply reinvoke
.B \%\[rs]*[COND]
-afterwards.
+afterward.
.
Equally,
.B \%\[rs]*[COND]
.P
Note: If you're using the document processing macros with
.BR "\%.PRINTSTYLE \%TYPEWRITE" ,
-.B mom
+.I mom
ignores
.B \%\[rs]*[COND]
requests.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" CONDSUP
-.\" ======================================================================
+.\" ====================================================================
.TP
-.FONT B \[rs]*[CONDSUP] R \*[Ellipsis] B \[rs]*[CONDSUPX]
+.FONT B \[rs]*[CONDSUP] R .\|.\|. B \[rs]*[CONDSUPX]
pseudo-condensed superscript
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" DOWN
-.\" ======================================================================
+.\" ====================================================================
.TP
.FONT B \[rs]*[DOWN I " n" B ]
-temporarily move downwards in a line
+temporarily move downward in a line
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" EN-MARK
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \[rs]*[EN\-MARK]
mark initial line of a range of line numbers (for use with line
numbered endnotes)
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" EXT
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \[rs]*[EXT]
.TQ
.B \[rs]*[EXTX]
turns the feature off.
.
-Both are inline escapes, therefore they should not appear as separate
-lines, but rather be embedded in text lines, like this:
+Both are inline escape sequences;
+therefore,
+they should not appear as separate lines,
+but rather be embedded in text lines, like this:
.RS
.EX
.FONT B \[rs]*[EXT] I "Not everything is as it seems." B \[rs]*[EXTX]
.B \%.PT_SIZE
macro or with the
.B \[rs]s
-inline escape.
+inline escape sequence.
.
If you wish the new point size to be
.IR \%pseudo-extended ,
simply reinvoke
.B \%\[rs]*[EXT]
-afterwards.
+afterward.
.
Equally,
.B \%\[rs]*[EXT]
.P
Note: If you are using the document processing macros with
.BR "\%.PRINTSTYLE \%TYPEWRITE" ,
-.B mom
+.I mom
ignores
.B \%\[rs]*[EXT]
requests.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" EXTSUP
-.\" ======================================================================
+.\" ====================================================================
.TP
-.FONT B \[rs]*[EXTSUP] R \*[Ellipsis] B \[rs]*[EXTSUPX]
+.FONT B \[rs]*[EXTSUP] R .\|.\|. B \[rs]*[EXTSUPX]
pseudo extended superscript
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" FU
-.\" ======================================================================
+.\" ====================================================================
.TP
.FONT B \[rs]*[FU I " n" B ]
move characters pairs further apart inline (related to macro
.BR .KERN )
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" FWD
-.\" ======================================================================
+.\" ====================================================================
.TP
.FONT B \[rs]*[FWD I " n" B ]
move forward in a line
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" LEADER
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \[rs]*[LEADER]
insert leaders at the end of a line
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" RULE
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \[rs]*[RULE]
draw a full measure rule
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" PT_SIZE
-.\" ======================================================================
+.\" ====================================================================
.TP
.FONT B \[rs]*[SIZE I " n" B ]
change the point size inline (related to macro
.BR \%.PT_SIZE )
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" SLANT
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \[rs]*[SLANT]
.TQ
.B \%\[rs]*[SLANTX]
turns the feature off.
.
-Both are
-.I inline
-.IR escapes ,
-therefore they should not appear as separate lines, but rather be
-embedded in text lines, like this:
+Both are inline escape sequences;
+therefore,
+they should not appear as separate lines,
+but rather be embedded in text lines, like this:
.RS
.EX
-.FONT R "Not " B \[rs]*[SLANT] R everything B \[rs]*[SLANTX] R " is as it seems."
+.FONT R "Not " B \[rs]*[SLANT] R everything B \[rs]*[SLANTX] \
+R " is as it seems."
.EE
.RE
.
you'd do
.RS
.EX
-.FONT B \[rs]*[SLANT] R "Not everything is as it seems." B \[rs]*[SLANTX]
+.FONT B \[rs]*[SLANT] R "Not everything is as it seems." \
+B \[rs]*[SLANTX]
.EE
.RE
.
.P
Note: If you're using the document processing macros with
.BR "\%.PRINTSTYLE \%TYPEWRITE" ,
-.B mom
+.I mom
underlines pseudo-italics by default.
.
To change this behaviour, use the special macro
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" ST
-.\" ======================================================================
+.\" ====================================================================
.TP
-.FONT B \[rs]*[ST I <number> B ] R \*[Ellipsis] B \[rs]*[ST I <number> B X]
+.FONT B \[rs]*[ST I <number> B ] R .\|.\|. B \[rs]*[ST I <number> B X]
Mark positions of string tabs
.
.RS
below.
.
.P
-String tabs need to be marked off with inline escapes before being set
-up with the
+String tabs need to be marked off with inline escape sequences before
+being set up with the
.B .ST
macro.
.
The following shows a sample input line with string tab markers.
.RS
.EX
-.FONT B \[rs]*[ST1] R "Now is the time" B \[rs]*[ST1X] R " for all " B \[rs]*[ST2] R "good men" B \[rs]*ST2X] R " to come to the aid of the party."
+.BR \[rs]*[ST1] "De minimus" \[rs]*[ST1X] \c
+.RB "non curat" \[rs]*[ST2] lex \[rs]*[ST2X] .
.EE
.RE
.
and ends after
.IR men .
.
-.I Inline escapes
-(e.g.\&
+.I Inline escape sequences
+(e.g.,
.I font
or
.I point size
.IR changes ,
or horizontal movements, including padding) are taken into account
when
-.B mom
+.I mom
determines the
.I position
and
.P
.I IMPORTANT:
Owing to the way
-.B groff
+.I groff
processes input lines and turns them into output lines, it is not
possible for
-.B mom
+.I mom
to
.I guess
the correct starting position of string tabs marked off in lines that
you should do:
.RS
.EX
-.B .QUAD CENTER
-.B .PAD """#\[rs]*[ST1]A line of text\[rs]*[ST1X]#"""
-.B .EL
-.B .ST 1
-.B .TAB 1
-.B .PT_SIZE 24
-.B .ALD 3p
-.B \[rs]*[RULE] \[rs]" Note that you can't use \[rs]*[UP] or \[rs]*[DOWN] with \[rs]*[RULE]\""
-.B .RLD 3p
-.B .TQ
+\&.QUAD CENTER
+\&.PAD "#\[rs]*[ST1]A line of text\[rs]*[ST1X]#"
+\&.EL
+\&.ST 1
+\&.TAB 1
+\&.PT_SIZE 24
+\&.ALD 3p
+\&\[rs]" You can\[aq]t use \[rs]*[UP] or \[rs]*[DOWN] with \[rs]*[RULE].
+\&.RLD 3p
+\&.TQ
.EE
.RE
.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" SUP
-.\" ======================================================================
+.\" ====================================================================
.TP
-.FONT B \[rs]*[SUP] R \*[Ellipsis] B \[rs]*[SUPX]
+.FONT B \[rs]*[SUP] R .\|.\|. B \[rs]*[SUPX]
superscript
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" TB+
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \[rs]*[TB+]
Inline escape for
.RI ( "Tab Next" )
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" UL
-.\" ======================================================================
+.\" ====================================================================
.TP
-.FONT B \[rs]*[UL] R \*[Ellipsis] B \[rs]*[ULX]
+.FONT B \[rs]*[UL] R .\|.\|. B \[rs]*[ULX]
invoke underlining inline (fixed width fonts only)
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" UP
-.\" ======================================================================
+.\" ====================================================================
.TP
.FONT B \[rs]*[UP I " n" B ]
-temporarily move upwards in a line
+temporarily move upward in a line
.
.
.\" ====================================================================
-.SS "Details of Macros in alphabetical Order"
+.SS "Details of macros in alphabetical order"
.\" ====================================================================
.
-.\" ======================================================================
+.\" ====================================================================
.\" AUTOLEAD
-.\" ======================================================================
+.\" ====================================================================
.TP
.B .AUTOLEAD
set the linespacing relative to the point size
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Bottom Margin
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .B_MARGIN " <bottom margin>"
Bottom Margin
don't want your type to go.
.
When the bottom margin is reached,
-.B mom
+.I mom
starts a new page.
.
.B .B_MARGIN requires a unit of measure.
To set a nominal bottom margin of 3/4 inch, enter
.RS
.EX
-.B \&.B_MARGIN \&.75i
+.B .B_MARGIN .75i
.EE
.RE
.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Fallback Font
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI \%.FALLBACK_FONT " <fallback font> " "[ ABORT | WARN ]"
Fallback Font
.B \%.FAMILY
(i.e.\& a non-existent
.IR family ),
-.BR mom ,
+.IR mom ,
by default, uses the
.IR "fallback font" ,
.B Courier Medium Roman
.
.TP
.B .FALLBACK_FONT WARN
-.B mom
+.I mom
will issue a warning whenever you try to access a non-existent
.I font
but will continue processing your file with the default
just enter
.B \%".FALLBACK_FONT ABORT"
and
-.B mom
+.I mom
will once again abort on
.IR "font errors" .
.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" FAM
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .FAM " <family>"
-Type Family, alias of \fB.FAMILY\fR
+Type Family,
+alias of
+.B .FAMILY
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" FAMILY
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .FAMILY " <family>"
-Type Family, alias \fB.FAM\fR
+Type Family,
+alias of
+.B .FAM
.
.RS
.
.IR I .
.
.P
-Additional note: If you are running a version of groff lower than
-1.19.2, you must follow all
+Additional note: If you are running a
+.I groff
+version prior to
+1.19.2,
+you must follow all
.B .FAMILY
requests with a
.B .FT
-request, otherwise
-.B mom
+request,
+otherwise
+.I mom
will set all type up to the next
.B .FT
request in the fallback font.
.
.P
-If you are running a version of groff greater than or equal to 1.19.2,
+If you are running
+.I groff
+1.19.2 or later,
when you invoke the
.B .FAMILY
macro,
-.B mom
+.I mom
.I remembers
the font style
.BR ( Roman ,
.
.P
However, if the font style does not exist in the new family,
-.B mom
+.I mom
will set all subsequent type in the fallback font (by default,
.B Courier Medium
.BR Roman )
.P
For example, assuming you don't have the font
.B Medium Condensed Roman
-.RB ( mom
+.RI ( mom
extension
.IR CD )
in the
Please see the Appendices,
.I Adding fonts to
.IR groff ,
-for information on adding fonts and families to groff, as well as to
+for information on adding fonts and families to
+.IR groff , as well as to
see a list of the extensions
-.B mom
+.I mom
provides to
.IR groff 's
basic
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" FONT
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI ".FONT R | B | BI | " "<any other valid font style>"
Alias to
.B .FT
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" FT
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI ".FT R | B | BI | " "<any other valid font style>"
Set font
.
.P
Have a look here for a list of the weight/style arguments
-.B mom
+.I mom
allows.
.
Be aware, though, that you must have the fonts, correctly installed
.B \%.FAMILY
macro.
.
+.
.P
How
-.B mom
+.I mom
reacts to an invalid argument to
.B .FT
-depends on which version of groff you're using.
+depends on which version of
+.I groff
+you're using.
.
If your
-.I groff version
-is greater than or equal to 1.19.2,
-.B mom
-will issue a warning and, depending on how you've set up the fallback
-font, either continue processing using the fallback font, or abort
-(allowing you to correct the problem). If your
-.I groff version
-is less than 1.19.2,
-.B mom
-will silently continue processing, using either the fallback font or
-the font that was in effect prior to the invalid
+.I groff
+version is 1.19.2 or later,
+.I mom
+will issue a warning and,
+depending on how you've set up the fallback font,
+either continue processing using the fallback font,
+or abort
+(allowing you to correct the problem).
+.
+In earlier versions,
+.I mom
+will silently continue processing,
+using either the fallback font or the font that was in effect prior to
+the invalid
.B .FT
call.
.
+.
.P
.B .FT
will also accept, as an argument, a full
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Hanging Indent
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI "\%.HI [" " <measure> " ]
Hanging indent \[em] the optional argument requires a unit of measure.
A hanging indent looks like this:
.RS
.EX
-\fB The thousand injuries of Fortunato I had borne as best I
- could, but when he ventured upon insult, I vowed
- revenge. You who so well know the nature of my soul
- will not suppose, however, that I gave utterance to a
- threat, at length I would be avenged\*[Ellipsis]
+The thousand injuries of Fortunato I had borne as best I
+ could, but when he ventured upon insult, I vowed
+ revenge.\& You who so well know the nature of my soul
+ will not suppose, however, that I gave utterance to a
+ threat, at length I would be avenged.\|.\|.
.EE
.RE
.
.B \%.HI
do not require you to supply a
.IR measure ;
-.B mom
+.I mom
keeps track of the last measure you gave it.
.
.P
are NOT additive.
.
Each time you pass a measure to
-.B .HI ,
+.BR .HI ,
the measure is treated literally.
.
.B
.
.P
.I Note:
-.B mom
+.I mom
has macros for setting lists.
.
This recipe exists to demonstrate the use of
only.
.RS
.EX
-.B ".PAGE 8.5i 11i 1i 1i 1i 1i"
-.B ".FAMILY T"
-.B ".FT R"
-.B ".PT_SIZE 12"
-.B ".LS 14"
-.B ".JUSTIFY"
-.B ".KERN"
-.B ".SS 0"
-.B ".IL \[rs]w'\[rs]0\[rs]0.'"
-.B ".HI \[rs]w'\[rs]0\[rs]0.'"
-\fB1.\[rs]0The most important point to be considered is whether the
-answer to the meaning of Life, the Universe, and Everything
-really is 42. We have no-one's word on the subject except
-Mr.\& Adams'.
-.B .HI
+\&.PAGE 8.5i 11i 1i 1i 1i 1i
+\&.FAMILY T
+\&.FT R
+\&.PT_SIZE 12
+\&.LS 14
+\&.JUSTIFY
+\&.KERN
+\&.SS 0
+\&.IL \[rs]w\[aq]\[rs]0\[rs]0.\[aq]
+\&.HI \[rs]w\[aq]\[rs]0\[rs]0.\[aq]
+1.\[rs]0The most important point to be considered is whether
+the answer to the meaning of Life, the Universe, and
+Everything really is 42.\& We have no one\[aq]s word on the
+subject except Mr.\& Adams\[aq]s.
+\&.HI
2.\[rs]0If the answer to the meaning of Life, the Universe,
and Everything is indeed 42, what impact does this have on
-the politics of representation? 42 is, after all not a
-prime number. Are we to infer that prime numbers don't
+the politics of representation?\& 42 is, after all not a
+prime number.\& Are we to infer that prime numbers don\[aq]t
deserve equal rights and equal access in the universe?
-.B .HI
-3.\[rs]0If 42 is deemed non-exclusionary, how do we present it
-as the answer and, at the same time, forestall debate on its
-exclusionary implications?
+\&.HI
+3.\[rs]0If 42 is deemed non-exclusionary, how do we present
+it as the answer and, at the same time, forestall debate
+on its exclusionary implications?
.EE
.RE
.
First, we invoke a left indent with a measure equal to the width of 2
figures spaces plus a period (using the \[rs]w inline escape).
.
-At this point, the left indent is active; text afterwards would
+At this point, the left indent is active; text afterward would
normally be indented.
.
However, we invoke a hanging indent of exactly the same width, which
.
Because we begin the first line with a number, a period, and a figure
space, the actual text
-.RI ( "The most important point\*[Ellipsis]" )
+.RI ( "The most important point.\|.\|.\&" )
starts at exactly the same spot as the indented lines that follow.
.
.P
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" IB - INDENT BOTH
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI "\%.IB [" " <left measure> <right measure> " ]
Indent both \[em] the optional argument requires a unit of measure
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" IL - INDENT LEFT
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI "\%.IL [" " <measure> " ]
Indent left \[em] the optional argument requires a unit of measure
For example,
.RS
.EX
-.B .IL \[rs]w'margarine'
+.B .IL \[rs]w\[aq]margarine\[aq]
.EE
.RE
indents text by the width of the word
indents by its last active value.
.
See the brief explanation of how
-.B mom
+.I mom
handles indents for more details.
.
.P
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" IQ - quit any/all indents
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI "\%.IQ [" " <measure> " ]
IQ \[em] quit any/all indents
.
.B .IX
will continue to behave as before, but
-.B mom
+.I mom
will issue a warning to
.I stderr
indicating that you should update your documents.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" IR - INDENT RIGHT
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI "\%.IR [" " <measure> " ]
Indent right \[em] the optional argument requires a unit of measure
For example,
.RS
.EX
-.B .IR \[rs]w'jello'
+.B .IR \[rs]w\[aq]jello\[aq]
.EE
.RE
indents text by the width of the word
indents by its last active value.
.
See the brief explanation of how
-.B mom
+.I mom
handles indents for more details.
.
.P
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Left Margin
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .L_MARGIN " <left margin>"
Left Margin
L_MARGIN establishes the distance from the left edge of the printer
sheet at which you want your type to start.
.
-It may be used any time, and remains in effect until you enter a new value.
+It may be used any time,
+and remains in effect until you enter a new value.
.
.P
Left indents and tabs are calculated from the value you pass to
.
Decimal fractions are allowed.
.
-Therefore, to set the left margin at 3 picas (1/2 inch), you'd enter either
+Therefore,
+to set the left margin at 3 picas (1/2 inch),
+you'd enter either
.RS
.EX
.B .L_MARGIN 3P
.B .PAPER
without invoking
.B .L_MARGIN
-(either before or afterwards),
-.B mom
+(either before or afterward),
+.I mom
automatically sets
.B .L_MARGIN
to
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" MCO - BEGIN MULTI-COLUMN SETTING
-.\" ======================================================================
+.\" ====================================================================
.TP
.B .MCO
Begin multi-column setting.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" MCR - RETURN TO TOP OF COLUMN
-.\" ======================================================================
+.\" ====================================================================
.TP
.B \%.MCR
Once you've turned
on (with
.BR \%.MCO ),
.BR .MCR ,
-at any time, returns you to the
-.IR "top of your columns".
+at any time,
+returns you to the
+.IR "top of your columns" . \" XXX: Are italics truly required here?
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" MCX - EXIT MULTI-COLUMNS
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI "\%.MCX [ " "<distance to advance below longest column>" " ]"
Optional argument requires a unit of measure.
.RS
.
.P
+Exit multi-columns.
+.
+.P
.B .MCX
takes you out of any
.I tab
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Start a new Page
-.\" ======================================================================
+.\" ====================================================================
.TP
.B .NEWPAGE
.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Page
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI ".PAGE " <width> " [ " <length> " [ " <lm> " [ " <rm> " [ " \
<tm> " [ " <bm> " ] ] ] ] ]"
.RE
.
.P
-Now suppose you also want to set the top margin, say, at 1\(en1/2 inches.
+Now suppose you also want to set the top margin,
+say,
+at 1\(en1/2 inches.
.
.I <tm>
comes after
macro would look like this:
.RS
.EX
-\f[CB].PAGE 11i 17i 1i 1i 1.5i
+.tr -\-
+\&.PAGE 11i 17i 1i 1i 1.5i
| |
required right---+ +---top margin
- margin\f[R]
+ margin
+.tr --
.EE
.RE
.
Clearly,
.B .PAGE
is best used when you want a convenient way to tell
-.B mom
+.I mom
just the dimensions of your printer sheet (width and length), or when
you want to tell her everything about the page (dimensions and all the
margins), for example
.P
Please read the
.I Important note
-on page dimensions and papersize for information on ensuring groff
+on page dimensions and papersize for information on ensuring
+.I groff
respects your
.B .PAGE
dimensions and margins.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Page Length
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .PAGELENGTH " <length of printer sheet>"
tells
-.B mom
+.I mom
how long your printer sheet is.
.
It works just like
.
.P
Therefore, to tell
-.B mom
+.I mom
your printer sheet is 11 inches long, you enter
.RS
.EX
.RE
.
Please read the important note on page dimensions and papersize for
-information on ensuring groff respects your
+information on ensuring
+.I groff
+respects your
.IR PAGELENGTH .
.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Page Width
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .PAGEWIDTH " <width of printer sheet>"
.
Decimal fractions are allowed.
.
Hence, to tell
-.B mom
+.I mom
that the width of your printer sheet is 8\(12 inches, you enter
.RS
.EX
.
.P
Please read the Important note on page dimensions and papersize for
-information on ensuring groff respects your
+information on ensuring
+.I groff
+respects your
.IR PAGEWIDTH .
.
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Paper
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .PAPER " <paper type>"
provides a convenient way to set the page dimensions for some common
.B .PRINTSTYLE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" PT_SIZE - POINT SIZE OF TYPE
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .PT_SIZE " <size of type in points>"
Point size of type, does not require a
.I Point sizes
may be
.I fractional
-(e.g.\&
+(e.g.,
.I 10.25
or
.IR 12.5 ).
.I \-
the original value.
.
-For example, if the
+For example,
+if the
.I point size
is
-.I 12 ,
+.IR 12 ,
and you want
-.I 14 ,
+.IR 14 ,
you can do
.RS
.EX
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Right Margin
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .R_MARGIN " <right margin>"
Right Margin
.
The reason is that
.B .R_MARGIN
-calculates line length from the overall page dimensions and the left margin.
+calculates line length from the overall page dimensions and the left
+margin.
.
.P
Obviously, it can't make the calculation if it doesn't know the page
.
On the other hand, if you know the line length for a patch of type
should be 17 picas and 3 points, entering the line length with LL is
-much easier than calculating the right margin, e.g.\&
+much easier than calculating the right margin, e.g.,
.RS
.EX
.B .LL 17P+3p
.B PAPER
without invoking
.B .R_MARGIN
-afterwards,
-.B mom
+afterward,
+.I mom
automatically sets
.B .R_MARGIN
to
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" ST - Set String Tabs
-.\" ======================================================================
+.\" ====================================================================
.TP
.FONT B .ST I " <tab number> " B "L | R | C | J [ QUAD ]"
.
After
.I string tabs
have been marked off on an input line (see
-.BR \[rs]*[ST]\*[Ellipsis]\[rs]*[STX] ),
+.BR \[rs]*[ST].\|.\|.\&\[rs]*[STX] ),
you need to
.I set
them by giving them a direction and, optionally, the
.B .ST
an indent or a line length (that's already taken care of, inline,
by
-.BR \[rs]*[ST]\*[Ellipsis]\[rs]*[STX] ).
+.BR \[rs]*[ST].\|.\|.\&\[rs]*[STX] ).
.
.P
If you want string
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" TAB - Call Tabs
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI \%.TAB " <tab number>"
After
.EE
.RE
.
+.
.P
-If you want the tabs to line up, use
+If you want the tabs to line up,
+use
.B .TN
-.RI ( "Tab Next" )
-or, more conveniently, the inline escape \[rs]*[TB+]:
+(\[lq]Tab Next\[rq])
+or,
+more conveniently,
+the inline escape sequence
+.BR \[rs]*[TB+] :
.RS
.EX
-\fB.TAB 1
+.BR .TAB \~1
A line of text in tab 1.\[rs]*[TB+]
A line of text in tab 2.
.EE
which produces
.RS
.EX
-.B "A line of text in tab 1. A line of text in tab 2."
+.B "A line of text in tab 1.\& A line of text in tab 2."
.EE
.RE
.
+.
.P
If the text in your tabs runs to several lines, and you want the first
lines of each tab to align, you must use the multi-column macros.
To demonstrate:
.RS
.EX
-\f[B]TAB 1
+TAB 1
Carrots
Potatoes
Broccoli
produces, on output
.RS
.EX
-\fBCarrots
+Carrots
Potatoes
Broccoli
$1.99/5 lbs
.
.RE
.
-.\" ======================================================================
+.\" ====================================================================
.\" TB - Call Tabs Alias
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .TB " <tab number>"
Alias to
.B .TAB
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" TI - TEMPORARY (LEFT) INDENT
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI "\%.TI [" " <measure> " ]
Temporary left indent \[em] the optional argument requires a
Subsequent invocations of
.B .TI
do not require you to supply a measure;
-.B mom
+.I mom
keeps track of the last measure you gave it.
.
.P
.RS
.EX
.B .TI 1P
-.B The beginning of a paragraph\*[Ellipsis]
+.B The beginning of a paragraph.\|.\|.\&
.B .TI 2P
-.B The beginning of another paragraph\*[Ellipsis]
+.B The beginning of another paragraph.\|.\|.\&
.EE
.RE
.
.
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" TN - Tab Next
-.\" ======================================================================
+.\" ====================================================================
.TP
.B .TN
Tab Next
.B .TN
with the
.B \[rs]c
-inline escape.
+inline escape sequence.
.
Conversely, if you did give a
.B QUAD
In other words, you cannot do
.RS
.EX
-\fB.TAB 1
+\&.TAB 1
Some text\[rs]c
\&.TN
Some more text\[rs]c
\&.TN
\&.TN
-Yet more text\fR
+Yet more text
.EE
.RE
.
should be entered
.RS
.EX
-\fB.TAB 1
+\&.TAB 1
Some text\[rs]c
\&.TN
Some more text\[rs]c
.RE
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Tab Quit
-.\" ======================================================================
+.\" ====================================================================
.TP
.B .TQ
.B TQ
.IR tabs .
.
.
-.\" ======================================================================
+.\" ====================================================================
.\" Top Margin
-.\" ======================================================================
+.\" ====================================================================
.TP
.BI .T_MARGIN " <top margin>"
Top margin
.
.
.\" ====================================================================
-.SH AUTHORS
+.SH Authors
.\" ====================================================================
+.
.I mom
was written by
-.MT peter@\:schaffter.ca
+.MT peter@\:schaffter\:.ca
Peter Schaffter
.ME .
.
PDF support was provided by
-.MT deri@\:chuzzlewit.demon.co.uk
+.MT deri@\:chuzzlewit\:.myzen\:.co\:.uk
Deri James
.ME .
.
-The alphabetical documentation of macros and escape sequences in this
-man page were written by the
-.I mom
-team.
+This manual page was written by Bernd Warken.
.
.
.\" ====================================================================
-.SH "SEE ALSO"
+.SH "See also"
.\" ====================================================================
.
-.BR groff (@MAN1EXT@),
-.BR groff_mom (@MAN7EXT@),
-.
.TP
-.I \%@HTMLDOCDIR@/\:mom/\:toc.html
-\[en] entry point to the HTML documentation
+.I @HTMLDOCDIR@/\:mom/\:toc\:.html
+entry point to the HTML documentation
+.
.
.TP
-.UR http://\:www.schaffter.ca/\:mom/\:momdoc/\:toc.html
+.UR http://\:www\:.schaffter\:.ca/\:mom/\:momdoc/\:toc\:.html
.UE
-\[en] HTML documentation online
+HTML documentation online
+.
.
.TP
-.UR http://\:www.schaffter.ca/\:mom/
+.UR http://\:www\:.schaffter\:.ca/\:mom/
.UE
-\[en] the mom macros homepage
+the
+.I mom
+macros homepage
.
.
-.\" Restore compatibility mode (for, e.g., Solaris 10/11).
-.cp \n[groff_mom_C]
+.P
+.IR "Groff: The GNU Implementation of troff" ,
+by Trent A.\& Fisher and Werner Lemberg,
+is the primary
+.I groff
+manual.
.
+You can browse it interactively with \[lq]info groff\[rq].
+.
+.
+.P
+.MR pdfmom @MAN1EXT@ ,
+.MR groff @MAN1EXT@ ,
+.MR @g@troff @MAN1EXT@
+.
+.
+.\" Restore compatibility mode (for, e.g., Solaris 10/11).
+.cp \n[*groff_groff_mom_7_man_C]
+.do rr *groff_groff_mom_7_man_C
.
-.\" ====================================================================
-.\" Emacs settings
-.\" ====================================================================
.
.\" Local Variables:
+.\" fill-column: 72
.\" mode: nroff
.\" End:
-.\" vim: set filetype=groff:
+.\" vim: set filetype=groff textwidth=72: