Mom -- Quick reference guide

Back to Table of Contents | Next: Appendices

# Quick reference guide

Once you know your way around mom, you may find this guide preferable to using the Table of Contents. It lists mom’s major user-space macros. The links point to references found elsewhere in the documentation.

## Index to the quick reference guide

### TYPESETTING MACROS

- Paper size, margins, line length
- Family, font, point size
- Font modifications
- Linespacing (leading)
- Justification, quad, breaking lines
- Hyphenation
- Word and sentence spacing
- Kerning, ligatures, smartquotes
- Horizontal/vertical motions, columns
- Indents
- Tabs
- Underscoring, underlining
- Superscipts
- Nested lists
- Colour
- Dropcaps
- Utilities
- Graphical Objects

### DOCUMENT PROCESSING MACROS

- Reference macros
- General document formatting directives
- Line numbering
- Set documents in columns
- TYPEWRITE control macros
- Initiate document processing

- Epigraphs
- Main heads
- Subheads
- Paragraph heads
- Reference macros
- Paragraphs
- Quotes (line for line quotes)
- Blockquotes (cited passages of text)
- Code snippets (inserting bits of programming code)
- Author linebreaks (section breaks)
- Document termination string
- Footnotes
- Endnotes
- Margin notes
- Bibliographic references
- Tables of contents
- Letter (correspondence) macros
- Changing global print style parameters after
  START
- Managing a document’s first-page header
  (the “docheader”)
- Managing page headers and footers
- Recto/verso page headers and footers
- Pagination
- Document and section cover (title) pages
- Utilities

## Quick reference guide

`TYPESETTING MACROS`

+++ Paper size, margins, line length
PAPER | -- set common paper sizes (letter, A4, etc)
PAGEWIDTH | -- set a custom page width
PAGELENGTH | -- set a custom page length
PAGE | -- set explicit page dimensions and margins
T_MARGIN | -- set a top margin
B_MARGIN | -- set a bottom margin
L_MARGIN | -- set a left margin (page offset)
R_MARGIN | -- set a right margin
LL | -- set a line length

+++ Family, font, point size
FAMILY | -- set the family of type
FT | -- set the font style (roman, italic, etc)
FALLBACK_FONT | -- establish a fallback font (for missing fonts)
PT_SIZE | -- set the point size
\*[SIZE n] | -- change the point size inline

+++ Font modifications
Pseudo italic
SETSLANT | -- set the degree of slant
\*[SLANT] | -- invoke pseudo italic inline
\*[SLANTX] | -- off pseudo italic inline
Pseudo bold
SETBOLDER | -- set the amount of emboldening
\*[BOLDER] | -- invoke pseudo bold inline
\*[BOLDERX] | -- off pseudo bold inline
Pseudo condensed
CONDENSE | -- set the amount to pseudo condense
\*[COND] | -- invoke pseudo condensing inline
\*[CONDX] | -- off pseudo condensing inlines
Pseudo extended
EXTEND | -- set the amount to pseudo extend
\*[EXT] | -- invoke pseudo extending inline
\*[EXTX] | -- off pseudo condensing inlinee

+++ Linespacing (leading)
LS | -- set the linespacing (leading)
AUTOLEAD | -- set the linespacing relative to the point size

+++ Justification, quad direction, line-by-line setting, breaking lines
JUSTIFY | -- justify text to both margins
QUAD | -- "justify" text left, centre, or right
LEFT | -- set line-by-line quad left
CENTER | -- set line-by-line quad centre
RIGHT | -- set line-by-line quad right
BR | -- break a justified line
SPREAD | -- force justify a line
EL | -- break a line without advancing on the page

+++ Hyphenation
HY | -- automatic hyphenation on or off
HY_SET | -- set automatic hyphenation parameters

+++ Word and sentence spacing
WS | -- set the minimum word space size
SS | -- set the sentence space size

+++ Kerning, ligatures, smartquotes
KERN | -- automatic character pair kerning on or off
\*[BU n] | -- move characters pairs closer together inline
\*[FU n] | -- move character pairs further apart inline
RW | -- uniformly reduce space between characters (tighten)
EW | -- uniformly increase space between characters (loosen)
BR_AT_LINE_KERN | -- break previous line every time RW or EW is invoked
LIGATURES | -- automatic generation of ligatures on or off
SMARTQUOTES | -- smartquoting on or off

