summaryrefslogtreecommitdiff
path: root/contrib/mom/momdoc
diff options
context:
space:
mode:
authorwlemb <wlemb>2002-06-06 13:11:42 +0000
committerwlemb <wlemb>2002-06-06 13:11:42 +0000
commit4f6ee1bcfce7f1e4b385c2f784d839c220c65018 (patch)
treed1bd95b920905f4f4a5d974b9f21a5db9cf862b1 /contrib/mom/momdoc
parentec2d1f2ff2ab2b46e4257ae15cb755898265d08e (diff)
downloadgroff-4f6ee1bcfce7f1e4b385c2f784d839c220c65018.tar.gz
*Wed Jun 5 2002
o Makefile.sub (TFLAG): Add `$(top_builddir)/tmac'. *Tue Jun 4 2002 o Makefile.sub (groff_bin_dirs): Fix typo (forgotten `src' element). *Mon Jun 3 2002 o Makefile.sub (uninstall_sub): Don't use `momdocdir' but `htmldocdir'. Add missing backslash. *Sat Jun 1 2002 o Makefile.in (prepare_make_examples): Test for `penguin.ps', not `examples/penguin.ps'. *Wed May 29 2002 o Rewrote portions of PAGENUM_STYLE and COPYSTYLE so that PAGENUM_STYLE behaves as advertised. *Fri May 24 2002 o /Makefile.sub (momdocdir): Removed. (HTMLDOCFILES): Prepend `momdoc/'. (EXTRAEXAMPLEFILES): Removed. Added entries to... (EXAMPLEFILES): This. (.SUFFIXES, .mom.ps): New. (prepare_make_examples): Updated. (examples/*.ps): Removed; .mom.ps will handle this. (install_data): Updated. *Thu May 23 2002 o Applied two small bug fixes to om.tmac (patches 1.1.1a and 1.1.1b). o mom is now part of groff. o Some renaming to avoid problems with 8+3 filesystems: examples/docprocessing_typeset.mom -> examples/typeset.mom examples/docprocessing_typewrite.mom -> examples/typewrite.mom examples/typesetting_macros.mom -> examples/macros.mom examples/penguin_small2_bw.ps -> examples/penguin.ps o Removed `INSTALL' and `README' since groff takes care of installation now. o Added Makefile.sub. o Added mom.tmac (which simply calls om.tmac). o Added groff_mom.man for orthogonality; it simply points to the HTML documentation. *Thu May 16 2002 o Added macro DRAFT_WITH_PAGENUMBER so user can have draft/revision info attached to the pagenumber in COPYSTYLE DRAFT, instead of having it HEADER center. Always having it HEADER center was creating problems with long doc titles, esp. with PRINTSTYLE TYPEWRITE (which is when COPYSTYLE DRAFT is most likely to be used). Now user has the choice, in these circumstances, either to reduce HEADER_SIZE, or to displace the draft/revision info. Also rewrote portions of COPYSTYLE so that if no revision number is given in the reference macros, "Rev. #" doesn't appear when COPYSTYLE DRAFT. *Fri May 10 2002 o Added capability of user-defined, single string recto/verso headers/footers. o Added new entries to docs about the above. Made some additional small changes to toc.html, rectoverso.html, and headfootpage.html to supplement the new entries. o Small fix to handling of footer separator rule -- was 1 point too low owing to fuzziness of #CAP_HEIGHT as returned by SIZESPECS. o Added some more useful stuff to elvis_syntax. *Sun May 05 2002 o Fix to DEFAULTS so that L_MARGIN and R_MARGIN are reprocessed if DOCTYPE LETTER. R_MARGIN, as set by DOCTYPE LETTER had no preceding PAGEWIDTH or PAPER from which to get #PAGE_WIDTH for figuring out line length. o Additional fix to DEFAULTS in handling DOCTYPE LETTER so that if user sets line length prior to START, no reprocessing of R_MARGIN occurs. This necessitated adding a new number register: #USER_SET_L_LENGTH *Sat May 04 23:48:05 EDT 2002 o Added .cflags 4 /\(en -- was driving me nuts that lines wouldn't break after these characters; I'm assuming others feel the same way * Fri May 03 2002 o Made some small fixes to space handling around quotes, mostly to do with quotes immediately after START and quotes after (sub)heads. * Wed May 01 2002 o Fixed a small bug that was causing the first .PP after START to begin at the top margin of the page regardless of any type that preceded .PP when docheaders were off. o Fixed HEADER so that when HEADERS are off the first line of type on pages after the first falls properly at the top margin
Diffstat (limited to 'contrib/mom/momdoc')
-rw-r--r--contrib/mom/momdoc/docelement.html4
-rw-r--r--contrib/mom/momdoc/docprocessing.html75
-rw-r--r--contrib/mom/momdoc/headfootpage.html250
-rw-r--r--contrib/mom/momdoc/letters.html3
-rw-r--r--contrib/mom/momdoc/rectoverso.html28
-rw-r--r--contrib/mom/momdoc/reserved.html20
-rw-r--r--contrib/mom/momdoc/toc.html20
-rw-r--r--contrib/mom/momdoc/typemacdoc.html3
8 files changed, 346 insertions, 57 deletions
diff --git a/contrib/mom/momdoc/docelement.html b/contrib/mom/momdoc/docelement.html
index 2ba6eb0e..849ecd33 100644
--- a/contrib/mom/momdoc/docelement.html
+++ b/contrib/mom/momdoc/docelement.html
@@ -82,7 +82,7 @@ And don't forget: the
<a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
can be used at any time, including inside
<a href="definitions.html#TERMS_TOGGLE">toggle</a>
-tags (affected only that particular invocation of the tag).
+tags (affecting only that particular invocation of the tag).
Equally,
<a href="definitions.html#TERMS_INLINES">inline escapes</a>
can be used in tags that take
@@ -1224,7 +1224,7 @@ is enabled (see
<a href="docprocessing.html#TYPEWRITE_CONTROL">PRINTSTYLE TYPEWRITE control macros</a>).
<a name="BREAK_QUOTE"><h3><u>4. Manually break a footnoted quote -- BREAK_QUOTE</u></h3></a>
-Exceptionally, a quote or blockquote containing a footnote may crosse
+Exceptionally, a quote or blockquote containing a footnote may cross
a page or column. When this happens, the footnote marker may not be
correct for its position relative to other footnotes on the page, and
the footnote itself may appear on the wrong page or at the bottom of
diff --git a/contrib/mom/momdoc/docprocessing.html b/contrib/mom/momdoc/docprocessing.html
index 371a7576..4f34a421 100644
--- a/contrib/mom/momdoc/docprocessing.html
+++ b/contrib/mom/momdoc/docprocessing.html
@@ -160,10 +160,11 @@
<li><a href="headfootpage.html#PAGINATION"><strong>PAGINATION</strong></a>
<br>
<ul>
- <li><a href="headfootpage.html#PAGINATE">PAGINATE -- on or off</a>
- <li><a href="headfootpage.html#PAGENUMBER">PAGENUMBER -- user supplied page number</a>
- <li><a href="headfootpage.html#PAGENUM_STYLE">PAGENUM_STYLE -- digits, roman numerals, etc.</a>
- <li><a href="headfootpage.html#PAGINATION_CONTROL">Pagination control</a>
+ <li><a href="headfootpage.html#PAGINATE">PAGINATE</a> -- on or off
+ <li><a href="headfootpage.html#PAGENUMBER">PAGENUMBER</a> -- user supplied page number
+ <li><a href="headfootpage.html#PAGENUM_STYLE">PAGENUM_STYLE</a> -- digits, roman numerals, etc.
+ <li><a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a> -- attach draft/revision information to page numbers
+ <li><a href="headfootpage.html#PAGINATE_CONTROL">Pagination control</a>
</ul>
<br>
<li><a href="rectoverso.html#RECTOVERSO"><strong>RECTO_VERSO PRINTING and COLLATING</strong></a>
@@ -1021,23 +1022,57 @@ Macro: <strong>COPYSTYLE</strong> <var>DRAFT | FINAL</var>
<strong>FINAL</strong>, so you don't have to use this macro unless
you want to.
<p>
-<strong>DRAFT</strong> starts your document on page 1, regardless
-of whether you've requested a different starting page number
-with
-<a href="headfootpage.html#PAGENUMBER">PAGENUMBER</a>.
-Page numbers are set in lower case roman numerals.
-<strong>Mom</strong> puts a draft and revision number (from the
-<a href="#DRAFT">DRAFT</a>
-and
-<a href="#REVISION">REVISION</a>
-<a href="#REFERENCE_MACROS">Reference Macros</a>)
-in
-<a href="definitions.html#TERMS_HEADER">page headers</a>
-along with all other information that normally appears there.
+<strong>COPYSTYLE DRAFT</strong> exhibits the following behaviour:
+<br>
+<ol>
+ <li>documents start on page 1, whether or not you
+ request a different starting page number with
+ <a href="headfootpage.html#PAGENUMBER">PAGENUMBER</a>
+ <li>page numbers are set in lower case roman numerals
+ <li>the draft number supplied by
+ <a href="#DRAFT">DRAFT</a>
+ and a revision number, if supplied with
+ <a href="#REVISION">REVISION</a>
+ (see
+ <a href="#REFERENCE_MACROS">reference macros</a>),
+ appear in the center part of
+ <a href="definitions.html#TERMS_HEADER">page headers</a>
+ (or footers, depending on which you'ves selected) along with
+ any other information that normally appears there.
+</ol>
<p>
-<strong>FINAL</strong> respects the starting page number you give
-your document. Page numbers are set in normal (arabic) digits, and
-no draft or revision number appears in the page headers.
+<strong>IMPORTANT:</strong> If you define your own center part for page
+headers with
+<a href="headfootpage.html#HDRFTR_CENTER">HEADER_CENTER</strong>,
+no draft and/or revision number will appear there. If you want draft
+and revision information in this circumstance, use
+<a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a>.
+<p>
+<strong>COPYSTYLE FINAL</strong> differs from <strong>DRAFT</strong> in that:
+<br>
+<ol>
+ <li>it respects the starting page number you give the document
+ <li>page numbers are set in normal (arabic) digits
+ <li>no draft or revision number appears in the page headers
+</ol>
+<p>
+<strong>NOTE:</strong> The center part of page headers can get crowded,
+especially with
+<a href="docprocessing.html#DOCTYPE">DOCTYPE CHAPTER</a>
+and
+<a href="docprocessing.html#DOCTYPE">DOCTYPE NAMED</a>,
+when the <strong>COPYSTYLE</strong> is <strong>DRAFT</strong>.
+Three mechanisms are available to overcome this problem. One is to
+reduce the overall size of headers (with
+<a href="headfootpage.html#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>).
+Another, which only works with
+<a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
+is to reduce the size of the header's centre part only (with
+<a href="headfootpage.html#_SIZE">HEADER_CENTER_SIZE</a>).
+And finally, you can elect to have the draft/revsion information
+attached to page numbers instead of having it appear in the center
+of page headers (see
+<a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a>).
<br>
<hr>
diff --git a/contrib/mom/momdoc/headfootpage.html b/contrib/mom/momdoc/headfootpage.html
index 3e0b7b54..b82cac22 100644
--- a/contrib/mom/momdoc/headfootpage.html
+++ b/contrib/mom/momdoc/headfootpage.html
@@ -29,6 +29,11 @@
<li><a href="#HEADERS">HEADERS</a> -- on or off
<li><a href="#FOOTERS">FOOTERS</a> -- on or off
<li><a href="#FOOTER_ON_FIRST_PAGE">FOOTER_ON_FIRST_PAGE</a>
+ <li><a href="#USERDEF_HDRFTR">User-defined, single string recto/verso headers/footers</a>
+ <ul>
+ <li><a href="#USERDEF_HDRFTR_INTRO">Introduction</a>
+ <li><a href="#HDRFTR_RECTOVERSO">HEADER_RECTO, HEADER_VERSO</a>
+ </ul>
</ul>
<li><a href="#HEADFOOT_CONTROL">Control macros for headers/footers</a>
<ul>
@@ -38,7 +43,7 @@
<li><a href="#HDRFTR_STYLE_GLOBAL">Global style control</a>
<li><a href="#HDRFTR_STYLE_PART">Part-by-part style control</a>
</ul>
- <li><a href="#HDRFTR_VERTICAL">Vertical placement and spacing</a>
+ <li><a href="#HDRFTR_VERTICAL">Vertical placement and spacing of headers/footers</a>
<ul>
<li><a href="#HDRFTR_MARGIN">HEADER_MARGIN</a>
<li><a href="#HDRFTR_GAP">HEADER_GAP</a>
@@ -50,6 +55,9 @@
</ul>
</ul>
<li><a href="#PAGINATION">Pagination</a>
+ <ul>
+ <li><a href="#INDEX_PAGINATION">Pagination control macros</a>
+ </ul>
</ul>
<a name="HEADFOOTPAGE_INTRO">
@@ -354,6 +362,173 @@ page 1, invoke <strong>FOOTER_ON_FIRST_PAGE</strong> without any argument.
<br>
<hr>
+<!---USERDEF_HDRFTR--->
+
+<a name="USERDEF_HDRFTR">
+ <h2><u>User-defined, single string recto/verso headers/footers</u></h2>
+</a>
+
+<a name="USERDEF_HDRFTR_INTRO"><h3><u>Introduction</u></h3></a>
+
+Sometimes, you'll find you can't get <strong>mom</strong>'s handling
+of 3-part headers or footers to do exactly what you want in the
+order you want. This is most likely happen when you want the
+information contained in the headers/footers split over two pages,
+as is often the case with recto/verso documents.
+<p>
+Say, for example, you want recto page headers to contain a document's
+author, centered, and verso page headers to contain the document's
+title, also centered, like this:
+<p>
+<pre>
+ +------------------------+ +------------------------+
+ | Author | | Title |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ +------------------------+ +------------------------+
+</pre>
+
+With <strong>mom</strong>'s standard 3-part headers, this isn't
+possible, even when
+<a href="rectoverso.html#RECTO_VERSO">RECTO_VERSO</a>
+is enabled. <strong>RECTO_VERSO</strong> switches the left and
+right parts of headers on alternate pages, but the center
+part remains unchanged.
+<p>
+Anytime you need distinctly different headers on alternate
+pages, <strong>mom</strong> has macros that let you manually
+design and determine what goes into headers on recto pages, and
+what goes into headers on verso pages. The macros are
+<a href="#HDRFTR_RECTO">HEADER_RECTO</a>
+and
+<a href="#HDRFTR_VERSO">HEADER_VERSO</a>.
+Both allow you to state whether the header is flush left, centered,
+or flush right, and both take a single
+<a href="definitions.html#TERMS_STRINGARGUMENT">string argument</a>
+with which, by combining text and
+<a href="definitions.html#TERMS_INLINES">inline escapes</a>,
+you can make the headers come out just about any way you want.
+Use of the <strong>\*[PAGE#]</strong> escape is permitted in the
+string argument (see
+<a href="#PAGE_NUMBER_INCL">Including the page number in header-left, -center or -right</a>),
+and <strong>mom</strong> provides a special mechanism whereby
+it's possible to &quot;pad&quot; it as well.
+<br>
+
+<!---HDRFTR_RECTOVERSO--->
+
+<hr width="66%" align="left">
+<p>
+<a name="HDRFTR_RECTOVERSO"></a>
+Macro: <strong>HEADER_RECTO</strong> <var>LEFT | CENTER | RIGHT &quot;&lt;header recto string&gt;&quot;</var>
+Macro: <strong>HEADER_VERSO</strong> <var>LEFT | CENTER | RIGHT &quot;&lt;header verso string&gt;&quot;</var>
+<br>
+
+<p>
+<strong>HEADER_RECTO</strong> and <strong>HEADER_VERSO</strong> behave
+identically, hence all references to <strong>HEADER_RECTO</strong>
+in this section also refer to <strong>HEADER_VERSO</strong>.
+Furthermore, <strong>FOOTER_</strong> can be used instead of
+<strong>HEADER_</strong> to set up recto/verso footers.
+<p>
+The first argument to <strong>HEADER_RECTO</strong> is the
+direction in which you want the header
+<a href="definitions.html#TERMS_QUAD">quadded</a>.
+<strong>L, C</strong> and <strong>R</strong> may be used in
+place of <strong>LEFT, CENTER</strong> and
+<strong>RIGHT</strong>. The second argument is a string,
+surrounded by double-quotes, containing what you want in the
+header. <strong>HEADER_RECTO</strong> disables <strong>mom</strong>'s
+normal 3-part headers, therefore anything you want in the
+headers must be entered by hand in the string.
+<p>
+By default, <strong>HEADER_RECTO</strong> is set at the same
+size, and in the same family and font, as paragraph text. The
+control macros
+<a href="#HDRFTR_GLOBAL_FAMILY">HEADER_FAMILY</a>
+and
+<a href="#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>
+may be used to change the default family and size. Changes to
+the font(s) within the string must be accomplished with the
+<a href="definitions.html#TERMS_INLINES">inline escapes</a>
+<strong>\*[ROM], \*[IT], \*[BD], \*[BDI]</strong> and
+<strong>\*[PREV]</strong> (see
+<a href="inlines.html#INLINE_FONTS_MOM">Changing fonts</a>).
+Additional refinements to the style of the header-recto string,
+including horizontal spacing and/or positioning, can also be made with
+inline escapes.
+<p>
+To include the current page number in the string, use the
+<strong>\*[PAGE#]</strong> inline.
+
+<h3><u>Padding the HEADER_RECTO/HEADER_VERSO string</u></h3>
+<p>
+You can &quot;pad&quot; the header-recto string, a convenience you'll
+appreciate in circumstances such as the following.
+<p>
+<pre>
+ VERSO RECTO
+ +------------------------+ +------------------------+
+ | Author Page# | | Page# Title |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ | | | |
+ +------------------------+ +------------------------+
+</pre>
+
+To pad the string argument passed to <strong>HEADER_RECTO</strong>,
+begin and end the string (inside the double-quotes) with the caret
+character (<kbd>^</kbd>). Enter the pound sign (<kbd>#</kbd>) at any
+point in the string where you want an equalized amount of whitespace
+inserted. (If you're unsure what padding is, see
+<a href="goodies.html#PAD">Insert space into lines</a>.)
+Note that if you're padding the string, it doesn't matter what
+quad direction you give <strong>HEADER_RECTO</strong>.
+<p>
+The situation depicted above is accomplished like this:
+<p>
+<pre>
+ .HEADER_RECTO LEFT "^\*[PAGE#]#Title^"
+ .HEADER_VERSO LEFT "^Author#\*[PAGE#]^"
+</pre>
+
+Note that <strong>mom</strong> does not interpret the <kbd>#</kbd>
+in <strong>\*[PAGE#]</strong> as a padding marker (i.e. as a place
+to insert whitespace).
+<p>
+<strong>IMPORTANT:</strong> The
+<a href="goodies.html#PAD_MARKER">PAD_MARKER</a>
+macro, which changes the default pad marker (<kbd>#</kbd>) used by
+<a href="goodies.html#PAD">PAD</a>,
+has no effect on the pad marker used in the
+<strong>HEADER_RECTO</strong> string. If you absolutely must
+have a literal pound sign in your <strong>HEADER_RECTO</strong>
+string, use the escape sequence <kbd>\N'35'</kbd> where you want
+the pound sign to go.
+<br>
+<hr>
+
<a name="HEADFOOT_CONTROL">
<h2><u>Control macros for headers/footers</u></h2>
</a>
@@ -444,7 +619,7 @@ with <strong>FOOTER_</strong> to change the strings in footers.
<a name="PAGE_NUMBER_SYMBOL">
<h3><u>Replacing header-left, -center or -right with the page number</u></h3>
</a>
-If you would like the current page number to appear
+If you would like to have the current page number to appear
header-left, -center, or -right <em>instead</em> of a text
string, invoke the appropriate macro, above, with the single
argument <code>#</code> (the &quot;number&quot; or
@@ -491,6 +666,10 @@ and so on.
The following macros allow you to make changes that affect all
parts of the header at once.
<p>
+Please note that <strong>HEADER_FAMILY</strong> and
+<strong>HEADER_FONT</strong> have no effect on
+<a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>.
+<p>
<ul>
<li><a href="#HDRFTR_GLOBAL_FAMILY">HEADER_FAMILY</a>
<li><a href="#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>
@@ -546,18 +725,21 @@ See
for an explanation of how control macros ending in
<strong>_SIZE</strong> work.
<p>
-Normally, macros that control headers have no effect on
+<a name="FOOTER_GLOBAL_SIZE"></a>
+<strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
+with <strong>FOOTER_</strong> to change the footer size.
+<p>
+<strong>ADDITIONAL NOTE:</strong> Normally, macros that control headers have no
+effect on
<a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>.
<strong>HEADER_SIZE</strong> is an exception. While all parts of a
-header in <strong>PRINTSTYLE TYPEWRITE</strong> are the same size, you
-can use <strong>HEADER_SIZE</strong> to reduce the header's point size.
+header in <strong>PRINTSTYLE TYPEWRITE</strong> are always the same
+size, you can use <strong>HEADER_SIZE</strong> with <strong>PRINTSTYLE
+TYPEWRITE</strong> to reduce the header's overall point size.
You'll most likely require this when the
<a href="docprocessing.html#COPYSTYLE">COPYSTYLE</a>
is <strong>DRAFT</strong>, since portions of the header may overprint
if, say, the title of your document is very long.
-<p>
-<strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
-with <strong>FOOTER_</strong> to change the footer size.
<br>
<hr width="33%" align="left">
@@ -575,7 +757,7 @@ elements of header style interact with <strong>mom</strong>'s defaults,
invoke <strong>HEADER_PLAIN</strong> by itself, with no argument.
<strong>Mom</strong> will disable her default behaviour for headers,
and reset all elements of header style to the same family, font,
-and point size as she uses in text paragraphs.
+and point size as she uses in paragraphs.
<p>
<strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
with <strong>FOOTER_</strong> to disable <strong>mom</strong>'s
@@ -591,10 +773,10 @@ replace &quot;&lt;POSITION&gt;&quot; by <strong>LEFT, CENTER,</strong>
or <strong>RIGHT</strong> as appropriate.
<p>
<ul>
- <li><a href="_FAMILY">HEADER_&lt;POSITION&gt;_FAMILY</a>
- <li><a href="_FONT">HEADER_&lt;POSITION&gt;_FONT</a>
- <li><a href="_SIZE">HEADER_&lt;POSITION&gt;_SIZE</a>
- <li><a href="_CAPS">HEADER_&lt;POSITION&gt;_CAPS</a>
+ <li><a href="#_FAMILY">HEADER_&lt;POSITION&gt;_FAMILY</a>
+ <li><a href="#_FONT">HEADER_&lt;POSITION&gt;_FONT</a>
+ <li><a href="#_SIZE">HEADER_&lt;POSITION&gt;_SIZE</a>
+ <li><a href="#_CAPS">HEADER_&lt;POSITION&gt;_CAPS</a>
</ul>
<hr width="33%" align="left">
@@ -893,6 +1075,18 @@ and want to change the separator rule gap. In footers, the gap
is measured from the top of the tallest
<a href="definitions.html#TERMS_ASCENDER">ascender</a>
in the footer.
+<p>
+<strong>ADDITIONAL NOTE:</strong> When using
+<a href="#HDRFTR_RECTOVERSO">FOOTER_RECTO</a>
+and
+<a href="#HDRFTR_RECTOVERSO">FOOTER_VERSO</a>,
+make sure that the default size for footers
+(<a href="#FOOTER_GLOBAL_SIZE">FOOTER_SIZE</a>)
+is set to the largest size of type that will be used in the
+footer or <strong>mom</strong> may not get the rule gap right.
+Inline changes to the size of type in
+<strong>FOOTER_RECTO</strong> and <strong>FOOTER_VERSO</strong>
+should always be negative (smaller) than the default.
<br>
<hr>
@@ -917,6 +1111,7 @@ with control macros.
<li><a href="#PAGENUMBER">PAGENUMBER</a> -- user-defined (starting) page number
<li><a href="#PAGENUM_STYLE">PAGENUM_STYLE</a> -- digits, roman numerals, etc
<li><a href="#PAGENUM_ON_FIRST_PAGE">PAGENUM_ON_FIRST_PAGE</a> -- applies only when footers are enabled
+ <li><a href="#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a> -- attach draft/revision information to page numbers
<li><a href="#PAGINATE_CONTROL">Control macros</a>
</ul>
<br>
@@ -1013,6 +1208,35 @@ page of a document, but do want one on pages that appear after
of the document, then invoke it either just before or after your
first <strong>COLLATE</strong>.
<br>
+
+<!---DRAFT_WITH_PAGENUMBER--->
+
+<hr width="66%" align="left">
+<p>
+<a name="DRAFT_WITH_PAGENUMBER"></a>
+Macro: <strong>DRAFT_WITH_PAGENUMBER</strong>
+
+<p>
+Sometimes, in
+<a href="docprocessing.html#COPYSTYLE">COPYSTYLE DRAFT</a>,
+the center part of page headers gets overcrowded because of the draft
+and revision information that go there by default.
+<strong>DRAFT_WITH_PAGENUMBER</strong> is one way to
+fix the problem.
+<p>
+Invoked without an argument, <strong>DRAFT_WITH_PAGENUMBER</strong>
+removes draft/revision information from the page headers and attaches
+it instead to the document's page numbering, in the form
+<p>
+<pre>
+ Draft #, Rev. # / &lt;pagenumber&gt;
+</pre>
+
+See the note in
+<a href="docprocessing.html#COPYSTYLE">COPYSTYLE DRAFT</a>
+for other ways of dealing with crowded page headers when formatting
+draft-style copy.
+<br>
<hr>
<!---PAGINATE_CONTROL--->
diff --git a/contrib/mom/momdoc/letters.html b/contrib/mom/momdoc/letters.html
index 0f1c3ad6..951baab1 100644
--- a/contrib/mom/momdoc/letters.html
+++ b/contrib/mom/momdoc/letters.html
@@ -144,8 +144,7 @@ In letters, <strong>mom</strong> sets:
<li>the addressor in a block flush left, page left
<li>the greeting flush left
<li>the body of the letter justified
- <li>in multi-page letters
- <br>
+ <li>in multi-page letters:
<ul>
<li>a footer indicating there's a next page (of the form <code>.../#</code>)
<li>the page number at the top of every page after page one
diff --git a/contrib/mom/momdoc/rectoverso.html b/contrib/mom/momdoc/rectoverso.html
index e45537f8..161e475f 100644
--- a/contrib/mom/momdoc/rectoverso.html
+++ b/contrib/mom/momdoc/rectoverso.html
@@ -40,15 +40,25 @@ document in such a way that it can be printed on both sides of a
printer sheet and subsequently bound.
<p>
With recto/verso, <strong>mom</strong> automatically takes control
-of two aspects of alternating page layout in a document: the left and right
-margins (provided they're not equal), and the switching of the left
-and right parts of
-<a href="definitions.html#TERMS_HEADER">headers</a>
-or
-<a href="definitions.html#TERMS_FOOTER">footers</a>
-(see the
-<a href="headfootpage.html#DESCRIPTION_GENERAL">General description of headers</a>)
-and page numbering (if page numbers are not centered).
+of the following aspects of alternating page layout:
+<br>
+<ul>
+ <li>switching left and right margins (if they're not equal)
+ <li>switching the left and right parts of the default 3-part
+ <a href="definitions.html#TERMS_HEADER">headers</a>
+ or
+ <a href="definitions.html#TERMS_FOOTER">footers</a>
+ (see the
+ <a href="headfootpage.html#DESCRIPTION_GENERAL">General description of headers</a>)
+ <li>switching
+ <a href="headfootpage.html#HDRFTR_RECTOVERSO">HEADER_RECTO</a>
+ and
+ <a href="headfootpage.html#HDRFTR_RECTOVERSO">HEADER_VERSO</a>
+ if user-defined, single string recto/verso headers
+ or footers are used in place of the default 3-part
+ headers or footers
+ <li>switching the page number position (if page numbers are not centered)
+</ul>
<p>
It is beyond the scope of this documentation to cover the different
ways in which you can make your printer print on both sides of a sheet.
diff --git a/contrib/mom/momdoc/reserved.html b/contrib/mom/momdoc/reserved.html
index 3025d122..e9509894 100644
--- a/contrib/mom/momdoc/reserved.html
+++ b/contrib/mom/momdoc/reserved.html
@@ -243,6 +243,7 @@ t "mark" register set in T_MARGIN; recalled in LS and AUTO
#T_INDENT Value of temporary indent
#T_MARGIN Top margin
#T_MARGIN_SET Did we set the top margin with T_MARGIN? (toggle)
+#USER_SET_L_LENGTH Did user invoke LL? (toggle)
u Horiz position of start of underscore
+++STRINGS+++
@@ -417,6 +418,7 @@ DOCTYPE_SIZE ps to use for doctype string in doc header
DOCTYPE Type of doc (DEFAULT, CHAPTER, NAMED, LETTER)
DO_QUOTE Print quote (invoked from QUOTE or BLOCKQUOTE)
DRAFT_STRING What to print whenever the word "draft" is required
+DRAFT_WITH_PAGENUMBER Attach draft/revision info to page number (instead of putting it HEADER center)
EPIGRAPH_AUTOLEAD Autolead value for epigraphs
EPIGRAPH_FAMILY Family to use in epigraphs
EPIGRAPH_FONT Font to use in epigraphs
@@ -453,6 +455,7 @@ HDRFTR_LEFT String to go in left part of header/footer; default aut
HDRFTR_LEFT The header/footer left string
HDRFTR_MARGIN Distance from top of page to header
HDRFTR_PLAIN Header/footer fam/ft/ps all same as running text
+HDRFTR_RECTO User-defined, single string recto header/footer
HDRFTR_RIGHT_CAPS Right part of header/footer in caps? (toggle)
HDRFTR_RIGHT_FAMILY Family of right part of headers/footers
HDRFTR_RIGHT_FONT Font of right part of headers/footers
@@ -463,6 +466,7 @@ HDRFTR_RULE_INTERNAL Prints the header/footer rule
HDRFTR_RULE Turns header/footer rule on or off
HDRFTR_RULE Turns header/footer rule on or off. When invoked internally, prints the rule.
HDRFTR_SIZE ps in/decrease of headers/footers*
+HDRFTR_VERSO User-defined, single string verso header/footer
HEAD_CAPS Print section titles in caps? (toggle)
HEADER_GAP Space between header and running text
HEADER_MARGIN Space from top of page to header
@@ -554,6 +558,7 @@ HDRFTR_RULE Prints rule under header or over footer
PRINT_FOOTNOTE_RULE An alias of PRINT_FOOTNOTE; prints footnote separator rule
PRINT_HDRFTR Prints header/footer (trap invoked)
PRINT_PAGE_NUMBER Invoked in HEADER or FOOTER
+PRINT_USERDEF_HDRFTR Prints user defined, single string recto/verso header/footer
REMOVE_INDENT Removes indents set with CHECK_INDENT
TRAPS Sets hdrftr traps; optionally adjusts #DOC_LEAD to fill page to #B_MARGIN
@@ -596,6 +601,7 @@ dc "mark" register for document columns
#DOCS Always 1 after START
#DOC_TYPE 1=default, 2=chapter, 3=named, 4=letter
#DRAFT The draft number
+#DRAFT_WITH_PAGENUM Are we attaching draft/revision info to page number? (toggle)
#EM_ADJUST Amount to raise \(em at END
#END_QUOTE For PP=0 indenting; did we just end a quote? (toggle)
#EPI_ACTIVE Are we in an epigraph? (toggle)
@@ -639,11 +645,12 @@ dc "mark" register for document columns
#GREETING Is there a greeting (for letters)? 1=yes
#GUTTER Width of gutter between columns
#HDRFTR_CENTER_CAPS Center part of header/footer in caps? (toggle; default=off)
+#HDRFTR_HEIGHT Cap height of $HDRFTR_RECTO/$HDRFTR_VERSO strings
#HDRFTR_LEFT_CAPS Left part of header/footer in caps? (toggle; default=off)
#HDRFTR_RIGHT_CAPS Right part of header/footer in caps? (toggle; default=on)
#HDRFTR_RULE_GAP Space between header/footer and header/footer rule
#HDRFTR_RULE Print head/footer rule? (toggle)
-#HDRFTR_TMP_CAPS_SWITC H Temporarily holds HDRFTR_LEFT_CAPS value if #SWITCH_HDRFTR=1
+#HDRFTR_TMP_CAPS_SWITCH Temporarily holds HDRFTR_LEFT_CAPS value if #SWITCH_HDRFTR=1
#HEAD 1=main/section head 2=subhead
#HEAD_CAPS Print section titles in caps? (toggle)
#HEADER_GAP Distance from header to running text
@@ -672,6 +679,7 @@ dc "mark" register for document columns
#NUM_COLS Number of columns per page
#PAGE_NUM_ADJ What to add to n% to get #PAGENUMBER
#PAGENUMBER The page number
+#PAGENUM_STYLE_SET Did we set pagenumber style? (toggle)
#PAGE_NUM_H_POS 1=left 2=center 3=right; default=2
#PAGE_NUM_HYPHENS Print hyphens surrounding page numbers? (toggle)
#PAGE_NUM_HYPHENS_SET Did user set (or unset) hyphens around page numbers? (toggle)
@@ -724,6 +732,9 @@ dc "mark" register for document columns
#UNDERLINE_QUOTE Underline pquotes? (toggle)
#UNDERLINE_SLANT For TYPEWRITE. 1=yes; 0=no
#UNDERLINE_WAS_ON In HEADER to re-enable running text UNDERLINE (toggle)
+#USERDEF_HDRFTR User defined single string recto/verso header/footer? (toggle)
+#USERDEF_HDRFTR_RECTO_QUAD 1=left, 2=center, 3=right
+#USERDEF_HDRFTR_VERSO_QUAD 1=left, 2=center, 3=right
#USER_DEF_HEADER_CENTER User defined center title? (1=yes); used in COPYSTYLE
#USER_DEF_HEADER_LEFT User defined center title? (1=yes); used in COPYSTYLE
#USER_DEF_HEADER_RIGHT User defined center title? (1=yes); used in COPYSTYLE
@@ -783,6 +794,7 @@ $HEAD_SIZE_CHANGE ps in/decrease of section titles*
$LINEBREAK_CHAR Character that marks line breaks
$LINEBREAK_CHAR_V_ADJ +|- amount by which to raise/lower linebreak character
PAGE# For use in hdrftr strings where page # is needed; \*[PAGE]
+$PAGENUM_STYLE String passed to PAGENUM_STYLE
$PAGE_NUM_FAM Family of page numbers
$PAGE_NUM_FT Font of page numbers
$PAGE_NUM_SIZE_CHANGE ps in/decrease of page numbers
@@ -804,6 +816,8 @@ $TITLE Document title
$TITLE_FAM Family to use for title in doc header
$TITLE_FT Font to use for title in doc header
$TITLE_SIZE_CHANGE ps in/decrease of title in doc header*
+$USERDEF_HDRFTR_RECTO User defined header/footer recto string
+$USERDEF_HDRFTR_VERSO User defined header/footer verso string
*relative to #DOC_PT_SIZE
**relative to overall ps of headers as set by HEADER_SIZE
@@ -851,6 +865,7 @@ FOOTER_LEFT HDRFTR_LEFT
FOOTER_LEFT_PS HDRFTR_LEFT_SIZE
FOOTER_LEFT_SIZE HDRFTR_LEFT_SIZE
FOOTER_PLAIN HDRFTR_PLAIN
+FOOTER_RECTO HDRFTR_RECTO
FOOTER_RIGHT_CAPS HDRFTR_RIGHT_CAPS
FOOTER_RIGHT_FAM HDRFTR_RIGHT_FAMILY
FOOTER_RIGHT_FAMILY HDRFTR_RIGHT_FAMILY
@@ -862,6 +877,7 @@ FOOTER_RIGHT_SIZE HDRFTR_RIGHT_SIZE
FOOTER_RULE_GAP HDRFTR_RULE_GAP
FOOTER_RULE HDRFTR_RULE
FOOTER_SIZE HDRFTR_SIZE
+FOOTER_VERSO HDRFTR_VERSO
HDRFTR_RULE_INTERNAL HDRFTR_RULE
HEADER_CENTER_CAPS HDRFTR_CENTER_CAPS
HEADER_CENTER_FAM HDRFTR_CENTER_FAMILY
@@ -890,6 +906,7 @@ HEADER_LEFT HDRFTR_LEFT
HEADER_LEFT_PS HDRFTR_LEFT_SIZE
HEADER_LEFT_SIZE HDRFTR_LEFT_SIZE
HEADER_PLAIN HDRFTR_PLAIN
+HEADER_RECTO HDRFTR_RECTO
HEADER_RIGHT_CAPS HDRFTR_RIGHT_CAPS
HEADER_RIGHT_FAM HDRFTR_RIGHT_FAMILY
HEADER_RIGHT_FAMILY HDRFTR_RIGHT_FAMILY
@@ -901,6 +918,7 @@ HEADER_RIGHT_SIZE HDRFTR_RIGHT_SIZE
HEADER_RULE_GAP HDRFTR_RULE_GAP
HEADER_RULE HDRFTR_RULE
HEADER_SIZE HDRFTR_SIZE
+HEADER_VERSO HDRFTR_VERSO
PAGENUM PAGENUMBER
PAGINATION PAGINATE
PP_FT PP_FONT
diff --git a/contrib/mom/momdoc/toc.html b/contrib/mom/momdoc/toc.html
index fd130363..62404177 100644
--- a/contrib/mom/momdoc/toc.html
+++ b/contrib/mom/momdoc/toc.html
@@ -105,7 +105,7 @@
<ul>
<li><a href="docprocessing.html#LEADING_NOTE">IMPORTANT NOTE on leading/spacing and bottom margins</a>
</ul>
- <li><a href="docprocessing.html#SETUP"><strong>5.3 Preliminary Document Setup</strong></a>
+ <li><a href="docprocessing.html#SETUP"><strong>5.3 PRELIMINARY DOCUMENT SETUP</strong></a>
<ul>
<li><a href="docprocessing.html#DOCPROCESSING_TUT">5.3.1 Tutorial</a> -- setting up a mom document
<br>
@@ -156,20 +156,24 @@
<li><a href="docelement.html#FOOTNOTE_INTRO">5.4.10 Footnotes</a>
<li><a href="docelement.html#FINIS_INTRO">5.4.11 Document termination</a> -- FINIS
</ul>
- <li><a href="headfootpage.html#HEADFOOTPAGE"><strong>5.5 Document headers and footers</strong></a>
+ <li><a href="headfootpage.html#HEADFOOTPAGE"><strong>5.5 DOCUMENT HEADERS AND FOOTERS</strong></a>
<ul>
<li><a href="headfootpage.html#HEADFOOTPAGE_INTRO">5.5.1 Introduction</a>
<li><a href="headfootpage.html#DESCRIPTION_GENERAL">5.5.2 General description of headers/footers</a>
<li><a href="headfootpage.html#HEADER_STYLE">5.5.3 Default specs for headers/footers</a>
<li><a href="headfootpage.html#VERTICAL_SPACING">5.5.4 Vertical placement and spacing of headers/footers</a>
- <li><a href="headfootpage.html#HEADFOOT_CONTROL">5.5.5 Managing headers/footers</a> -- header/footer control macros
+ <li><a href="headfootpage.html#HEADFOOT_MANAGEMENT">5.5.5 Managing headers/footers</a>
+ <ul>
+ <li><a href="headfootpage.html#USERDEF_HDRFTR">5.5.5.1 User-defined, single string recto/verso headers/footers</a>
+ </ul>
+ <li><a href="headfootpage.html#HEADFOOT_CONTROL">5.5.6 Control macros for headers/footers</a>
</ul>
- <li><a href="headfootpage.html#PAGINATION"><strong>5.6 Pagination</strong></a>
+ <li><a href="headfootpage.html#PAGINATION"><strong>5.6 PAGINATION</strong></a>
<ul>
<li><a href="headfootpage.html#PAGINATION">Introduction</a>
<li><a href="headfootpage.html#INDEX_PAGINATION">Pagination macros list</a>
</ul>
- <li><a href="rectoverso.html#RECTOVERSO"><strong>5.7 Recto/verso printing and collating</strong></a>
+ <li><a href="rectoverso.html#RECTOVERSO"><strong>5.7 RECTO/VERSO PRINTING AND COLLATING</strong></a>
<ul>
<li><a href="rectoverso.html#RECTOVERSO_INTRO">5.7.1 Introduction to recto/verso</a>
<ul>
@@ -180,16 +184,16 @@
<li><a href="rectoverso.html#COLLATE">5.7.2.1 The COLLATE macro</a>
</ul>
</ul>
- <li><a href="cover.html#RECTOVERSO"><strong>5.8 Creating a cover page</strong></a>
+ <li><a href="cover.html#RECTOVERSO"><strong>5.8 CREATING A COVER PAGE</strong></a>
<br>
- <li><a href="letters.html#LETTERS"><strong>5.9 Writing letters</strong></a>
+ <li><a href="letters.html#LETTERS"><strong>5.9 WRITING LETTERS</strong></a>
<ul>
<li><a href="letters.html#LETTERS_INTRO">5.9.1 Introduction to writing letters</a>
<li><a href="letters.html#TUTORIAL">5.9.2 Tutorial on writing letters</a>
<li><a href="letters.html#LETTERS_DEFAULTS">5.9.3 Default style for letters</a>
<li><a href="letters.html#LETTERS_MACROS">5.9.4 The letter macros</a>
</ul>
- <li><a href="typemacdoc.html#TYPESETTING"><strong>5.10 Using typesetting macros during document processing</strong></a>
+ <li><a href="typemacdoc.html#TYPESETTING"><strong>5.10 USING TYPESETTING MACROS DURING DOCUMENT PROCESSING</strong></a>
</ul>
<li><a href="appendices.html#APPENDICES"><strong>6. APPENDICES</strong></a>
<ul>
diff --git a/contrib/mom/momdoc/typemacdoc.html b/contrib/mom/momdoc/typemacdoc.html
index 11c87ea9..ac2cd082 100644
--- a/contrib/mom/momdoc/typemacdoc.html
+++ b/contrib/mom/momdoc/typemacdoc.html
@@ -22,8 +22,7 @@ affect type in the document globally. For example, if you turn kerning
off, pairwise kerning is disabled not only in paragraphs, but
also in headers, footers, quotes, and so on.
<p>
-Typesetting macros that temporarily alter margins and line lengths
-affect
+Typesetting macros that alter margins and line lengths affect
<a href="definitions.html#TERMS_RUNNING">running text</a>
globally (or at least try to), but leave headers/footers and footnotes
alone. (To indent footnotes, see the full explanation of the