+++ Horizontal and vertical movements, columnar setting
ALD | -- move downards on the page
RLD | -- move upwards on the page
SPACE | -- insert space between lines on a page
\*[DOWN n] | -- temporarily move downwards in a line
\*[UP n] | -- temporarily move upwards in a line
\*[FWD n] | -- move forward in a line
\*[BCK n] | -- move backwards in a line
MCO | -- multiple columns on
MCR | -- recto vertical position of column start
MCX | -- multiple columns off, advance past longest column

+++ Indents
IL | -- set and turn on a left indent
IR | -- set and turn on a right indent
IB | -- set and turn on indents both left and right
IQ | -- quit (exit) all indents
TI | -- set and turn on a temporary (one line) indent
HI | -- set and turn on a hanging indent
ILX | -- left indents off
IRX | -- right indents off
IBX | -- both left and right indents off

+++ Tabs
TAB_SET | -- set up a typesetting tab
TAB <n> | -- call tab <n>
TQ | -- quit (exit) tabs
\*[STn]...\*[STnX] | -- string tabs (mark tab positions inline)
TN | -- move to tab <n+1> without advancing on the page
ST | -- set quad/fill for string tabs

+++ Underscoring, underlining
UNDERSCORE | -- underscore
UNDERSCORE2 | -- double underscore
UNDERLINE | -- underline (fixed width fonts only)
\*[UL]...\*[ULX] | -- invoke underling inline (fixed width fonts only)

+++ Superscipts
\*[SUP]...\*[SUPX] | -- superscript (inline)
\*[CONDSUP]...\*[CONDSUPX] | -- pseudo-condensed superscript (inline)
\*[EXTSUP]...\*[EXTSUPX] | -- pseudo extended supercript (inline)
SUPERSCRIPT_RAISE_AMOUNT | -- vertical offset of superscripts

+++ Nested lists
LIST | -- begin a list
ITEM | -- begin an item in a list
SHIFT_LIST | -- change the indent of a list
RESET_LIST | -- clear and reset a list’s enumerator
PAD_LIST_DIGITS | -- space to leave for digits in a digit-enumerated list

+++ Colour
NEWCOLOR | -- initialize (define) a colour
COLOR | -- begin using an initialized colour
XCOLOR | -- initialize a "named" X colour
\*[<colorname>] | -- begin using an initialized colour inline

+++ Dropcaps
DROPCAP | -- set a dropcap
DROPCAP_FAMILY | -- set a dropcap’s family
DROPCAP_FONT | -- set a dropcap’s font style
DROPCAP_COLOR | -- set a dropcap’s colour
DROPCAP_ADJUST | -- adjust size of a dropcap
DROPCAP_GUTTER | -- adjust space between a dropcap and regular text

+++ Utilities
ALIAS | -- give a macro a new name
CAPS | -- set type all caps
COMMENT | -- silently embed comments in a document
ESC_CHAR | -- change the default escape character
\*[LEADER] | -- insert leaders at the end of a line
LEADER_CHARACTER | -- change the character used for leaders
NEWPAGE | -- break to a new page
PAD | -- insert equalized regions of whitespace into a line
PAD_MARKER | -- change the pad marker
\*[RULE] | -- draw a full measure rule
SIZESPECS | -- get font's cap-height, x-height and descender depth
SILENT | -- output processing off or on
TRAP | -- enable or disable page position traps

+++ Graphical objects
DRH | -- draw a horizontal rule
DRV | -- draw a vertical rule
DBX | -- draw a box
DCL | -- draw a circle (ellipse)
RULE_WEIGHT | -- set weight of rules drawn with \*[RULE]
PSPIC | -- insert a PostScript image

`DOCUMENT PROCESSING MACROS`

+++ Reference macros
TITLE | -- document title
DOCTITLE | -- overall document title (if different from TITLE)
ENDNOTE_TITLE | -- document/chapter identification string for endnotes
CHAPTER | -- chapter number
CHAPTER_TITLE | -- chapter title
CHAPTER_STRING | -- what to use in place of “Chapter”
SUBTITLE | -- document subtitle
AUTHOR | -- document author(s)
DOC_COVERTITLE | -- document title cover
COVERTITLE | -- section cover title
COPYRIGHT | -- copyright
MISC | -- miscellaneous cover information
DRAFT | -- document’s draft number
DRAFT_STRING | -- what to use in place of “Draft”
REVISION | -- document’s revision number
REVISION_STRING | -- what to use in place of “Revision”

+++ General document formatting directives
DOCTYPE | -- general document type
COPYSTYLE | -- draft or final copy
PRINTSTYLE | -- typeset or “typewritten”

+++ Line numbering
NUMBER_LINES | -- automatic line numbering on or off
Control macros
NUMBER_QUOTE_LINES | -- numbering of QUOTE lines on or off
NUMBER_BLOCKQUOTE_LINES | -- numbering of BLOCKQUOTE lines on or off

+++ Set documents in columns
COLUMNS
COL_NEXT
COL_BREAK

+++ TYPEWRITE control macros
UNDERLINE_ITALIC | -- underlining of italics on
UNDERLINE_QUOTES | -- underlining of QUOTEs on or off
ITALIC_MEANS_ITALIC | -- use real italics (not underlining)
UNDERLINE_SLANT | -- underlining of pseudo-italics on
SLANT_MEANS_SLANT | -- use pseudo italics (not underlining)

+++ Initiate document processing
START | -- begin document processing

+++ Epigraphs
EPIGRAPH | -- set an epigraph underneath the docheader
Control macros | -- change default style of epigraphs

+++ Main heads
HEAD | -- set a main head
Control macros | -- change default style of heads
HEAD_SPACE | -- control vertical space around heads
NUMBER_HEADS | -- number heads
PREFIX_CHAPTER_NUMBER | -- prefix chapter number to head numbers
RESET_HEAD_NUMBER | -- reset head number to "1"

+++ Subheads
SUBHEAD | -- set a subhead
Control macros | -- change default style of subheads
NUMBER_SUBHEADS | -- number subheads
PREFIX_CHAPTER_NUMBER | -- prefix chapter number to subhead numbers
RESET_SUBHEAD_NUMBER | -- reset subhead number to "1"

+++ Paragraph heads
PARAHEAD | -- set a paragraph head
Control macros | -- change default style of paraheads
NUMBER_PARAHEADS | -- number paraheads
PREFIX_CHAPTER_NUMBER | -- prefix chapter number to parahead numbers
RESET_PARAHEAD_NUMBER | -- reset parahead number to "1"

+++ Paragraphs
PP | -- set a paragraph
Control macros | -- managing paragraph style concerns
PP_FONT | -- globally change font of regular paragraphs
PARA_INDENT | -- set the paragraph first-line indent
INDENT_FIRST_PARAS | -- indenting of paragraph first-lines on or off
PARA_SPACE | -- linespace between paragraphs on or off

+++ Quotes (line for line verbatim quotes)
QUOTE | -- set quoted text line for line
Control macros | -- change default style of quotes
ALWAYS_FULLSPACE_QUOTES | -- control vertical space around quotes
BREAK_QUOTE | -- deprecated

+++ Blockquotes (cited passages of text)
BLOCKQUOTE | -- set longer passages of cited text
Control macros | -- change default style of blockquotes
ALWAYS_FULLSPACE_BLOCKQUOTES | -- control vertical space around quotes
BREAK_BLOCKQUOTE | -- deprecated

+++ Code snippets
CODE | -- set a code snippet
Control macros | -- change default style of code snippets
General | -- family, font, and colour
CODE_SIZE | -- code size as a percentage of prevailing text

+++ Author linebreaks (section breaks)
LINEBREAK | -- insert an author linebreak (section break)
Control macros | -- change default style of linebreaks
LINEBREAK_CHAR | -- character to use for author linebreaks
LINEBREAK_COLOR | -- colour of author linebreak character

+++ Document termination string
FINIS | -- insert a document termination string (e.g. --END--)
Control macros | -- change default style finis string
FINIS_STRING | -- set the document termination string
FINIS_COLOR | -- set the document termination string colour

+++ Footnotes
FOOTNOTE | -- set a footnote
Control macros | -- change default style of footnotes
FOOTNOTE_MARKERS | -- footnote markers on or off
FOOTNOTE_MARKER_STYLE | -- type of footnote marker to use
RESET_FOOTNOTE_NUMBER | -- reset footnote numbering
FOOTNOTE_RULE | -- footnote separator rule on or off
FOOTNOTE_RULE_ADJ | -- adjust vertical position of footnote rule
FOOTNOTE_RULE_LENGTH | -- adjust length of footnote rule
FOOTNOTES_RUN_ON | -- instruct footnotes to be continuous (i.e. not to begin on a new line; only for use with footnotes identified by document line number)

+++ Endnotes
ENDNOTE | -- set an endnote
\*[EN-MARK] | -- mark initial line of a range of line numbers (for use with line numbered endnotes)
ENDNOTES | -- output endnotes
Control macros | -- change just about anything to do with endnotes

General style control
Pagination
Header/footer control
Title control
Document/section identification control
Identification style

+++ Margin notes
MN_INIT | -- initialize margin notes
MN | -- set a margin note

+++ Bibliographic references
REF | -- begin a reference
FOOTNOTE_REFS | -- place references in footnotes
ENDNOTE_REFS | -- place references in endnotes
REF( / REF) | -- put parentheses around embedded references
REF[ / REF] | -- put square brackets around embedded references
REF{ / REF} | -- put curly braces around mbedded references
BIBLIOGRAPHY | -- output a bibliography
Control macros | -- change just about anything to do with bibliographies

BIBLIOGRAPHY_TYPE -- "plain" or enumerated list
General style control
Header/footer control
Main head control

+++ Tables of contents
TOC | -- output a table of contents
Control macros | -- change just about anything to do with tables of contents

General style control
Page numbering
Title control
Changing the style of the different table of contents entry types
Additional table of contents control macros

+++ Letter (correspondence) macros
DATE | -- letter’s date
FROM | -- letter’s addresser
TO | -- letter’s addressee
GREETING | -- letter’s salutation
CLOSING | -- letter’s closing salutation
CLOSING_INDENT | -- indentation of the closing salutation
SIGNATURE_SPACE | -- room to leave for the signature
NO_SUITE | -- printing of "next page number" off or on

+++ Changing global print style parameters after START
DOC_LEFT_MARGIN | -- left margin of everything on the page
DOC_RIGHT_MARGIN | -- right margin of everything on the page
DOC_LINE_LENGTH | -- document’s base line length
DOC_FAMILY | -- document’s base family
DOC_PT_SIZE | -- document’s base point size
DOC_LEAD | -- document’s base lead
DOC_QUAD | -- document’s base quad directions

+++ Managing a document’s first-page header
DOCHEADER | -- document first-page header on or off
Control macros | -- change default style of docheader elements

+++ Managing page headers and footers
HEADERS | -- page headers on or off
FOOTERS | -- page footers on or off
HEADERS_AND_FOOTERS | -- enable generation of both headers and footers
Control macros

Strings | -- left-right-center strings
Style | -- change style defaults for headers and/or footers
Global | -- global style changes
Part-by-part | -- part-by-part style changes
Vertical placement | -- adjust postion of headers and/or footers
Separator rule | -- manage the header/footer separator rule

+++ Recto/verso page headers and footers
RECTO_VERSO | -- recto/verso headers and/or footers on or off
SWITCH_HEADERS | -- switch recto or verso header
SWITCH_FOOTERS | -- switch recto or verso footer
HEADER_RECTO | -- string that constitutes a recto header
HEADER_VERSO | -- string that constitutes a verso header
FOOTER_RECTO | -- string that constitutes a recto footer
FOOTER_VERSO | -- string that constitutes a recto footer

+++ Pagination
PAGINATE | -- pagination on or off
Control macros | -- change default style for pagination
PAGENUMBER | -- user-defined (starting) page number
PAGENUM_STYLE | -- digits, roman numerals, etc
PAGENUM_ON_FIRST_PAGE | -- when footers are enabled
DRAFT_WITH_PAGENUMBER | -- attach draft/revision information to page numbers

+++ Document and section cover (title) pages
COVER | -- information to include in a section cover
DOC_COVER | -- information to include in a document cover
COVERS | -- printing of section covers on or off
DOC_COVERS | -- printing of document covers on or off
Control macros | -- change style defaults for covers

+++ Utilities
ADD_SPACE | -- add space to the top of a page
BLANKPAGE | -- output one or more blank pages
DOC_LEAD_ADJUST | -- adjust document linespacing (lead) to fill pages
COLLATE | -- join documents or chapters of a document together
SHIM | -- move vertical position to next valid baseline

Back to Table of Contents | Top | Next: Appendices