]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/groff/contrib/mom/momdoc/docprocessing.html
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / groff / contrib / mom / momdoc / docprocessing.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
2 <html>
3 <head>
4 <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
5 <title>Mom -- Document Processing, Introduction and Setup</title>
6 </head>
7 <body bgcolor="#dfdfdf">
8
9 <!====================================================================>
10
11 <a href="typemacdoc.html#TOP">Next</a>&nbsp;&nbsp;
12 <a href="color.html#TOP">Prev</a>&nbsp;&nbsp;
13 <a href="toc.html">Back to Table of Contents</a>
14 <p>
15 <a name="TOP"></a>
16 <a name="DOCPROCESSING">
17         <h1 align="center"><u>DOCUMENT PROCESSING WITH MOM</u></h1>
18 </a>
19 <a href="#INTRO_MACROS_DOCPROCESSING">Introduction to document processing</a>
20 <br>
21 <a href="#DEFAULTS">Some document defaults</a>
22 <br>
23 <a href="#LEADING_NOTE">* IMPORTANT NOTE on leading/spacing and bottom margins *</a>
24 <br>
25 <a href="#SHIM">The SHIM macro</a>
26 <br>
27 <h3><u>Table of Contents for document processing</u></h3>
28 <ul>
29         <li><a href="#SETUP"><strong>DOCUMENT SETUP</strong></a>
30         <br>
31         <a href="#DOCPROCESSING_TUT">Tutorial -- Setting up a mom document</a>
32         <br>
33         <ul>
34                 <li><a href="#REFERENCE_MACROS"><strong>The Reference Macros</strong></a>
35                 <ul>
36                         <li><a href="#TITLE">TITLE</a>
37                         <li><a href="#DOC_TITLE">DOCTITLE</a>
38                         <li><a href="#SUBTITLE">SUBTITLE</a>
39                         <li><a href="#AUTHOR">AUTHOR</a>
40                         <li><a href="#CHAPTER">CHAPTER</a>
41                         <li><a href="#CHAPTER_TITLE">CHAPTER_TITLE</a>
42                         <li><a href="#DRAFT">DRAFT</a>
43                         <li><a href="#REVISION">REVISION</a>
44                         <li><a href="#COPYRIGHT">COPYRIGHT</a>
45                         <li><a href="#MISC">MISC</a>
46                 </ul>
47                 <li><a href="#DOCSTYLE_MACROS"><strong>The Docstyle Macros</strong></a>
48                 <ul>
49                         <li><a href="#DOCTYPE">DOCTYPE</a>
50                         <li><a href="#PRINTSTYLE">PRINTSTYLE</a>
51                         <li><a href="#COPYSTYLE">COPYSTYLE</a>
52                 </ul>
53                 
54                 <li><a href="#STYLE_BEFORE_START"><strong>Changing type/style parameters prior to START</strong></a>
55                 <ul>
56                         <li><a href="#TYPE_BEFORE_START">Using typesetting macros prior to START</a>
57                         <ul>
58                                 <li><a href="#COLOR">Colour</a>
59                         </ul>
60                         <li><a href="#DOC_LEAD_ADJUST">Adjusting document leading to fill pages -- DOC_LEAD_ADJUST</a>
61                         <li><a href="#DOCHEADER">Managing the document header</a>
62                         <ul>
63                                 <li><a href="#DOCHEADER">DOCHEADER -- turning docheaders off</a>
64                                 <li><a href="#DOCHEADER_CONTROL">Docheader control</a>
65                         </ul>
66                 </ul>
67
68                 <li><a href="#COLUMNS_INTRO"><strong>Setting documents in columns</strong></a>
69                 <ul>
70                         <li><a href="#COLUMNS">COLUMNS</a>
71                         <li><a href="#BREAKING_COLUMNS">Breaking columns manually</a>
72                         <ul>
73                             <li><a href="#COL_NEXT">COL_NEXT</a>
74                             <li><a href="#COL_BREAK">COL_BREAK</a>
75                         </ul>
76
77                 </ul>
78
79                 <li><a href="#START_MACRO"><strong>Initiate document processing</strong></a>
80                 <ul>
81                         <li><a href="#START">START</a>
82                 </ul>
83         
84                 <li><a href="#DOC_PARAM_MACROS"><strong>Changing document-wide typesetting parameters after START</strong></a>
85                 <ul>
86                         <li><a href="#DOC_LEFT_MARGIN">DOC_LEFT_MARGIN</a>
87                         <li><a href="#DOC_RIGHT_MARGIN">DOC_RIGHT_MARGIN</a>
88                         <li><a href="#DOC_LINE_LENGTH">DOC_LINE_LENGTH</a>
89                         <li><a href="#DOC_FAMILY">DOC_FAMILY</a>
90                         <li><a href="#DOC_PT_SIZE">DOC_PT_SIZE</a>
91                         <li><a href="#DOC_LEAD">DOC_LEAD</a>
92                         <li><a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
93                         <li><a href="#DOC_QUAD">DOC_QUAD</a>
94                 </ul>
95                 <br>
96                 <li><a href="docelement.html#DOCELEMENT"><strong>THE DOCUMENT ELEMENT MACROS (TAGS)</strong></a>
97                 <ul>
98                         <li><a href="docelement.html#DOCELEMENT_INTRO">Introduction to the document element tags</a>
99                         <ul>
100                                 <li><a href="docelement.html#DOCELEMENT_CONTROL">Document element (tag) control macros</a>
101                                 <li><a href="docelement.html#CONTROL_MACRO_ARGS">Arguments to the control macros</a>
102                         </ul>
103                         <li><a href="docelement.html#EPIGRAPH_INTRO"><strong>Epigraphs</strong></a>
104                         <ul>
105                                 <li><a href="docelement.html#EPIGRAPH">EPIGRAPH</a>
106                                 <li><a href="docelement.html#EPIGRAPH_CONTROL">Epigrah control</a>
107                         </ul>
108                         <li><a href="docelement.html#PP_INTRO"><strong>Paragraphs</strong></a>
109                         <ul>
110                                 <li><a href="docelement.html#PP">PP</a>
111                                 <li><a href="docelement.html#PP_CONTROL">Paragraph control</a>
112                         </ul>
113                         <li><a href="docelement.html#HEAD_INTRO"><strong>Main heads</strong></a>
114                         <ul>
115                                 <li><a href="docelement.html#HEAD">HEAD</a>
116                                 <li><a href="docelement.html#HEAD_CONTROL">Head control</a>
117                         </ul>
118                         <li><a href="docelement.html#SUBHEAD_INTRO"><strong>Subheads</strong></a>
119                         <ul>
120                                 <li><a href="docelement.html#SUBHEAD">SUBHEAD</a>
121                                 <li><a href="docelement.html#SUBHEAD_CONTROL">Subhead control</a>
122                         </ul>
123                         <li><a href="docelement.html#PARAHEAD_INTRO"><strong>Paragraph heads</strong></a>
124                         <ul>
125                                 <li><a href="docelement.html#PARAHEAD">PARAHEAD</a>
126                                 <li><a href="docelement.html#PARAHEAD_CONTROL">Parahead control</a>
127                         </ul>
128                         <li><a href="docelement.html#LINEBREAK_INTRO"><strong>Linebreaks (author linebreaks, also called section breaks)</strong></a>
129                         <ul>
130                                 <li><a href="docelement.html#LINEBREAK">LINEBREAK</a>
131                                 <li><a href="docelement.html#LINEBREAK_CONTROL">Linebreak control</a>
132                         </ul>
133                         <li><a href="docelement.html#QUOTE_INTRO"><strong>Quotes (line for line poetic quotes)</strong></a>
134                         <ul>
135                                 <li><a href="docelement.html#QUOTE">QUOTE</a>
136                                 <li><a href="docelement.html#QUOTE_CONTROL">Quote control</a>
137                         </ul>
138                         <li><a href="docelement.html#BLOCKQUOTE_INTRO"><strong>Blockquotes (cited material)</strong></a>
139                         <ul>
140                                 <li><a href="docelement.html#BLOCKQUOTE">BLOCKQUOTE</a>
141                                 <li><a href="docelement.html#BLOCKQUOTE_CONTROL">Blockquote control</a>
142                         </ul>
143                         <li><a href="docelement.html#FOOTNOTE_INTRO"><strong>Footnotes</strong></a>
144                         <ul>
145                                 <li><a href="docelement.html#FOOTNOTE">FOOTNOTE</a>
146                                 <li><a href="docelement.html#FOOTNOTE_CONTROL">Footnote control</a>
147                         </ul>
148                         <li><a href="docelement.html#ENDNOTE_INTRO"><strong>Endnotes</strong></a>
149                         <ul>
150                                 <li><a href="docelement.html#ENDNOTE">ENDNOTE</a>
151                                 <li><a href="docelement.html#ENDNOTE_CONTROL">Endnote control</a>
152                         </ul>
153                         <li><a href="docelement.html#FINIS_INTRO"><strong>Document termination</strong></a>
154                         <ul>
155                                 <li><a href="docelement.html#FINIS">FINIS</a>
156                                 <li><a href="docelement.html#FINIS_CONTROL">Finis control</a>
157                         </ul>
158                 </ul>
159                 
160                 <li><a href="headfootpage.html#HEADFOOTPAGE"><strong>HEADERS and FOOTERS</strong></a>
161                 <br>
162                 <ul>
163                         <li><a href="headfootpage.html#HEADFOOTPAGE_INTRO">Introduction to headers/footers</a>
164                         <li><a href="headfootpage.html#HEADFOOT_MANAGEMENT">Managing headers/footers</a>
165                         <ul>
166                                 <li><a href="headfootpage.html#HEADERS">HEADERS</a> -- on or off
167                                 <li><a href="headfootpage.html#FOOTERS">FOOTERS</a> -- on or off
168                                 <li><a href="headfootpage.html#FOOTER_ON_FIRST_PAGE">FOOTER_ON_FIRST_PAGE</a>
169                         </ul>
170                         <li><a href="headfootpage.html#HEADFOOT_CONTROL">Header/footer control</a>
171                         <ul>
172                                 <li><a href="headfootpage.html#HDRFTR_STRINGS">Header/footer strings</a>
173                                 <li><a href="headfootpage.html#HDRFTR_STYLE">Header/footer style</a> -- global and part-by-part
174                                 <li><a href="headfootpage.html#HDRFTR_VERTICAL">Header/footer placement and spacing</a>
175                                 <li><a href="headfootpage.html#HDRFTR_SEPARATOR">The header/footer separator rule</a>
176                         </ul>
177                 </ul>
178                 <li><a href="headfootpage.html#PAGINATION"><strong>PAGINATION</strong></a>
179                 <br>
180                 <ul>
181                         <li><a href="headfootpage.html#PAGINATE">PAGINATE</a> -- on or off
182                         <li><a href="headfootpage.html#PAGENUMBER">PAGENUMBER</a> -- user supplied page number
183                         <li><a href="headfootpage.html#PAGENUM_STYLE">PAGENUM_STYLE</a> -- digits, roman numerals, etc.
184                         <li><a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a> -- attach draft/revision information to page numbers
185                         <li><a href="headfootpage.html#PAGINATE_CONTROL">Pagination control</a>
186                 </ul>
187                 <br>
188                 <li><a href="rectoverso.html#RECTOVERSO"><strong>RECTO_VERSO PRINTING and COLLATING</strong></a>
189                 <br>
190                 <ul>
191                         <li><a href="rectoverso.html#RECTOVERSO_INTRO">Introduction to recto/verso</a>
192                         <ul>
193                                 <li><a href="rectoverso.html#RECTO_VERSO">RECTO_VERSO</a>
194                                 <li><a href="rectoverso.html#SWITCH_HDRFTR">SWITCH_HEADERS</a> (also FOOTERS)
195                         </ul>
196                         <li><a href="rectoverso.html#COLLATE_INTRO">Introduction to collating</a>
197                         <ul>
198                                 <li><a href="rectoverso.html#COLLATE">COLLATE</a>
199                         </ul>
200                 </ul>
201         
202                 <li><a href="cover.html#TOP"><strong>CREATING A COVER PAGE</strong></a>
203                 <br>
204                 <li><a href="letters.html#LETTERS"><strong>WRITING LETTERS</strong></a>
205                 <ul>
206                         <li><a href="letters.html#LETTERS_INTRO">Introduction to writing letters</a>
207                         <li><a href="letters.html#TUTORIAL">Tutorial on writing letters</a>
208                         <li><a href="letters.html#LETTERS_DEFAULTS">Default style for letters</a>
209                         <li><a href="letters.html#LETTERS_MACROS">The letter macros</a>
210                 </ul>
211         </ul>
212 </ul>
213 <br>
214 <hr>
215
216 <h2><a name="INTRO_MACROS_DOCPROCESSING"><u>Introduction to document processing</u></a></h2>
217
218 As explained in
219 <a href="intro.html#INTRO_DOCPROCESSING">Document processing with mom</a>,
220 document processing uses markup tags to identify document elements
221 such as heads, paragraphs, and so on.  The tags are, of course, macros,
222 but with sensible, readable names that make them easy to grasp and
223 easy to remember.  (And don't forget: if you don't like the
224 &quot;official&quot; name of a tag -- too long, cumbersome
225 to type in, not &quot;intuitive&quot; enough -- you can change it
226 with the
227 <a href="goodies.html#ALIAS">ALIAS</a>
228 macro.)
229 <p>
230 In addition to the tags themselves, <strong>mom</strong> has an
231 extensive array of macros that control how they look and behave.
232 <p>
233 Setting up a <strong>mom</strong> doc is a simple, four-part procedure.
234 You begin by entering information about the document itself (title,
235 subtitle, author, etc.).  Next, you tell <strong>mom</strong> what
236 kind of document you're creating (e.g. chapter, letter, abstract,
237 etc...) and what kind of output you want (typeset, typewritten,
238 draft-style, etc).  Thirdly, you make as many or as few changes to
239 <strong>mom</strong>'s default behaviour as you wish.  Lastly, you
240 invoke the
241 <a href="#START">START</a>
242 macro.  Voilà!  You're ready to write.
243 <p>
244 <hr>
245
246
247 <h2><a name="DEFAULTS"><u>Some document defaults</u></a></h2>
248
249 As is to be expected, <strong>mom</strong> has defaults for everything.
250 If you want to know a particular default, read about it in the
251 description of the pertinent tag.
252 <p>
253 I fear the following may not be adequately covered in the
254 documentation.  Just in case, here they are.
255 <p>
256 <ul>
257         <li>the paper size is 8.5x11 inches
258         <li>the left and right margins are 1-inch
259         <li>the top and bottom margins for document text are plus/minus
260                 visually 1-inch
261         <li>pages are numbered; the number appears centred, at the
262                 bottom, surrounded by hyphens ( e.g. -6- )
263         <li>the first page of a document begins with a
264                 <a href="definitions.html#TERMS_DOCHEADER">document header</a>
265         <li>subsequent pages have
266                 <a href="definitions.html#TERMS_HEADER">page headers</a>
267                 with a rule underneath
268 </ul>
269 <p>
270 Another way to check up on document processing defaults is to have
271 a look at the macro file (om.tmac).  Each macro is preceded by a
272 description that (generally) says what its default is (if it has
273 one).
274 <p>
275 <hr>
276
277 <a name="LEADING_NOTE">
278         <h2><u>IMPORTANT NOTE on leading/spacing and  bottom margins</u></h2>
279 </a>
280
281 <strong>Mom</strong> takes evenly-aligned  bottom margins in
282 <a href="definitions.html#TERMS_RUNNING">running text</a>
283 very seriously.  Only under a very few (exceptional) circumstances
284 will she allow a bottom margin to &quot;hang&quot; (i.e. to fall
285 short).
286 <p>
287 In order to ensure even bottom margins, <strong>mom</strong>
288 uses the &quot;base&quot; document
289 <a href="definitions.html#TERMS_LEADING">leading</a>
290 in effect <em>at the start of running text on each page</em> (i.e.
291 the leading used in paragraphs) to calculate the spacing of every
292 document element.  Prior to invoking
293 <a href="#START">START</a>,
294 this is set with the
295 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macro</a>
296 <a href="typesetting.html#LEADING">LS</a>,
297 afterwards with the document
298 <a href="definitions.html#TERMS_CONTROLMACRO">control macro</a>
299 <a href="#DOC_LEAD">DOC_LEAD</a>.
300 <p>
301 Because <strong>mom</strong> relies so heavily on the base document
302 leading, any change to the leading or spacing on a page will almost
303 certainly have undesirable consequences on that page's bottom margin
304 unless the change is fully compensated for elsewhere on the page.
305 <p>
306 In other words, if you add a few points of space somewhere on a page,
307 you must subtract the same number of points somewhere else on that
308 same page, and vice versa.
309 <p>
310 If it's a question of adding or subtracting full line spaces between
311 or within document elements, you can do so by using the &quot;v&quot;
312 <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>
313 with whatever spacing macro you choose --
314 <a href="typesetting.html#ALD">ALD</a>,
315 <a href="typesetting.html#RLD">RLD</a>,
316 <a href="typesetting.html#SPACE">SPACE</a>
317 -- and <strong>mom</strong> won't object.  &quot;v&quot; means
318 &quot;the current leading&quot;, so she isn't confused by it.  And
319 since &quot;v&quot; accepts decimal fractions, you can add/subtract
320 half linespaces and quarter linespaces with &quot;v&quot; as well,
321 <em>provided you compensate for the fractional linespace somewhere
322 else on the page</em>.
323 <p>
324 If all this seems like too much work, <strong>mom</strong>
325 provides a special macro to get you out of trouble if you've played
326 around with leading and/or spacing.  The macro is called
327 <strong>SHIM</strong> (like those little pieces of wood carpenters
328 use to get their work even, level and snug), and it's described
329 below.
330 <p>
331
332 <!---SHIM--->
333
334 <hr width="66%" align="left">
335 <p>
336 <a name="SHIM"></a>
337 Macro: <strong>SHIM</strong>
338
339 <p>
340 <strong>SHIM</strong> doesn't take any argument.  Use it whenever
341 you've played around with the
342 <a href="definitions.html#TERMS_LEADING">leading</a>
343 or spacing on a page and you
344 need to get <strong>mom</strong>'s document leading back on track.
345 <p>
346 For example, say you want to insert a picture into a document with
347 the special groff macro, <strong>PSPIC</strong> (see the
348 <strong>groff_tmac</strong> man page for usage).
349 <p>
350 Pictures aren't usually conveniently sized in multiples of document
351 leading, which means that when you insert the picture, you disrupt
352 <strong>mom</strong>'s ordered placement of baselines on the page.
353 This will certainly result in a bottom margin that doesn't match the
354 bottom margins of your document's other pages.
355 <p>
356 The solution is to insert <strong>SHIM</strong> after the picture,
357 like this:
358 <p>
359 <pre>
360         &lt;some lines of text&gt;
361         .PSPIC &lt;full path to picture&gt;
362         .SHIM
363         &lt;more lines of text&gt;
364 </pre>
365 <strong>SHIM</strong> instructs <strong>mom</strong> to insert as
366 much or a little space after the picture as is needed to ensure that
367 the baseline of the next
368 <a href="definitions.html#TERMS_OUTPUTLINE">output line</a>
369 falls where <strong>mom</strong> would have put it had you not
370 disrupted the normal flow of output lines with the picture.
371 <p>
372 And say, on previewing the above example, you find that the picture
373 doesn't centre nicely between the lines of text, you can always do
374 <p>
375 <pre>
376         &lt;some lines of text&gt;
377         .RLD 3p
378         .PSPIC &lt;full path to picture&gt;
379         .SHIM
380         &lt;more lines of text&gt;
381 </pre>
382
383 to raise the picture slightly
384 (<strong>R</strong>everse <strong>L</strong>ea<strong>D</strong>
385 3 points; see
386 <a href="typesetting.html#RLD">RLD</a>),
387 and still have <strong>SHIM</strong> ensure that text underneath
388 falls exactly where it's supposed to.
389 <p>
390 <hr>
391
392 <a name="SETUP"><h2><u>Document setup</u></h2></a>
393 <p>
394 <a name="DOCPROCESSING_TUT">
395         <h3><u>Tutorial -- Setting up a mom document</u></h3>
396 </a>
397 There are four &quot;parts&quot; to setting up a <strong>mom</strong>
398 doc (three, actually, with one optional).  Before we proceed, though,
399 be reassured that something as simple as
400 <p>
401 <pre>
402         .TITLE     "By the Shores of Lake Attica"
403         .AUTHOR    "Rosemary Winspeare"
404         .PRINTSTYLE TYPESET
405         .START
406 </pre>
407
408 produces a beautifully typeset 8.5x11 document, with a
409 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
410 at the top of page 1,
411 <a href="definitions.html#TERMS_HEADER">page headers</a>
412 with the title and author on subsequent
413 pages, and page numbers at the bottom of each page.  In the course
414 of the document, heads, subheads, citations, quotes, epigraphs,
415 and so on, all come out looking neat, trim, and professional.
416 <p>
417 For the purposes of this tutorial, we're going to set up a short
418 story -- <em>My Pulitzer Winner</em> by Joe Blow.  Thankfully,
419 we don't have to look at story itself, just the setup.
420 Joe wants the document
421 <p>
422 <ul>
423         <li>to be draft 7, revision 39;
424         <li>to use the &quot;default&quot; style of document formatting:
425         <li>to print as draft-style output (instead of &quot;final&quot; copy output);
426         <li>to be typeset, in Helvetica, 12 on 14,
427                 <a href="definitions.html#TERMS_RAG">rag-right</a>;
428         <li>to have <a href="definitions.html#TERMS_FOOTER">footers</a>
429                 instead of
430                 <a href="definitions.html#TERMS_HEADER">headers</a>;
431         <li>to use a single asterisk for
432                 <a href="definitions.html#TERMS_LINEBREAK">author linebreaks</a>.
433 </ul>
434 <p>
435 Joe Blow has no taste in typography.  His draft won't look pretty,
436 but this is, after all, a tutorial; we're after examples, not beauty.
437 <h3><u>Step 1</u></h3>
438
439 The first step in setting up any document is giving <strong>mom</strong>
440 some reference information.  The reference macros are:
441 <p>
442 <ul>
443         <li>TITLE
444         <li>DOCTITLE
445         <li>COVERTITLE
446         <li>SUBTITLE
447         <li>AUTHOR
448         <li>CHAPTER -- the chapter number
449         <li>DRAFT -- the draft number
450         <li>REVISION -- the revision number
451         <li>COPYRIGHT -- only used on cover pages
452         <li>MISC -- only used on cover pages
453         <li>COVER_TITLE -- only on cover pages; only if needed
454         <li>DOC_COVER_TITLE -- only on document cover pages; only if needed
455 </ul>
456 <p>
457 You can use as many or as few as you wish, although at a minimum,
458 you'll probably fill in <strong>TITLE</strong> (unless the document's
459 a letter) and <strong>AUTHOR</strong>.  Order doesn't matter.
460 You can separate the
461 <a href="definitions.html#TERMS_ARGUMENTS">arguments</a>
462 from the macros by any number of spaces.  The following are
463 what you'd need to start Joe Blow's story.
464 <p>
465 <pre>
466         .TITLE    "My Pulitzer Winner"
467         .AUTHOR   "Joe Blow"
468         .DRAFT     7
469         .REVISION  39
470 </pre>
471
472 <h3><u>Step 2</u></h3>
473
474 Once you've given <strong>mom</strong> the reference information she
475 needs, you tell her how you want your document formatted.  What kind
476 of document is it?  Should it be typeset or typewritten?  Is this
477 a &quot;final&quot; copy (for the world to see) or just a draft?
478 <strong>Mom</strong> calls the macros that answer these questions
479 &quot;the docstyle macros.&quot;  They are:
480 <p>
481 <ul>
482         <li>DOCTYPE -- the type of document (default, chapter, user-defined, letter)
483         <li>PRINTSTYLE -- typeset or typewritten
484         <li>COPYSTYLE  -- draft or final copy
485 </ul>
486 <p>
487 <strong>Mom</strong> has defaults for <strong>DOCTYPE</strong>
488 and <strong>COPYSTYLE</strong>; if they're what you want, you
489 don't need to include them here.  However, <strong>PRINTSTYLE</strong>
490 has no default and MUST be present in every formatted document.
491 If you omit it, <strong>mom</strong> won't process the document AND
492 she'll complain (both to stderr and as a single printed sheet with
493 a warning).  Moms -- they can be so annoying sometimes. &lt;sigh&gt;
494 <p>
495 Adding to what we already have, the next bit of setup for Joe
496 Blow's story looks like this:
497 <p>
498 <pre>
499         .TITLE    "My Pulitzer Winner"
500         .AUTHOR   "Joe Blow"
501         .DRAFT     7
502         .REVISION  39
503         \#
504         .DOCTYPE     DEFAULT \"Superfluous; mom uses DOCTYPE DEFAULT by default
505         .PRINTSTYLE  TYPESET
506         .COPYSTYLE   DRAFT
507 </pre>
508
509 Notice the use of the
510 <a href="definitions.html#TERMS_COMMENTLINES">comment line</a>
511 ( \# ), a handy way to keep groups of macros visually separated
512 for easy reading in a text editor.
513
514 <h3><u>Step 3</u></h3>
515
516 This step -- completely optional -- is where you, the user, take
517 charge.  <strong>Mom</strong> has defaults for <em>everything</em>,
518 but who's ever satisfied with defaults?  Use any of the <a
519 href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
520 here to change <strong>mom</strong>'s document defaults (paper
521 size, margins, family, point size, line space, rag, etc), or
522 any of the document processing macros that set/change/control
523 the appearance of document elements.  Think of this as the
524 &quot;style-sheet &quot; section of a document.  And please note:
525 you MUST give <strong>mom</strong> a
526 <a href="#PRINTSTYLE">PRINTSTYLE</a>
527 directive <strong>before</strong> making any such changes.
528 <p>
529 Joe Blow wants his story printed in Helvetica, 12 on 14, rag
530 right, with
531 <a href="definitions.html#TERMS_FOOTER">page footers</a>
532 instead of
533 <a href="definitions.html#TERMS_HEADER">page headers</a>
534 and a single asterisk for the
535 <a href="definitions.html#TERMS_LINEBREAK">linebreak</a>
536 character.  None of these requirements conforms
537 to <strong>mom</strong>'s defaults for the chosen
538 <strong>PRINTSTYLE</strong> (TYPESET), so we change them here.
539 The setup for Joe Blow's story now looks like this:
540 <p>
541 <pre>
542         .TITLE    "My Pulitzer Winner"
543         .AUTHOR   "Joe Blow"
544         .DRAFT     7
545         .REVISION  39
546         \#
547         .DOCTYPE     DEFAULT
548         .PRINTSTYLE  TYPESET
549         .COPYSTYLE   DRAFT
550         \#
551         .FAMILY  H
552         .PT_SIZE 12
553         .LS      14
554         .QUAD    LEFT    \"i.e. rag right
555         .FOOTERS
556         .LINEBREAK_CHAR *
557 </pre>
558
559 <h3><u>Step 4</u></h3>
560 The final step in setting up a document is telling <strong>mom</strong>
561 to start document processing.  It's a no-brainer, just the single macro
562 <strong>START</strong>.  Other than <strong>PRINTSTYLE</strong>, it's
563 the only macro required for document processing (although
564 I can't guarantee you'll like the results of using just the two).
565 <p>
566 Here's the complete setup for <em>My Pulitzer Winner</em>:
567 <p>
568 <pre>
569         .TITLE    "My Pulitzer Winner"
570         .AUTHOR   "Joe Blow"
571         .DRAFT     7
572         .REVISION  39
573         \#
574         .DOCTYPE     DEFAULT
575         .PRINTSTYLE  TYPESET
576         .COPYSTYLE   DRAFT
577         \#
578         .FAMILY   H
579         .PT_SIZE  12
580         .LS       14
581         .QUAD     LEFT    \"i.e. rag right
582         .FOOTERS
583         .LINEBREAK_CHAR *
584         \#
585         .START
586 </pre>
587
588 As pointed out earlier, Joe Blow is no typographer.  Given that all he
589 needs is a printed draft of his work, a simpler setup would have been:
590 <p>
591 <pre>
592         .TITLE    "My Pulitzer Winner"
593         .AUTHOR   "Joe Blow"
594         .DRAFT     7
595         .REVISION  39
596         \#
597         .PRINTSTYLE  TYPEWRITE
598         .COPYSTYLE   DRAFT
599         \#
600         .START
601 </pre>
602
603 <kbd>.PRINTSTYLE TYPEWRITE</kbd>, above, means that Joe's work
604 will come out &quot;typewritten, double-spaced&quot;, making the
605 blue-pencilling he (or someone else) is sure to do much
606 easier (which is why many publishers and agents still insist on
607 typewritten, double-spaced copy).
608 <p>
609 When J. Blow stops re-writing and decides to print off a final,
610 typeset copy of his work for the world to see, he need only
611 make two changes to the (simplified) setup:
612 <p>
613 <pre>
614         .TITLE    "My Pulitzer Winner"
615         .AUTHOR   "Joe Blow"
616         .DRAFT     7
617         .REVISION  39
618         \#
619         .PRINTSTYLE  TYPESET  \"first change
620         .COPYSTYLE   FINAL    \"second change
621         \#
622         .START
623 </pre>
624
625 In the above, <kbd>.DRAFT 7, .REVISION 39,</kbd> and <kbd>.COPYSTYLE
626 FINAL</kbd> are actually superfluous.  The draft and revision numbers
627 aren't used when <strong>COPYSTYLE</strong> is <strong>FINAL</strong>,
628 and <strong>COPYSTYLE FINAL</strong> is <strong>mom</strong>'s
629 default unless you tell her otherwise.  BUT... to judge from the
630 number of drafts already, J. Blow may very well decide his
631 &quot;final&quot; version still isn't up to snuff.  Hence, he might
632 as well leave in the superfluous macros.  That way, when draft 7,
633 rev. 62 becomes draft 8, rev. 1, he'll be ready to tackle his Pulitzer
634 winner again.
635 <p>
636 <hr>
637
638 <!========================================================================>
639
640 <a name="REFERENCE_MACROS">
641         <h2><u>The Reference Macros</u></h2>
642 </a>
643
644 The reference macros give <strong>mom</strong> the information
645 she needs to generate
646 <a href="definitions.html#TERMS_DOCHEADER">docheaders</a>,
647 <a href="definitions.html#TERMS_HEADER">page headers</a>,
648 and
649 <a href="cover.html#COVER_TOP">covers</a>.
650 They must go at the top of any file that uses <strong>mom</strong>'s
651 document processing macros.
652 <p>
653 <a name="INDEX_REFERENCE">
654         <h3><u>Reference macros list</u></h3>
655 </a>
656
657 <ul>
658         <li><a href="#TITLE">TITLE</a>
659         <li><a href="#DOC_TITLE">DOCTITLE</a>
660         <li><a href="#SUBTITLE">SUBTITLE</a>
661         <li><a href="#AUTHOR">AUTHOR</a>
662         <li><a href="#CHAPTER">CHAPTER</a>
663         <li><a href="#CHAPTER_TITLE">CHAPTER_TITLE</a>
664         <li><a href="#DRAFT">DRAFT</a>
665         <li><a href="#REVISION">REVISION</a>
666         <li><a href="#COPYRIGHT">COPYRIGHT</a>
667         <li><a href="#MISC">MISC</a>
668         <li><a href="#COVERTITLE">COVERTITLE</a>
669 </ul>
670 <br>
671
672 <!---TITLE--->
673
674 <hr width="66%" align="left">
675 <p>
676 <a name="TITLE"></a>
677 <nobr>Macro: <strong>TITLE</strong> &quot;&lt;title&gt;&quot;</nobr>
678 <br>
679 <em>*Argument must be enclosed in double-quotes</em>
680
681 <p>
682 The title string can be caps or caps/lower-case; it's up to you.
683 In
684 <a href="#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
685 the title will appear in the
686 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
687 exactly as you typed it.  However, <strong>mom</strong> converts
688 the title to all caps in
689 <a href="definitions.html#TERMS_HEADER">page headers</a>
690 unless you turn that feature off (see
691 <a href="headfootpage.html#_CAPS">HEADER_&lt;POSITION&gt;_CAPS</a>). In
692 <a href="#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>,
693 the title always gets converted to caps.
694 <p>
695 <strong>NOTE:</strong> If your
696 <a href="#DOCTYPE">DOCTYPE</a>
697 is <strong>CHAPTER</strong>, <strong>TITLE</strong> should be the
698 title of the opus, not &quot;CHAPTER whatever&quot;.
699 <p>
700
701 <!---DOCTITLE--->
702
703 <hr width="66%" align="left">
704 <p>
705 <a name="DOCTITLE"></a>
706 <nobr>Macro: <strong>DOCTITLE</strong> &quot;&lt;overall document title&gt;&quot;</nobr>
707 <br>
708 <em>*Argument must be enclosed in double-quotes</em>
709
710 <p>
711 <strong>NOTE:</strong> This macro should be used only if your
712 <a href="#DOCTYPE">DOCTYPE</a>
713 is <strong>DEFAULT</strong> (which is <strong>mom</strong>'s
714 default).
715 <p>
716 When you're creating a single document, say, an essay or a short
717 story, you have no need of this macro.
718 <a href="#TITLE">TITLE</a>
719 takes care of all your title needs.
720 <p>
721 However if you're 
722 <a href="rectoverso.html#COLLATE">collating</a>
723 a bunch of documents together, say, to print out a report containing
724 many articles with different titles, or a book of short stories, you
725 need <strong>DOCTITLE</strong>.
726 <p>
727 <strong>DOCTITLE</strong> tells <strong>mom</strong> the title
728 of the complete document (as opposed to the title of each article
729 or entitled section).
730 <p>
731 The doctitle string can be caps or caps/lower-case; it's up to you.
732 In
733 <a href="#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
734 by default, the doctitle appears in the rightmost position of
735 <a href="definitions.html#TERMS_HEADER">page headers</a>,
736 all in caps unless you turn that feature off (see
737 <a href="headfootpage.html#_CAPS">HEADER_&lt;POSITION&gt;_CAPS</a>). In
738 <a href="#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>,
739 the doctitle always gets converted to caps.
740 <p>
741 <strong>NOTE:</strong> If your
742 <a href="#DOCTYPE">DOCTYPE</a>
743 is <strong>CHAPTER</strong>, you don't need
744 <strong>DOCTITLE</strong>.  <strong>TITLE</strong> takes care of
745 everything.
746 <p>
747
748 <!---SUBTITLE--->
749
750 <hr width="66%" align="left">
751 <p>
752 <a name="SUBTITLE"></a>
753 <nobr>Macro: <strong>SUBTITLE</strong> &quot;&lt;subtitle&gt;&quot;</nobr>
754 <br>
755 <em>*Argument must be enclosed in double-quotes</em>
756
757 <p>
758 The subtitle string can be caps or caps/lower-case.  Since a
759 document's subtitle appears only in the
760 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>,
761 and the title is most likely in caps, I recommend caps/lower case.
762 <p>
763
764 <!---AUTHOR--->
765
766 <hr width="66%" align="left">
767 <p>
768 <a name="AUTHOR"></a>
769 <nobr>Macro: <strong>AUTHOR</strong> &quot;&lt;author string&gt;&quot; [ &quot;&lt;author2 string&gt;&quot; &quot;&lt;author3 string&gt;&quot; ... ]</nobr>
770 <br>
771 <em>*Multiple arguments must all be enclosed in double-quotes</em>
772
773 <p>
774 Each author string can hold as many names as you like, e.g.
775 <p>
776 <pre>
777         .AUTHOR "Joe Blow"
778             or
779         .AUTHOR "Joe Blow, Jane Doe" "John Hancock"
780 </pre>
781
782 <strong>Mom</strong> prints each string that's enclosed in
783 double-quotes on a separate line in the
784 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>,
785 however only the first string appears in
786 <a href="definitions.html#TERMS_HEADER">page headers</a>.
787 If you want <strong>mom</strong> to put something else in the author
788 part of page headers (say, just the last names of a document's two
789 authors), redefine the appropriate part of the header (see
790 <a href="headfootpage.html#HEADER_CONTROL">header/footer control</a>).
791 <p>
792 The strings can be caps or caps/lower-case.  I recommend caps/lower
793 case.
794 <p>
795
796 <!---CHAPTER--->
797
798 <hr width="66%" align="left">
799 <p>
800 <a name="CHAPTER"></a>
801 <nobr>Macro: <strong>CHAPTER</strong> &lt;chapter number&gt;</nobr>
802
803 <p>
804 The chapter number can be in any form you like -- a digit, a roman
805 numeral, a word.  If you choose
806 <a href="#DOCTYPE">DOCTYPE CHAPTER</a>,
807 <strong>mom</strong> prints whatever argument you pass
808 <strong>CHAPTER</strong> beside the word &quot;Chapter&quot; as a
809 single line
810 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>.
811 She also puts the same thing in the middle of
812 <a href="definitions.html#TERMS_HEADER">page headers</a>.
813 <p>
814 Please note that if your argument to <strong>CHAPTER</strong> runs
815 to more than one word, you must enclose the argument in
816 double-quotes.
817 <p>
818 If you're not using <strong>DOCTYPE CHAPTER</strong>, the macro serves
819 no purpose and <strong>mom</strong> ignores it.
820 <p>
821 <a name="CHAPTER_STRING"><strong>CHAPTER_STRING</strong></a>
822 <p>
823 If you're not writing in English, you can ask <strong>mom</strong>
824 to use the word for &quot;chapter&quot; in your own language by
825 telling her what it is with the <strong>CHAPTER_STRING</strong>
826 macro, like this:
827 <p>
828 <pre>
829         .CHAPTER_STRING "Chapître"
830 </pre>
831
832 You can also use <strong>CHAPTER_STRING</strong> if you want
833 &quot;CHAPTER&quot; instead of &quot;Chapter&quot; in the doc- and
834 page-headers.
835 <p>
836
837 <!---CHAPTER_TITLE--->
838
839 <hr width="66%" align="left">
840 <p>
841 <a name="CHAPTER_TITLE"></a>
842 <nobr>Macro: <strong>CHAPTER_TITLE</strong> &quot;&lt;chapter title&gt;&quot;</nobr>
843 <br>
844 <em>*Argument must be enclosed in double-quotes</em>
845
846 <p>
847 If, either in addition to or instead of &quot;Chapter #&quot; appearing
848 at the top of chapters, you want your chapter to have a title, use
849 <strong>CHAPTER_TITLE</strong>, with your title enclosed in
850 double-quotes, like this:
851 <p>
852 <pre>
853         .CHAPTER_TITLE "The DMCA Nazis"
854 </pre>
855
856 If you've used
857 <a href="#CHAPTER">CHAPTER</a> to give the chapter a number,
858 both &quot;Chapter #&quot; and the chapter title will appear at the
859 top of the chapter, like this:
860 <p>
861 <pre>
862                        Chapter 1
863                     The DMCA Nazis
864 </pre>
865
866 In such a case, by default, only the chapter's title will appear in the
867 <a href="definitions.html#TERMS_HEADER">page headers</a>,
868 not &quot;Chapter #&quot;.
869 <p>
870 If you omit <strong>CHAPTER</strong> when setting up your reference
871 macros, only the title will appear, both at the top of page one and in
872 subsequent page headers.
873 <p>
874 The style of the chapter title can be altered by
875 <a href="docelement.html#DOCELEMENT_CONTROL">control macros</a>,
876 e.g. <strong>CHAPTER_TITLE_FAMILY</strong>,
877 <strong>CHAPTER_TITLE_FONT</strong>, etc.  The default family,
878 font and point size are Times Roman, Bold Italic, 4 points larger
879 than
880 <a href="definitions.html#TERMS_RUNNING">running text</a>.
881 <p>
882
883 <!---DRAFT--->
884
885 <hr width="66%" align="left">
886 <p>
887 <a name="DRAFT"></a>
888 <nobr>Macro: <strong>DRAFT</strong> &lt;draft #&gt;</nobr>
889
890 <p>
891 <strong>DRAFT</strong> only gets used with
892 <a href="#COPYSTYLE">COPYSTYLE DRAFT</a>.
893 If the <strong>COPYSTYLE</strong> is <strong>FINAL</strong> (the
894 default), <strong>mom</strong> ignores <strong>DRAFT</strong>.
895 <strong>DRAFT</strong> accepts both alphabetic and numeric
896 arguments, hence it's possible to do either
897 <p>
898 <pre>
899         .DRAFT 2
900            or
901         .DRAFT Two
902 </pre>
903
904 <strong>Mom</strong> prints the argument to <strong>.DRAFT</strong>
905 (i.e. the draft number) beside the word &quot;Draft&quot; in the
906 middle part of
907 <a href="definitions.html#TERMS_HEADER">page headers</a>.
908 <p>
909 <strong>A small word of caution:</strong> If your argument to
910 <strong>.DRAFT</strong> is more than one word long, you must
911 enclose the argument in double-quotes.
912 <p>
913 You may, if you wish, invoke <strong>.DRAFT</strong> without an
914 argument, in which case, no draft number will be printed beside
915 &quot;Draft&quot; in headers or footers.
916 <p>
917 <a name="DRAFT_STRING"><strong>DRAFT_STRING</strong></a>
918 <p>
919 If you're not writing in English, you can ask <strong>mom</strong>
920 to use the word for &quot;draft&quot; in your own language by
921 telling her what it is with the <strong>DRAFT_STRING</strong> macro,
922 like this:
923 <p>
924 <pre>
925         .DRAFT_STRING "Jet"
926 </pre>
927
928 Equally, <strong>DRAFT_STRING</strong> can be used to roll your own
929 solution to something other than the word &quot;Draft.&quot;  For
930 example, you might want &quot;Trial run alpha-three&quot; to appear
931 in the headers of a draft version.  You'd accomplish this by doing
932 <p>
933 <pre>
934         .DRAFT alpha-three
935         .DRAFT_STRING "Trial run
936 </pre>
937
938 <strong>.DRAFT</strong> without an argument, above, ensures that
939 only the <strong>DRAFT_STRING</strong> gets printed.
940 <p>
941 <strong>NOTE:</strong> If you define both a blank <strong>.DRAFT</strong>
942 and a blank <strong>.DRAFT_STRING</strong>, <strong>mom</strong>
943 skips the draft field in headers entirely.  If this is what you
944 want, this is also the only way to do it.  Simply leaving out
945 <strong>.DRAFT</strong> and <strong>.DRAFT_STRING</strong> will
946 result in <strong>mom</strong> using her default, which is to print
947 &quot;Draft 1&quot;.
948 <p>
949
950 <!---REVISION--->
951
952 <hr width="66%" align="left">
953 <p>
954 <a name="REVISION"></a>
955 <nobr>Macro: <strong>REVISION</strong> &lt;revision #&gt;</nobr>
956
957 <p>
958 <strong>REVISION</strong> only gets used with
959 <a href="#COPYSTYLE">COPYSTYLE DRAFT</a>.
960 If the <strong>COPYSTYLE</strong> is <strong>FINAL</strong>
961 (the default), <strong>mom</strong> ignores the
962 <strong>REVISION</strong> macro. <strong>REVISION</strong> accepts
963 both alphabetic and numeric arguments, hence it's possible to do
964 either
965 <p>
966 <pre>
967         .REVISION 2
968            or
969         .REVISION Two
970 </pre>
971
972 <strong>Mom</strong> prints the revision number beside the shortform
973 &quot;Rev.&quot; in the middle part of
974 <a href="definitions.html#TERMS_HEADER">page headers</a>.
975 <p>
976 <strong>A small word of caution:</strong> If your argument to
977 <strong>.REVISION</strong> is more than one word long, you must
978 enclose the argument in double-quotes.
979 <p>
980 You may, if you wish, invoke <strong>.REVISION</strong> without an
981 argument, in which case, no revision number will be printed beside
982 &quot;Rev.&quot; in headers or footers.
983 <p>
984 <a name="REVISION_STRING"><strong>REVISION_STRING</strong></a>
985 <p>
986 If you're not writing in English, you can ask <strong>mom</strong>
987 to use the word for &quot;revision,&quot; or a shortform
988 thereof, in your own language by telling her what it is with the
989 <strong>REVISION_STRING</strong> macro, like this:
990 <p>
991 <pre>
992         .REVISION_STRING "Rév."
993 </pre>
994
995 Additionally, you may sometimes want to make use of
996 <strong>mom</strong>'s
997 <a href="#COPYSTYLE">COPYSTYLE DRAFT</a>
998 but not actually require any draft information.  For example, you
999 might like <strong>mom</strong> to indicate only the revision number
1000 of your document.  The way to do that is to define an empty
1001 <strong>.DRAFT</strong> and <strong>.DRAFT_STRING</strong> in
1002 addition to <strong>.REVISION</strong>, like this:
1003 <p>
1004 <pre>
1005         .DRAFT
1006         .DRAFT_STRING
1007         .REVISION 2
1008 </pre>
1009
1010 <p>
1011 Equally, if you want to roll your own solution to what revision
1012 information appears in headers, you could do something like this:
1013 <pre>
1014         .DRAFT
1015         .DRAFT_STRING
1016         .REVISION "two-twenty-two"
1017         .REVISION_STRING "Revision"
1018 </pre>
1019
1020 <p>
1021 The above, naturally, has no draft information.  If you want to
1022 roll your own <strong>.DRAFT</strong> and/or
1023 <strong>.DRAFT_STRING</strong> as well, simply supply arguments to
1024 either or both.
1025 <p>
1026
1027 <!---COPYRIGHT--->
1028
1029 <hr width="66%" align="left">
1030 <p>
1031 <a name="COPYRIGHT"></a>
1032 <nobr>Macro: <strong>COPYRIGHT</strong> &quot;&lt;copyright info&gt;&quot;</nobr>
1033 <br>
1034 <em>*Argument must be enclosed in double-quotes</em>
1035
1036 <p>
1037 The argument passed to <strong>COPYRIGHT</strong> is only used on
1038 cover or doc cover pages, and then only if the argument COPYRIGHT is
1039 passed to
1040 <a href="cover.html#COVER">COVER</a>
1041 or
1042 <a href="cover.html#DOC_COVER">DOC_COVER</a>.
1043 Do not include the copyright symbol in the argument passed to
1044 <strong>COPYRIGHT</strong>; <strong>mom</strong> puts it in for
1045 you.
1046 <p>
1047
1048 <!---MISC--->
1049
1050 <hr width="66%" align="left">
1051 <p>
1052 <a name="MISC"></a>
1053 <nobr>Macro: <strong>MISC</strong> &quot;&lt;argument 1&gt;&quot; [&quot;&lt;argument 2&gt;&quot; &quot;&lt;argument 3&gt;&quot; ...]</nobr>
1054 <br>
1055 <em>*Multliple arguments must all be enclosed in double-quotes</em>
1056
1057 <p>
1058 The argument(s) passed to <strong>MISC</strong> are only used on
1059 cover or doc cover pages, and then only if the argument MISC is
1060 passed to
1061 <a href="cover.html#COVER">COVER</a>
1062 or
1063 <a href="cover.html#DOC_COVER">DOC_COVER</a>.
1064 <strong>MISC</strong> can contain any information you like.  Each
1065 argument appears on a separate line at the bottom of the cover or
1066 doc cover page.
1067 <p>
1068 For example, if you're submitting an essay where the prof has
1069 requested that you include the course number, his name and the
1070 date, you could do
1071 <p>
1072 <pre>
1073         .MISC &quot;Music History 101&quot; &quot;Professor Hasbeen&quot; &quot;Dec. 24, 2006&quot;
1074 </pre>
1075
1076 and the information would appear on the essay's cover page.
1077 <p>
1078
1079 <!---COVER_TITLE--->
1080
1081 <hr width="66%" align="left">
1082 <p>
1083 <a name="COVERTITLE"></a>
1084 <nobr>Macro: <strong>COVERTITLE</strong> &quot;&lt;user defined cover page title&gt;&quot;</nobr>
1085 <br>
1086 <nobr>Macro: <strong>DOC_COVERTITLE</strong> &quot;&lt;user defined document cover page title&gt;&quot;</nobr>
1087 <br>
1088 <em>*Argument must be enclosed in double-quotes</em>
1089
1090 <p>
1091 The argument passed to <strong>COVERTITLE</strong> or
1092 <strong>DOC_COVERTITLE</strong> is only used on cover or doc cover
1093 pages, and then only if the argument COVERTITLE is passed to
1094 <a href="cover.html#COVER">COVER</a>
1095 or
1096 <a href="cover.html#DOC_COVER">DOC_COVER</a>.
1097 <p>
1098 The only time you require a <strong>COVERTITLE</strong> or
1099 <strong>DOC_COVERTITLE</strong>is when none of the required first
1100 arguments to <strong>COVER</strong> or <strong>DOC_COVER</strong>
1101 fits your needs for the title you want to appear on cover (or doc
1102 cover) pages.
1103
1104 <p>
1105 <hr>
1106 <!========================================================================>
1107
1108 <a name="DOCSTYLE_MACROS">
1109         <h2><u>The Docstyle Macros</u></h2>
1110 </a>
1111
1112 The docstyle macros tell <strong>mom</strong> what type of document you're
1113 writing, whether you want the output typeset or
1114 &quot;typewritten&quot;, and whether you want a draft copy (with
1115 draft and revision information in the headers) or a final copy.
1116
1117 <a name="INDEX_DOCSTYLE">
1118         <h3><u>Docstyle macros list</u></h3>
1119 </a>
1120
1121 <ul>
1122         <li><a href="#DOCTYPE">DOCTYPE</a>
1123         <li><a href="#PRINTSTYLE">PRINTSTYLE</a>
1124         <ul>
1125                 <li><a href="#TYPESET_DEFAULTS">Defaults for PRINTSTYLE TYPESET</a>
1126                 <li><a href="#TYPEWRITE_DEFAULTS">Defaults for PRINTSTYLE TYPEWRITE</a>
1127                 <ul>
1128                         <li><a href="#TYPEWRITE_CONTROL">TYPEWRITE control macros</a>
1129                 </ul>
1130         </ul>
1131         <li><a href="#COPYSTYLE">COPYSTYLE</a>
1132 </ul>
1133 <br>
1134
1135 <!---DOCTYPE--->
1136
1137 <hr width="66%" align="left">
1138 <p>
1139 <a name="DOCTYPE"></a>
1140 <nobr>Macro: <strong>DOCTYPE</strong> DEFAULT | CHAPTER | NAMED &quot;&lt;name&gt;&quot; | LETTER</nobr>
1141 <p>
1142 The arguments <strong>DEFAULT, CHAPTER</strong> and
1143 <strong>NAMED</strong> tell <strong>mom</strong> what to put
1144 in the
1145 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
1146 and
1147 <a href="definitions.html#TERMS_HEADER">page headers</a>.
1148 <strong>LETTER</strong> tells her that you want to write a
1149 letter.
1150 <p>
1151 <strong>Mom</strong>'s default <strong>DOCTYPE</strong> is
1152 <strong>DEFAULT</strong>.  If that's what you want, you don't
1153 have to give a <strong>DOCTYPE</strong> command.
1154 <p>
1155 <strong>DEFAULT</strong> prints a
1156 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
1157 containing the title, subtitle and author information given to the
1158 <a href="#REFERENCE_MACROS">reference macros</a>,
1159 and page headers with the author and title.
1160 (See
1161 <a href="headfootpage.html#HEADER_STYLE">Default specs for headers</a>
1162 for how <strong>mom</strong> outputs each part of the page header.)
1163 <p>
1164 <strong>CHAPTER</strong> prints &quot;Chapter #&quot; in place of a
1165 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
1166 (# is what you gave to the
1167 <a href="#REFERENCE_MACROS">reference macro</a>
1168 <a href="#CHAPTER">CHAPTER</a>).
1169 If you give the chapter a title with
1170 <a href="#CHAPTER_TITLE">CHAPTER TITLE</a>,
1171 <strong>mom</strong> prints &quot;Chapter #&quot; and the title
1172 underneath.  If you omit the
1173 <a href="#CHAPTER">CHAPTER</a>
1174 reference macro but supply a
1175 <a href="#CHAPTER_TITLE">CHAPTER_TITLE</a>,
1176 <strong>mom</strong> prints only the chapter title. <em>(*For
1177 backward compatibility with pre-1.1.5 versions of</em>
1178 <strong>mom</strong><em>, you can also supply a chapter title by
1179 omitting the</em> <strong>CHAPTER</strong> <em>reference macro and
1180 supplying a chapter title with</em>
1181 <a href="#CHAPTER_STRING">CHAPTER_STRING</a>.)
1182 <p>
1183 The page headers in <strong>DOCTYPE CHAPTER</strong> contain the author,
1184 the title of the book (which you gave with
1185 <a href="#TITLE">TITLE</a>),
1186 and &quot;Chapter #&quot; (or the chapter title).  See
1187 <a href="headfootpage.html#HEADER_STYLE">Default Specs for Headers</a>
1188 for <strong>mom</strong>'s default type parameters for each part of
1189 the page header.
1190 <p>
1191 <strong>NAMED</strong> takes an additional argument: a name
1192 for this particular kind of document  (e.g. outline, synopsis,
1193 abstract, memorandum), enclosed in double-quotes.
1194 <strong>NAMED</strong> is identical to <strong>DEFAULT</strong>
1195 except that <strong>mom</strong> prints the argument to
1196 <strong>NAMED</strong> beneath the
1197 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>,
1198 as well as in page headers.
1199 (See
1200 <a href="headfootpage.html#HEADER_STYLE">Default specs for headers</a>
1201 for how <strong>mom</strong> outputs each part of the page header.)
1202 <p>
1203 Additionally, if you wish the name of this particular kind of
1204 document to be coloured, you can pass <strong>DOCTYPE NAMED</strong>
1205 a third (optional) argument: the name of a colour pre-defined (or
1206 &quot;initialized&quot;) with
1207 <a href="color.html#NEWCOLOR">NEWCOLOR</a>
1208 or
1209 <a href="color.html#XCOLOR">XCOLOR</a>.
1210 For example, if you have a doctype named &quot;Warning&quot;, and
1211 you'd like &quot;Warning&quot; to be in red, assuming you've
1212 pre-defined (or &quot;initialized&quot;) the color, red, this is
1213 what the <strong>DOCTYPE</strong> entry would look like:
1214 <p>
1215 <pre>
1216         .DOCTYPE NAME "Warning" red
1217 </pre>
1218
1219 <p>
1220 <strong>LETTER</strong> tells mom you're writing a letter.  See
1221 the section
1222 <a href="letters.html#INTRO">Writing Letters</a>
1223 for instructions on using <strong>mom</strong> to format letters.
1224 <p>
1225
1226 <!---PRINTSTYLE--->
1227
1228 <hr width="66%" align="left">
1229 <p>
1230 <a name="PRINTSTYLE"></a>
1231 <nobr>Macro: <strong>PRINTSTYLE</strong> TYPESET | TYPEWRITE [ SINGLESPACE ]</nobr>
1232 <br>
1233 <em>*Required for document processing.</em>
1234 <br>
1235 <em>*Must come before any changes to default document style</em>
1236
1237 <p>
1238 <strong>PRINTSTYLE</strong> tells <strong>mom</strong> whether to typeset
1239 a document, or to print it out &quot;typewritten, doubled-spaced&quot;.
1240 <p>
1241 <strong>THIS MACRO MAY NOT BE OMITTED.</strong>  In order for
1242 document processing to take place, <strong>mom</strong> requires
1243 a <strong>PRINTSTYLE</strong>.  If you don't give one,
1244 <strong>mom</strong> will warn you on stderr and print a single
1245 page with a nasty message.
1246 <p>
1247 Furthermore, <strong>PRINTSTYLE</strong> must come before any
1248 changes to <strong>mom</strong>'s default typestyle parameters.
1249 (This applies primarily to, but is by no means restricted to,
1250 <strong>PRINTSTYLE TYPESET</strong>.)  <strong>PRINTSTYLE</strong>
1251 sets up complete &quot;templates&quot; that include default
1252 papersize, margins, family, fonts, point sizes, and so on.
1253 Therefore, changes to any aspect of document style must come
1254 afterwards.
1255 <p>
1256 <strong>TYPESET</strong>, as the argument implies, typesets documents
1257 (by default in Times Roman; see
1258 <a href="#TYPESET_DEFAULTS">TYPESET defaults</a>).
1259 You have full access to all the
1260 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
1261 as well as the
1262 <a href="definitions.html#STYLE_CONTROL">style control macros</a>
1263 of document processing.
1264 <p>
1265 As mentioned above, <strong>PRINTSTYLE TYPESET</strong> must come
1266 before any changes to <strong>mom</strong>'s default typographic
1267 settings.  For example,
1268
1269 <pre>
1270         .PAPER A4
1271         .LS 14
1272         .PRINTSTYLE TYPESET
1273 </pre>
1274
1275 will not changes <strong>mom</strong>'s default paper size to A4,
1276 nor her default document leading 14 points, whereas
1277
1278 <pre>
1279         .PRINTSTYLE TYPESET
1280         .PAPER A4
1281         .LS 14
1282 </pre>
1283
1284 will.
1285 <p>
1286 With <strong>TYPEWRITE</strong>, <strong>mom</strong> does her best
1287 to reproduce the look and feel of typewritten, double-spaced copy (see
1288 <a href="#TYPEWRITE_DEFAULTS">TYPEWRITE defaults</a>).
1289 <a href="docelement.html#DOCELEMENT_CONTROL">Control macros</a>
1290 and
1291 <a href="typesetting.html#INTRO_MACROS_TYPESETTING">typesetting macros</a>
1292 that alter family, font, point size, and
1293 <a href="definitions.html#TERMS_LEADING">leading</a>
1294 are (mostly) ignored.  An important exception is
1295 <a href="headfootpage.html#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>
1296 (and, by extension, <strong>FOOTER_SIZE</strong>), which allows
1297 you to reduce the point size of headers/footers should they become
1298 too crowded.  Most of <strong>mom</strong>'s inlines affecting the
1299 appearance of type are also ignored (<strong>\*S</strong> is an
1300 exception; there may be a few others).
1301 <p>
1302 In short, <strong>TYPEWRITE</strong> never produces effects other than
1303 those available on a typewriter.  Don't be fooled by how brainless
1304 this sounds; <strong>mom</strong> is remarkably sophisticated when
1305 it comes to conveying the typographic sense of a document within the
1306 confines of <strong>TYPEWRITE</strong>.
1307 <p>
1308 The primary uses of <strong>TYPEWRITE</strong> are: outputting hard
1309 copy drafts of your work (for editing), and producing documents
1310 for submission to publishers and agents who (wisely) insist on
1311 typewritten, double-spaced copy. To get a nicely typeset version of
1312 work that's in the submission phase of its life (say, to show fellow
1313 writers for critiquing), simply change <strong>TYPEWRITE</strong>
1314 to <strong>TYPESET</strong> and print out a copy.
1315 <p>
1316 If, for some reason, you would prefer the output of
1317 <strong>TYPEWRITE</strong> single-spaced, pass <strong>PRINTSTYLE
1318 TYPEWRITE</strong> the optional argument, <strong>SINGLESPACE</strong>.
1319 <p>
1320 If you absolutely must have a leading other than typewriter double-
1321 or singlespaced, the only way to get it is with the
1322 <a href="#DOC_LEAD">DOC_LEAD</a>
1323 macro, and then ONLY if <strong>DOC_LEAD</strong> is set
1324 <strong>before</strong> you invoke the <strong>START</strong>
1325 macro.
1326 <p>
1327 <a name="TYPESET_DEFAULTS"><h3><u>TYPESET defaults</u></h3></a>
1328 <pre>
1329         Family            = Times Roman
1330         Point size        = 12.5
1331         Paragraph leading = 16 points, adjusted
1332         Fill mode         = justified
1333         Hyphenation       = enabled
1334                             max. lines = 2
1335                             margin = 36 points
1336                             interword adjustment = 1 point
1337         Kerning           = enabled
1338         Ligatures         = enabled
1339         Smartquotes       = enabled
1340         Word space        = groff default
1341         Sentence space    = 0
1342 </pre>
1343
1344 <a name="TYPEWRITE_DEFAULTS"><h3><u>TYPEWRITE defaults</u></h3></a>
1345 <pre>
1346         Family            = Courier
1347         Italics           = underlined
1348         Point size        = 12
1349         Paragraph leading = 24 points, adjusted; 12 points for SINGLESPACE
1350         Fill mode         = left
1351         Hyphenation       = disabled
1352         Kerning           = disabled
1353         Ligatures         = disabled
1354         Smartquotes       = disabled
1355         Word space        = groff default
1356         Sentence space    = groff default
1357         Columns           = ignored
1358 </pre>
1359
1360 <a name="TYPEWRITE_CONTROL"><h3><u>PRINTSTYLE TYPEWRITE control macros</u></h3></a>
1361 <p>
1362 In <strong>PRINTSTYLE TYPEWRITE</strong>, <strong>mom</strong>,
1363 by default, underlines anything that looks like italics.  This
1364 includes the
1365 <a href="typesetting.html#SLANT_INLINE">\*[SLANT]</a>
1366 <a href="definitions.html#TERMS_INLINES">inline escape</a>
1367 for pseudo-italics.
1368 <p>
1369 If you'd prefer that <strong>mom</strong> were
1370 less bloody-minded about pretending to be a typewriter (i.e.
1371 you'd like italics and pseudo-italics to come out as italics),
1372 use the control macros <strong>.ITALIC_MEANS_ITALIC</strong> and
1373 <strong>.SLANT_MEANS_SLANT</strong>.  Neither requires an
1374 argument.
1375 <p>
1376 Although it's unlikely, should you wish to reverse the sense of
1377 these macros in the midst of a document,
1378 <strong>.UNDERLINE_ITALIC</strong> and
1379 <strong>.UNDERLINE_SLANT</strong> restore underlining of
1380 italics and pseudo-italics.
1381 <p>
1382 <a name="UNDERLINE_QUOTES"></a>
1383 Additionally, by default, <strong>mom</strong> underlines
1384 <a href="definitions.html#TERMS_QUOTES">quotes</a>
1385 (but not
1386 <a href="definitions.html#TERMS_BLOCKQUOTES">blockquotes</a>)
1387 in <strong>PRINTSTYLE TYPEWRITE</strong>.
1388 If you don't like this behaviour, turn it off with
1389 <p>
1390 <pre>
1391         .UNDERLINE_QUOTES OFF
1392 </pre>
1393
1394 To turn underlining of quotes back on, use
1395 <strong>UNDERLINE_QUOTES</strong> without an argument.
1396 <p>
1397 While most of the
1398 <a href="docelement.html#DOCELEMENT_CONTROL">control macros</a>
1399 have no effect on <strong>PRINTSTYLE TYPEWRITE</strong>, there
1400 is an important exception:
1401 <a href="headfootpage.html#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>
1402 (and by extension, <strong>FOOTER_SIZE</strong>).  This is
1403 particularly useful for reducing the point size of
1404 headers/footers should they become crowded (quite likely to
1405 happen if the title of your document is long and your
1406 <a href="#COPYSTYLE">COPYSTYLE</a>
1407 is <strong>DRAFT</strong>).
1408 <p>
1409
1410 <!---COPYSTYLE--->
1411
1412 <hr width="66%" align="left">
1413 <p>
1414 <a name="COPYSTYLE"></a>
1415 <nobr>Macro: <strong>COPYSTYLE</strong> DRAFT | FINAL</nobr>
1416
1417 <p>
1418 <strong>Mom</strong>'s default <strong>COPYSTYLE</strong> is
1419 <strong>FINAL</strong>, so you don't have to use this macro unless
1420 you want to.
1421 <p>
1422 <strong>COPYSTYLE DRAFT</strong> exhibits the following behaviour:
1423 <br>
1424 <ol>
1425         <li>documents start on page 1, whether or not you
1426                 request a different starting page number with
1427                 <a href="headfootpage.html#PAGENUMBER">PAGENUMBER</a>
1428         <li>page numbers are set in lower case roman numerals
1429         <li>the draft number supplied by 
1430                 <a href="#DRAFT">DRAFT</a>
1431                 and a revision number, if supplied with 
1432                 <a href="#REVISION">REVISION</a>
1433                 (see
1434                 <a href="#REFERENCE_MACROS">reference macros</a>),
1435                 appear in the centre part of
1436                 <a href="definitions.html#TERMS_HEADER">page headers</a>
1437                 (or footers, depending on which you've selected) along with
1438                 any other information that normally appears there.
1439 </ol>
1440 <p>
1441 <strong>IMPORTANT:</strong> If you define your own centre part for page
1442 headers with
1443 <a href="headfootpage.html#HDRFTR_CENTER">HEADER_CENTER</a>,
1444 no draft and/or revision number will appear there.  If you want draft
1445 and revision information in this circumstance, use
1446 <a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a>.
1447 <p>
1448 <strong>COPYSTYLE FINAL</strong> differs from <strong>DRAFT</strong> in that:
1449 <br>
1450 <ol>
1451         <li>it respects the starting page number you give the document
1452         <li>page numbers are set in normal (Arabic) digits
1453         <li>no draft or revision number appears in the page headers
1454 </ol>
1455 <p>
1456 <strong>NOTE:</strong> The centre part of page headers can get crowded,
1457 especially with
1458 <a href="docprocessing.html#DOCTYPE">DOCTYPE CHAPTER</a>
1459 and
1460 <a href="docprocessing.html#DOCTYPE">DOCTYPE NAMED</a>,
1461 when the <strong>COPYSTYLE</strong> is <strong>DRAFT</strong>.
1462 Three mechanisms are available to overcome this problem.  One is to
1463 reduce the overall size of headers (with
1464 <a href="headfootpage.html#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>).
1465 Another, which only works with
1466 <a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
1467 is to reduce the size of the header's centre part only (with
1468 <a href="headfootpage.html#_SIZE">HEADER_CENTER_SIZE</a>).
1469 And finally, you can elect to have the draft/revision information
1470 attached to page numbers instead of having it appear in the centre
1471 of page headers (see
1472 <a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a>).
1473 <p>
1474 <hr>
1475
1476 <!========================================================================>
1477
1478 <a name="STYLE_BEFORE_START"><h2><u>Changing type/style parameters prior to START</u></h2></a>
1479 <p>
1480 In the third (optional) part of setting up a document (see
1481 <a href="#DOCPROCESSING_TUT">Tutorial -- setting up a mom document</a>),
1482 you can use the
1483 <a href="typsetting.html">typesetting macros</a>
1484 to change <strong>mom</strong>'s document-wide defaults for margins,
1485 line length, family, base point size,
1486 <a href="definitions.html#TERMS_LEADING">leading</a>,
1487 and justification style.
1488 <p>
1489 Two additional style concerns have to be addressed here (i.e. in
1490 macros before
1491 <a href="#START">START</a>):
1492 changes to the
1493 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>,
1494 and whether you want you want the document's nominal leading
1495 adjusted to fill pages fully to the bottom margin.
1496 <p>
1497 <ul>
1498         <li><a href="#TYPE_BEFORE_START">Using typesetting macros prior to START</a>
1499         <p>
1500         <li><a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
1501                 -- adjusting linespacing for equal, accurate bottom margins
1502         <li><a href="#DOCHEADER">DOCHEADER</a>
1503                 -- turning the docheader off
1504         <ul>
1505                 <li><a href="#DOCHEADER_CONTROL">Docheader control</a>
1506         </ul>
1507 </ul>
1508 <br>
1509
1510 <hr width="66%" align="left">
1511 <a name="TYPE_BEFORE_START"><h2><u>Using the typesetting macros prior to START</u></h2></a>
1512 <p>
1513 From time to time (or maybe frequently), you'll want the overall
1514 look of a document to differ from <strong>mom</strong>'s defaults.
1515 Perhaps you'd like her to use a different
1516 <a href="definitions.html#TERMS_FAMILY">family</a>,
1517 or a different overall
1518 <a href="definitions.html#TERMS_LEADING">leading</a>,
1519 or have different left and/or right page margins.
1520 <p>
1521 To accomplish such alterations, use the appropriate
1522 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
1523 (listed below) <strong>after</strong>
1524 <a href="#PRINTSTYLE">PRINTSTYLE</a>
1525 and <strong>before</strong>
1526 <a href="#START">START</a>.
1527 <p>
1528 More than one user has, quite understandably, not fully grasped
1529 the significance of the preceding sentence.  The part they've missed
1530 is &quot;<u>after <strong>PRINTSTYLE</strong></u>&quot;.
1531 <p>
1532 Changes to any aspect of the default look and/or formatting
1533 of a <strong>mom</strong> document must come after
1534 <strong>PRINTSTYLE</strong>.  For example, it might seem natural to
1535 set up page margins at the very top of a document with
1536 <p>
1537 <pre>
1538         .L_MARGIN 1i
1539         .R_MARGIN 1.5i
1540 </pre>
1541
1542 However, when you invoke <strong>.PRINTSTYLE</strong>, those
1543 margins will be overridden.  The correct place to set margins--and
1544 all other changes to the look of a document--is <strong>after
1545 PRINTSTYLE</strong>.
1546
1547 <p>
1548 <strong>NOTE:</strong> Don't use the macros listed in <a
1549 href="#DOC_PARAM_MACROS">Changing document-wide typesetting
1550 parameters after START</a> prior to <strong>START</strong>; they are
1551 exclusively for use afterwards.
1552 <p>
1553 When used before
1554 <strong>START</strong>,
1555 the
1556 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
1557 (below) have the following meanings:
1558 <p>
1559 <pre>
1560         L_MARGIN       Left margin of pages, including headers/footers
1561         R_MARGIN       Right margin of pages, including headers/footers
1562         T_MARGIN       The point at which running text (i.e. not
1563                        headers/footers or page numbers) starts on each page
1564         B_MARGIN*      The point at which running text (i.e. not
1565         (see note)     headers/footers or page numbers) ends on each page
1566
1567         PAGE           If you use PAGE, its final four arguments have the
1568                        same meaning as L_ R_ T_ and B_MARGIN (above).
1569
1570         LL             The line length for everything on the page;
1571                        equivalent to setting the right margin with R_MARGIN
1572         FAMILY         The family of all type in the document
1573         PT_SIZE        The point size of type in paragraphs; mom uses this
1574                        to calculate automatic point size changes (e.g. for
1575                        heads, footnotes, quotes, headers, etc)
1576         LS/AUTOLEAD**  The leading used in paragraphs; all leading and spacing
1577                        of running text is calculated from this
1578
1579         QUAD/JUSTIFY   Affects paragraphs only
1580         LEFT           No effect***
1581         RIGHT          No effect***
1582         CENTER         No effect***
1583
1584 ------
1585   *See <a href="headfootpage.html#FOOTER_MARGIN">FOOTER MARGIN AND BOTTOM MARGIN</a> for an important warning
1586  **See <a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
1587 ***See <a href="#LRC_NOTE">Special note</a>
1588 </pre>
1589
1590 Other macros that deal with type style, or refinements thereof
1591 (<strong>KERN, LIGATURES, HY, WS, SS,</strong> etc.), behave normally.
1592 It is not recommended that you set up tabs or indents prior to
1593 <strong>START</strong>.
1594 <p>
1595 If you want to change any of the basic parameters (above)
1596 <em>after</em> <strong>START</strong> and have them affect a
1597 document globally (as if you'd entered them <em>before</em>
1598 <strong>START</strong>), you must use the macros listed in
1599 <a href="#DOC_PARAM_MACROS">Changing document-wide style parameters after START</a>.
1600
1601 <a name="LRC_NOTE"></a>
1602 <h3><u>Special note on .LEFT, .RIGHT and .CENTER prior to START</u></h3>
1603 In a word, these three macros have no effect on document processing
1604 when invoked prior to <strong>START</strong>.
1605 <p>
1606 All <strong>mom</strong>'s document element tags
1607 (<strong>PP</strong>, <strong>HEAD</strong>,
1608 <strong>BLOCKQUOTE</strong>, <strong>FOOTNOTE</strong>, etc.)
1609 except
1610 <a href="docelement.html#QUOTE">QUOTE</a>
1611 set a
1612 <a href="definitions.html#TERMS_FILLED">fill mode</a>
1613 as soon as they're invoked.  If you wish to turn fill mode off for
1614 the duration of any tag (with
1615 <a href="typesetting.html#LRC">.LEFT, .RIGHT or .CENTER</a>)
1616 you must do so immediately after invoking the tag.  Furthermore,
1617 the change affects <em>only</em> the current invocation of the tag.
1618 Subsequent invocations of the same tag for which you want the same
1619 change require that you invoke <strong>LEFT</strong>,
1620 <strong>RIGHT</strong> or <strong>CENTER</strong> immediately after
1621 every invocation of the tag.
1622 <p>
1623
1624 <!---COLOR--->
1625 <a name="COLOR"><h2><u>Colour</u></h2></a>
1626 <br>
1627 Although it doesn't really matter where you define/initialize
1628 colours for use in document processing (see
1629 <a href="color.html#NEWCOLOR">NEWCOLOR</a>
1630 and
1631 <a href="color.html#XCOLOR">XCOLOR</a>
1632 in the section
1633 <a href="color.html#COLOR_INTRO">Coloured text</a>),
1634 I recommend doing so before you begin document processing with
1635 <a href="#START">START</a>.
1636 <p>
1637 The macro,
1638 <a href="color.html#COLOR">COLOR</a>,
1639 and the
1640 <a href="definitions.html#TERMS_INLINES">inline escape</a>,
1641 <a href="color.html#COLOR_INLINE">\[&lt;colorname&gt;]</a>,
1642 can be used at any time during document processing for occasional
1643 colour effects.  However, consistent and reliable colourizing of
1644 various document elements (the docheader, heads, linebreaks,
1645 footnotes, pagenumbers, and so on) must be managed through the use
1646 of the
1647 <a href="docelement.html#DOCELEMENT_CONTROL">document element control macros</a>.
1648 <p>
1649 <strong>PLEASE NOTE:</strong> If you plan to have <strong>mom</strong>
1650 generate a
1651 <a href="docelement.html#TOC">table of contents</a>,
1652 do NOT embed colour
1653 <a href="definitions.html#TERMS_INLINES">inline escapes</a>
1654 (<a href="color.html#COLOR_INLINE">\[&lt;colorname&gt;]</a>)
1655 in the
1656 <a href="definitions.html#TERMS_STRINGARGUMENT">string arguments</a>
1657 given to any of the
1658 <a href="docprocessing.html#REFERENCE_MACROS">reference macros</a>,
1659 nor in the string arguments given to
1660 <a href="docelement.html#HEAD">.HEAD</a>,
1661 <a href="docelement.html#SUBHEAD">.SUBHEAD</a>
1662 or
1663 <a href="docelement.html#PARAHEAD">.PARAHEAD</a>.
1664 Use, rather, the
1665 <a href="definitions.html#TERMS_CONTROLMACRO">control macros</a>
1666 <strong>mom</strong> provides to automatically colourize these
1667 elements.
1668 <br>
1669
1670 <!---DOC_LEAD_ADJUST--->
1671
1672 <hr width="66%" align="left">
1673 <a name="DOC_LEAD_ADJUST"><h3><u>Adjusting document leading to fill pages</u></h3></a>
1674 <br>
1675 <nobr>Macro: <strong>DOC_LEAD_ADJUST</strong> toggle</nobr>
1676 <br>
1677 <em>*Must come after LS or AUTOLEAD and before START</em>
1678
1679 <p>
1680 <strong>DOC_LEAD_ADJUST</strong> is a special macro to adjust
1681 document
1682 <a href="definitions.html#TERMS_LEADING">leading</a>
1683 so that bottom margins fall precisely where you expect.
1684 <p>
1685 If you invoke <strong>DOC_LEAD_ADJUST</strong>, <strong>mom</strong>
1686 takes the number of lines that fit on the page at your requested
1687 leading, then incrementally adds
1688 <a href="definitions.html#TERMS_UNITS">machine units</a>
1689 to the leading until the maximum number of lines at the new leading
1690 matches the bottom margin.  In most instances, the difference
1691 between the requested lead and the adjusted lead is
1692 unnoticeable, and since in almost all cases adjusted leading is
1693 what you want, it's <strong>mom</strong>'s default.
1694 <p>
1695 Should you NOT want adjusted document leading, you MUST turn it
1696 off manually, like this:
1697 <p>
1698 <pre>
1699         .DOC_LEAD_ADJUST OFF
1700 </pre>
1701   If you set the document leading prior to <strong>START</strong>
1702 with
1703 <a href="typesetting.html#LS">LS</a>
1704 or
1705 <a href="typesetting.html#AUTOLEAD">AUTOLEAD</a>,
1706 <strong>DOC_LEAD_ADJUST OFF</strong> must come afterwards, like
1707 this:
1708 <p>
1709 <pre>
1710         .LS 12
1711         .DOC_LEAD_ADJUST OFF
1712 </pre>
1713
1714 In this scenario, the maximum number of lines that fit on a page at
1715 a
1716 <a href="definitions.html#TERMS_LEADING">leading</a>
1717 of 12
1718 <a href="definitions.html#TERMS_PICASPOINTS">points</a>
1719 determine where <strong>mom</strong> ends
1720 a page.  The effect will be that last lines usually fall (slightly)
1721 short of the &quot;official&quot; bottom margin.
1722 <p>
1723 In
1724 <a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE</a>
1725 <strong>TYPEWRITE</strong>, the leading is always adjusted and
1726 can't be turned off.
1727 <p>
1728 <strong>NOTE:</strong> <strong>DOC_LEAD_ADJUST</strong>, if
1729 used, must be invoked after
1730 <a href="typesetting.html#LEADING">LS</a>
1731 or
1732 <a href="typesetting.html#AUTOLEAD">AUTOLEAD</a>
1733 and before
1734 <a href="#START">START</a>
1735 <p>
1736 <strong>ADDITIONAL NOTE:</strong> Even if you disable
1737 <strong>DOC_LEAD_ADJUST</strong>, <strong>mom</strong> will still
1738 adjust the leading of endnotes pages and toc pages.  See
1739 <a href="docelement.html#ENDNOTE_LEAD">ENDNOTE_LEAD</a>
1740 and
1741 <a href="docelement.html#TOC_LEAD">TOC_LEAD</a>
1742 for an explanation of how to disable this default behaviour.
1743 <p>
1744
1745 <!---DOCHEADER--->
1746
1747 <hr width="66%" align="left">
1748 <a name="DOCHEADER"><h3><u>Managing the docheader</u></h3></a>
1749 <br>
1750 <nobr>Macro: <strong>DOCHEADER</strong> &lt;toggle&gt; [ distance to advance from top of page ]</nobr>
1751 <br>
1752 <em>*Must come before START; distance requires a <a href="#TERMS_UNITOFMEASURE">unit of measure</a></em>
1753
1754 <p>
1755 By default, <strong>mom</strong> prints a
1756 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
1757 on the first page of any document (see
1758 <a href="#DOCHEADER_DESC">below</a>
1759 for a description of the docheader).  If you don't want a docheader,
1760 turn it off with
1761 <p>
1762 <pre>
1763         .DOCHEADER OFF
1764 </pre> 
1765
1766 <strong>DOCHEADER</strong> is a toggle macro, so the argument doesn't
1767 have to be <strong>OFF</strong>; it can be anything you like.
1768 <p>
1769 If you turn the docheader off, <strong>mom</strong>, by default, starts
1770 the running text of your document on the same top
1771 <a href="definitions.html#TERMS_BASELINE">baseline</a>
1772 as all subsequent pages.  If you'd like her to start at a different
1773 vertical position, give her the distance you'd like as a second
1774 argument.
1775 <p>
1776 <pre>
1777         .DOCHEADER OFF 1.5i
1778 </pre>
1779
1780 This starts the document 1.5 inches from the top of the page PLUS
1781 whatever spacing adjustment <strong>mom</strong> has to make in
1782 order to ensure that the first baseline of running text falls on a
1783 &quot;legal&quot; baseline (i.e. one that ensures that the bottom
1784 margin of the first page falls where it should).  The distance is
1785 measured from the top edge of the paper to the
1786 <a href="definitions.html#TERMS_BASELINE">baseline</a>
1787 of the first line of type.
1788 <p>
1789 <strong>TIP:</strong> Since no document processing happens until
1790 you invoke
1791 <a href="#START">START</a>
1792 -- including anything to do with docheaders -- you can typeset
1793 your own docheader prior to <strong>START</strong> (if you don't
1794 like the way <strong>mom</strong> does things) and use
1795 <strong>DOCHEADER OFF</strong> with its optional distance argument
1796 to ensure that the body of your document starts where you want.
1797 You can even insert a PostScript file (with <strong>.PSPIC</strong>;
1798 see the <strong>groff_tmac</strong> man page for usage).
1799 <p>
1800 <a name="DOCHEADER_CONTROL"><h3><u>How to change the look of docheaders: docheader control macros</u></h3></a>
1801
1802 <p>
1803 With
1804 <a href="#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>,
1805 the look of docheaders is carved in stone.
1806 In
1807 <a href="#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
1808 however, you can make a lot of changes.  Macros that alter docheaders
1809 MUST come before
1810 <a href="#START">START</a>.
1811 <a name="DOCHEADER_DESC"></a>
1812 <p>
1813 A typeset docheader has the following characteristics.  Note that
1814 title, subtitle, author, and document type are what you supply
1815 with the
1816 <a href="#REFERENCE_MACROS">reference macros</a>.
1817 Any you leave out will not appear; <strong>mom</strong> will
1818 compensate:
1819 <p>
1820 <pre>
1821             TITLE         bold, 3.5 points larger than running text (not necessarily caps)
1822            Subtitle       medium, same size as running text
1823               by          medium italic, same size as running text
1824            Author(s)      medium italic, same size as running text
1825
1826         (Document type)   bold italic, underscored, 3 points larger than running text
1827 </pre>
1828
1829 If the
1830 <a href="#DOCTYPE">DOCTYPE</a>
1831 is CHAPTER,
1832 <pre>
1833            Chapter #       bold, 4 points larger than running text
1834          Chapter Title     bold italic, 4 points larger than running text
1835 </pre>
1836
1837 <p>
1838 The
1839 <a href="definitions.html#TERMS_FAMILY">family</a>
1840 is the prevailing family of the whole document.
1841 <p>
1842 <strong>NOTE:</strong> If your <strong>DOCTYPE</strong> is
1843 <strong>CHAPTER</strong> and you have both &quot;Chapter #&quot;
1844 and a &quot;Chapter Title&quot; (as above), you may find the
1845 <a href="definitions.html#TERMS_LEADING">leading</a>
1846 a bit cramped (owing to <strong>mom</strong>'s default docheader
1847 leading).  If this is the case, you can adjust the leading either
1848 with
1849 <a href="#ADJUST_LEADING">DOCHEADER_LEAD</a>
1850 or by including the
1851 <a name="definitions.html#TERMS_INLINES">inline escape</a>,
1852 <a href="inlines.html#DOWN">\*[DOWN]</a>,
1853 in the argument you pass to
1854 <a href="#CHAPTER_TITLE">CHAPTER_TITLE</a>, like this:
1855 <p>
1856 <pre>
1857         .CHAPTER_TITLE "\*[DOWN 2p]Why Not Patent Calculus?"
1858 </pre>
1859
1860
1861 <a name="DOCHEADER_CONTROL_INDEX"><h3><u>The docheader macros to:</u></h3></a>
1862 <ol>
1863         <li><a href="#CHANGE_START">Change the starting position of the docheader</a>
1864         <li><a href="#DOCHEADER_FAMILY">Change the family of the entire docheader</a>
1865         <li><a href="#ADJUST_LEADING">Adjust the docheader leading</a>
1866         <li><a href="#CHANGE_FAMILY">Change the family of individual docheader elements</a>
1867         <li><a href="#CHANGE_FONT">Change the font of docheader elements</a>
1868         <li><a href="#CHANGE_COLOR">Change the colour of the docheader</a>
1869         <li><a href="#CHANGE_SIZE">Adjust the size of docheader elements</a>
1870         <li><a href="#CHANGE_ATTRIBUTE">Change the attribution string (&quot;by&quot;)</a>
1871 </ol>
1872 <p>
1873 <a name="CHANGE_START"><h3><u>1. Change the starting position</u></h3></a>
1874 <p>
1875 By default, a docheader starts on the same
1876 <a href="definitions.html#TERMS_BASELINE">baseline</a>
1877 as
1878 <a href="definitions.html#TERMS_RUNNING">running text</a>.
1879 If you'd like it to start somewhere else, use the macro
1880 <kbd>.DOCHEADER_ADVANCE</kbd> and give it the distance you want
1881 (measured from the top edge of the paper to the first baseline
1882 of the docheader), like this:
1883 <p>
1884 <pre>
1885         .DOCHEADER_ADVANCE 4P
1886 </pre>
1887
1888 A
1889 <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>
1890 is required.
1891 <p>
1892 <strong>NOTE:</strong> If
1893 <a href="headfootpage.html#HEADERS">HEADERS</a>
1894 are <strong>OFF</strong>, <strong>mom</strong>'s normal top
1895 margin for
1896 <a href="definitions.html#TERMS_RUNNING">running text</a>
1897 (7.5
1898 <a href="definitions.html#TERMS_PICASPOINTS">picas</a>)
1899 changes to 6 picas (visually approx. 1 inch).  Since the
1900 first baseline of the docheader falls on the same baseline
1901 as the first line of running text (on pages after page 1),
1902 you might find the docheaders a bit high when headers are off.
1903 Use
1904 <a href="#CHANGE_START">DOCHEADER_ADVANCE</a>
1905 to place them where you want.
1906 <p>
1907
1908 <a name="DOCHEADER_FAMILY"><h3><u>2. Change the family of the entire docheader</u></h3></a>
1909 <p>
1910 By default, <strong>mom</strong> sets the docheader in the same
1911 family used for 
1912 <a href="definitions.html#TERMS_RUNNING">running text</a>.
1913 If you'd prefer to have your docheaders set in a different family,
1914 invoke <strong>DOCHEADER_FAMILY</strong> with the family you want.
1915 The argument for <strong>DOCHEADER_FAMILY</strong> is the same as
1916 for
1917 <a href="typesetting.html#FAMILY">FAMILY</a>.
1918 <p>
1919 For example, <strong>mom</strong>'s default family for running text
1920 is Times Roman.  If you'd like to keep that default, but have the
1921 docheaders set entirely in Helvetica,
1922 <p>
1923 <pre>
1924         .DOCHEADER_FAMILY H
1925 </pre>
1926
1927 is how you'd do it.
1928 <p>
1929 Please note that if you use <strong>DOCHEADER_FAMILY</strong>,
1930 you can still alter the family of individual parts of the docheader
1931 with the macros listed
1932 <a href="#CHANGE_FAMILY">here</a>.
1933
1934 <a name="ADJUST_LEADING"><h3><u>3. Adjust the leading</u></h3></a>
1935 <p>
1936 The
1937 <a href="definitions.html#TERMS_LEADING">leading</a>
1938 of docheaders is the same as running text (except when
1939 <a href="#DOCTYPE">DOCTYPE</a>
1940 is <strong>CHAPTER</strong> <em>and</em> both a chapter number and a
1941 chapter title have been supplied, in which case the default is 4 points
1942 more than running text.)
1943 <p>
1944 If you'd like your docheaders to have a different leading, say, 2
1945 points more than the lead of running text, use:
1946 <p>
1947 <pre>
1948         .DOCHEADER_LEAD +2
1949 </pre>
1950
1951 Since the leading of docheaders is calculated from the lead of running
1952 text, a + or - sign is required before the argument (how much to add
1953 or subtract from the lead of running text).  No 
1954 <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>
1955 is required; points is assumed.
1956 <p>
1957
1958 <a name="CHANGE_FAMILY"><h3><u>4. Change the family of docheader elements</u></h3></a>
1959 <p>
1960 The following macros let you change the
1961 <a href="definitions.html#TERMS_FAMILY">family</a>
1962 of each docheader element separately:
1963 <p>
1964 <ul>
1965 <li><strong>TITLE_FAMILY</strong> <nobr>&lt;family&gt;</nobr>
1966 <li><strong>CHAPTER_TITLE_FAMILY</strong> <nobr>&lt;family&gt;</nobr>
1967 <li><strong>SUBTITLE_FAMILY</strong> <nobr>&lt;family&gt;</nobr>
1968 <li><strong>AUTHOR_FAMILY</strong> <nobr>&lt;family&gt;</nobr>
1969 <li><strong>DOCTYPE_FAMILY</strong> <nobr>&lt;family&gt; (if</nobr>
1970 <a href="#DOCTYPE">DOCTYPE</a> is NAMED)
1971 </ul>
1972 <p>
1973 Simply pass the appropriate macro the family you want, just as you
1974 would with
1975 <a href="typesetting.html#FAMILY">FAMILY</a>.
1976 <p>
1977
1978 <a name="CHANGE_FONT"><h3><u>5. Change the font of docheader elements</u></h3></a>
1979 <p>
1980 The following macros let you change the
1981 <a href="definitions.html#TERMS_FONT">font</a>
1982 of each docheader element separately:
1983 <p>
1984 <ul>
1985 <li><strong>TITLE_FONT</strong> <nobr>R | B | I | BI</nobr>
1986 <li><strong>CHAPTER_TITLE_FONT</strong> <nobr>R | B | I | BI</nobr>
1987 <li><strong>SUBTITLE_FONT</strong> <nobr>R | B | I | BI</nobr>
1988 <li><strong>AUTHOR_FONT</strong> <nobr>R | B | I | BI</nobr>
1989 <li><strong>DOCTYPE_FONT</strong> <nobr>R | B | I | BI (if</nobr>
1990 <a href="#DOCTYPE">DOCTYPE</a> is NAMED)
1991 </ul>
1992 <p>
1993 Simply pass the appropriate macro the font you want.  <strong>R,
1994 B, I</strong> and <strong>BI</strong> have the same meaning as
1995 they do for
1996 <a href="typesetting.html#FONT">FT</a>.
1997 <p>
1998
1999 <a name="CHANGE_COLOR"><h3><u>6. Change the colour of the docheader elements individually</u></h3></a>
2000 <p>
2001 The following macros let you change the color of each docheader
2002 element separately.  You must pre-define (or
2003 &quot;initialize&quot;) the color with
2004 <a href="color.html#NEWCOLOR">NEWCOLOR</a>
2005 or
2006 <a href="color.html#XCOLOR">XCOLOR</a>.
2007 <p>
2008 <ul>
2009         <li><strong>TITLE_COLOR</strong> <nobr>&lt;colorname&gt;</nobr>
2010         <li><strong>CHAPTER_TITLE_COLOR</strong> <nobr>&lt;colorname&gt;</nobr>
2011         <ul>
2012         <li><strong>Note: CHAPTER_TITLE_COLOR</strong> is needed
2013             only if you enter both a <strong>CHAPTER</strong>
2014             reference macro AND a <strong>CHAPTER_TITLE</strong>
2015             macro.  Otherwise, the macro,
2016             <strong>TITLE_COLOR</strong> takes care of colorizing
2017             the chapter header.
2018         </ul>
2019         <li><strong>SUBTITLE_COLOR</strong> <nobr>&lt;colorname&gt;</nobr>
2020         <li><strong>ATTRIBUTE_COLOR</strong> <nobr>&lt;colorname&gt;</nobr>
2021                 (the &quot;by&quot; string that precedes the author[s] name[s])
2022         <li><strong>AUTHOR_COLOR</strong> <nobr>&lt;colorname&gt;</nobr>
2023         <li><strong>DOCTYPE_COLOR</strong>  <nobr>&lt;colorname&gt; (if</nobr>
2024                 <a href="#DOCTYPE">DOCTYPE</a> is NAMED)
2025 </ul>
2026 <p>
2027 It is not recommended that you embed colour (with the
2028 <a href="definitions.html#TERMS_INLINES">inline escape</a>,
2029 <a href="color.html#COLOR_INLINE">\*[&lt;colorname&gt;]</a>)
2030 in the strings passed to
2031 <strong>TITLE</strong>, <strong>CHAPTER_TITLE</strong>,
2032 <strong>SUBTITLE</strong>, <strong>AUTHOR</strong> or the name you
2033 give <strong>DOCTYPE NAMED</strong>.  The strings passed to these
2034 macros are used to generate page
2035 <a href="definitions.html#TERMS_HEADER">headers</a>
2036 and
2037 <a href="definitions.html#TERMS_FOOTER">footers</a>.
2038 An embedded colour will cause the string to be colourized any time
2039 it appears in headers or footers.  (If you want headers or footers
2040 colourized, or parts thereof, use the header/footer control macros.)
2041 <p>
2042 <a name="DOCHEADER_COLOR"></a>
2043 If you want to colourize the entire docheader, use the macro
2044 <p>
2045 <ul>
2046 <li><strong>DOCHEADER_COLOR</strong> <nobr>&lt;color name&gt;.</nobr>
2047 </ul>
2048
2049 <a name="CHANGE_SIZE"><h3><u>7. Adjust the size of docheader elements</u></h3></a>
2050 <p>
2051 The following macros let you adjust the point size of each docheader
2052 element separately.
2053 <p>
2054 <strong>Mom</strong> calculates the point size
2055 of docheader elements from the point size of paragraphs in running
2056 text, so you must prepend a + or - sign to the argument.  Points is
2057 assumed as the
2058 <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>,
2059 so there's no need to append a unit to the argument.  Fractional point
2060 sizes are allowed.
2061 <p>
2062 <ul>
2063 <li><strong>TITLE_SIZE</strong> <nobr>&lt;+/-points&gt;</nobr>
2064 <br>
2065 default = +3.5 (+4 if docheader title is &quot;Chapter #&quot;)
2066 <li><strong>CHAPTER_TITLE_SIZE</strong> <nobr>&lt;+/-points&gt;</nobr>
2067 <br>
2068 default = +4
2069 <li><strong>SUBTITLE_SIZE</strong> <nobr>&lt;+/-points&gt;</nobr>
2070 <br>
2071 default = +0
2072 <li><strong>AUTHOR_SIZE</strong> <nobr>&lt;+/-points&gt;</nobr>
2073 <br>
2074 default = +0
2075 <li><strong>DOCTYPE_SIZE</strong> <nobr>&lt;+/-points&gt; (if</nobr>
2076 <a href="#DOCTYPE">DOCTYPE</a> is NAMED)
2077 <br>
2078 default = +3
2079 </ul>
2080 <p>
2081 Simply pass the appropriate macro the size adjustment you want.
2082 <p>
2083
2084 <a name="CHANGE_ATTRIBUTE"><h3><u>8. Change the attribution string (&quot;by&quot;)</u></h3></a>
2085 <p>
2086 If you're not writing in English, you can change what
2087 <strong>mom</strong> prints where &quot;by&quot; appears in
2088 docheaders.  For example,
2089 <p>
2090 <pre>
2091         .ATTRIBUTE_STRING "par"
2092 </pre>
2093
2094 changes &quot;by&quot; to &quot;par&quot;.  If you
2095 don't want an attribution string at all, simply pass
2096 <strong>ATTRIBUTE_STRING</strong> an empty argument, like this:
2097 <p>
2098 <pre>
2099         .ATTRIBUTE_STRING ""
2100 </pre>
2101
2102 <strong>Mom</strong> will deposit a blank line where the
2103 attribution string normally appears.
2104 <p>
2105 <strong>NOTE:</strong> The type specs for the attribution line
2106 in docheaders are the same as for the author line.  Although
2107 it's highly unlikely you'll want the attribution line in a
2108 different family, font, or point size, you can do so by using
2109 <a href="definitions.html#TERMS_INLINES">inline escapes</a>
2110 in the argument to <strong>ATTRIBUTE_STRING</strong>.  For
2111 example,
2112 <p>
2113 <pre>
2114         .ATTRIBUTE_STRING "\f[HBI]\*[SIZE -2p] by \*[SIZE +2p]\*[PREV]"
2115 </pre>
2116
2117 would set &quot;by&quot; in Helvetica bold italic, 2 points
2118 smaller than normal.
2119 <p>
2120 <hr>
2121
2122 <!---COLUMNS_INTRO--->
2123
2124 <a name="COLUMNS_INTRO"><h2><u>Setting documents in columns</u></h2></a>
2125
2126 <p>
2127 Setting documents in columns is easy with <strong>mom</strong>.  (Of
2128 course she'd say that, but it's true!)  All you have to do is is
2129 say how many columns you want and how much space you want
2130 between them (the
2131 <a href="definitions.html#TERMS_GUTTER">gutters</a>).
2132 That's it. <strong>Mom</strong> takes care of everything else, from
2133 soup to nuts.
2134 <p>
2135 <strong>SOME WORDS OF ADVICE:</strong>
2136 <p>
2137 If you want your type to achieve a pleasing
2138 <a href="definitions.html#TERMS_JUST">justification</a>
2139 or
2140 <a href="definitions.html#TERMS_RAG">rag</a>
2141 in columns, reduce the point size of type (and probably the
2142 <a href="definitions.html#TERMS_LEADING">leading</a>
2143 as well).  <strong>Mom</strong>'s default document point
2144 size is 12.5, which works well across her default 39
2145 <a href="definitions.html#TERMS_PICASPOINTS">pica</a>
2146 full page line length, but with even just two columns on a page,
2147 the default point size is awkward to work with.
2148 <p>
2149 Furthermore, you'll absolutely need to reduce the indents for
2150 <a href="docelement.html#EPIGRAPH_CONTROL">epigraphs</a>,
2151 <a href="docelement.html#QUOTE_GENERAL">quotes</a>,
2152 and
2153 <a href="docelement.html#BLOCKQUOTE_GENERAL">blockquotes</a>
2154 (and probably the
2155 <a href="docelement.html#PARA_INDENT">paragraph first-line indent</a>
2156 as well).
2157 <p>
2158
2159 <!---COLUMNS--->
2160
2161 <hr width="66%" align="left">
2162 <a name="COLUMNS"><h3><u>COLUMNS</u></h3></a>
2163 <br>
2164 <nobr>Macro: <strong>COLUMNS</strong> &lt;number of columns&gt; &lt;width of gutters&gt;</nobr>
2165 <br>
2166 <em>*Should be the last macro before START
2167 <br>
2168 The second argument requires a <a href="#TERMS_UNITOFMEASURE">unit of measure</a></em>
2169
2170 <p>
2171 <strong>COLUMNS</strong> takes two arguments: the number of
2172 columns you want on document pages, and the width of the
2173 <a href="definitions.html#TERMS_GUTTER">gutter</a>
2174 between them.  For example, to set up a page with two columns
2175 separated by an 18 point gutter, you'd do
2176 <p>
2177 <pre>
2178         .COLUMNS 2 18p
2179 </pre>
2180
2181 Nothing to it, really.  However, as noted above,
2182 <strong>COLUMNS</strong> should always be the last document
2183 setup macro prior to
2184 <a href="#START">START</a>.
2185 <p>
2186 <strong>NOTE:</strong> <strong>Mom</strong> ignores columns completely
2187 when the
2188 <a href="#PRINTSTYLE">PRINTSTYLE</a>
2189 is <strong>TYPEWRITE</strong>.  The notion of typewriter-style
2190 output in columns is just too ghastly for her to bear.
2191
2192 <h3><u>Using tabs when COLUMNS are enabled</u></h3>
2193 <strong>Mom</strong>'s tabs
2194 (both
2195 <a href="typesetting.html#TYPESETTING_TABS">typesetting tabs</a>
2196 and
2197 <a href="typesetting.html#STRING_TABS">string tabs</a>)
2198 behave as you'd expect during document processing, even when
2199 <strong>COLUMNS</strong> are enabled.  Tab structures set up
2200 during document processing carry over from page to page and column
2201 to column.
2202
2203 <a name="BREAKING_COLUMNS"></a>
2204 <h3><u>Breaking columns manually</u></h3>
2205 <strong>Mom</strong> takes care of breaking columns when they reach
2206 the bottom margin of a page.  However, there may be times you want to
2207 break the columns yourself.  There are two macros for breaking columns
2208 manually: <strong>COL_NEXT</strong> and <strong>COL_BREAK</strong>.
2209
2210 <a name="COL_NEXT"></a>
2211 <p>
2212 <kbd>.COL_NEXT</kbd> breaks the line just before it,
2213 <a href="definitions.html#TERMS_QUAD">quads</a>
2214 it left (assuming the type is justified or quad left), and moves over
2215 to the top of the next column.  If the column happens to be the last
2216 (rightmost) one on the page, <strong>mom</strong> starts a new page
2217 at the &quot;column 1&quot; position.  This is the macro to use when
2218 you want to start a new column after the end of a paragraph.
2219
2220 <a name="COL_BREAK"></a>
2221 <p>
2222 <kbd>.COL_BREAK</kbd> is almost the same, except that
2223 instead of breaking and quadding the line preceding it,
2224 she breaks and spreads it (see
2225 <a href="typesetting.html#SPREAD">SPREAD</a>).
2226 Use this macro whenever you need to start a new column in the middle
2227 of a paragraph.
2228 <p>
2229 If you need <strong>COL_BREAK</strong> in the middle of a blockquote
2230 or (god help us) an epigraph, you must do the following in order for
2231 <strong>COL_BREAK</strong> to work:
2232 <p>
2233 <pre>
2234         .SPREAD
2235         \!.COL_BREAK
2236 </pre>
2237 <hr>
2238
2239 <!========================================================================>
2240
2241 <a name="START_MACRO">
2242 <h2><u>Start document processing</u></h2>
2243 </a>
2244
2245 In order to use <strong>mom</strong>'s document element macros
2246 (tags), you have to tell her you want them.  The macro to do this
2247 is <strong>START</strong>.
2248 <p>
2249 <strong>START</strong> collects the information you gave
2250 <strong>mom</strong> in the setup section at the top of your file (see
2251 <a href="#DOCPROCESSING_TUT">Tutorial -- setting up a mom document</a>),
2252 merges it with her defaults, sets up headers and page numbering,
2253 and prepares <strong>mom</strong> to process your document using
2254 the document element tags.  No document processing takes place until
2255 you invoke <strong>START</strong>.
2256 <p>
2257
2258 <!---START--->
2259
2260 <hr width="66%" align="left">
2261 <p>
2262 <a name="START"></a>
2263 Macro: <strong>START</strong>
2264 <br>
2265 <em>*Required for document processing.</em>
2266
2267 <p>
2268 <strong>START</strong> takes no arguments.  It simply instructs
2269 <strong>mom</strong> to begin document processing.  If you don't
2270 want document processing (i.e. you only want the
2271 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>),
2272 don't use <strong>START</strong>.
2273 <p>
2274 At a barest minimum before <strong>START</strong>, you must enter a
2275 <a href="#PRINTSTYLE">PRINTSTYLE</a>
2276 command.
2277 <p>
2278 <hr>
2279
2280 <!========================================================================>
2281
2282 <a name="DOC_PARAM_MACROS">
2283 <h2><u>Changing document-wide style parameters after START</u></h2>
2284 </a>
2285
2286 In the normal course of things, you change the basic type
2287 parameters of a document <em>before</em>
2288 <a href="#START">START</a>,
2289 using
2290 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
2291 (<strong>L_MARGIN, FAMILY, PT_SIZE, LS,</strong> etc).  After
2292 <strong>START</strong>, you MUST use the following macros to make
2293 global changes to the basic type parameters of a document.
2294 <p>
2295
2296 <a name="INDEX_DOC_PARAM">
2297         <h3><u>Macro list</u></h3>
2298 </a>
2299 <ul>
2300         <li><a href="#DOC_LEFT_MARGIN">DOC_LEFT_MARGIN</a>
2301         <li><a href="#DOC_RIGHT_MARGIN">DOC_RIGHT_MARGIN</a>
2302         <li><a href="#DOC_LINE_LENGTH">DOC_LINE_LENGTH</a>
2303         <li><a href="#DOC_FAMILY">DOC_FAMILY</a>
2304         <li><a href="#DOC_PT_SIZE">DOC_PT_SIZE</a>
2305         <li><a href="#DOC_LEAD">DOC_LEAD</a>
2306         <li><a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
2307         <li><a href="#DOC_QUAD">DOC_QUAD</a>
2308 </ul>
2309 <br>
2310
2311 <hr width="66%" align="left">
2312 <p>
2313 <a name="DOC_LEFT_MARGIN">
2314         <nobr>Macro: <strong>DOC_LEFT_MARGIN</strong> &lt;left margin&gt;</nobr>
2315 </a>
2316 <br>
2317 <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
2318 <p>
2319 <ul>
2320         <li>the argument is the same as for
2321                 <a href="typesetting.html#L_MARGIN">L_MARGIN</a>
2322         <li>changes all left margins to the new value
2323         <li>the line length remains the same (i.e. the right margin
2324                 shifts when you change the left margin)
2325 </ul>
2326 <br>
2327
2328 <hr width="66%" align="left">
2329 <p>
2330 <a name="DOC_RIGHT_MARGIN">
2331         <nobr>Macro: <strong>DOC_RIGHT_MARGIN</strong> &lt;right margin&gt;</nobr>
2332 </a>
2333 <br>
2334 <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
2335 <p>
2336 <ul>
2337         <li>the argument is the same as for
2338                 <a href="typesetting.html#R_MARGIN">R_MARGIN</a>
2339     <li>changes all right margins, including
2340         <a href="definitions.html#TERMS_DOCHEADER">docheaders</a>,
2341         headers (or footers) and page numbering to the new value;
2342         for changing the right margin of
2343         <a href="definitions.html#TERMS_RUNNING">running text</a>
2344         only, use
2345         <a href="typesetting.html#R_MARGIN">R_MARGIN</a>
2346         (see
2347         <a href="typemacdoc.html#TOP">Using typesetting macros during
2348         document processing</a>,
2349         entry for <strong>R_MARGIN</strong>)
2350         <li>all mom commands that include a right indent calculate
2351                 the indent from the new value
2352 </ul>
2353 <br>
2354
2355 <hr width="66%" align="left">
2356 <p>
2357 <a name="DOC_LINE_LENGTH">
2358         <nobr>Macro: <strong>DOC_LINE_LENGTH</strong> &lt;length&gt;</nobr>
2359 </a>
2360 <br>
2361 <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
2362 <p>
2363 <ul>
2364         <li>the argument is the same as for
2365                 <a href="typesetting.html#LINELENGTH">LL</a>
2366     <li>exactly equivalent to changing the right margin with
2367         DOC_RIGHT_MARGIN (see
2368         <a href="#DOC_RIGHT_MARGIN">above</a>);
2369         for changing the line length of
2370         <a href="definitions.html#TERMS_RUNNING">running text</a>
2371         only, use
2372         <a href="typesetting.html#LINELENGTH">LL</a>
2373         (see
2374         <a href="typemacdoc.html#TOP">Using typesetting macros during
2375         document processing</a>,
2376         entry for <strong>LL</strong>)
2377 </ul>
2378 <br>
2379
2380 <hr width="66%" align="left">
2381 <p>
2382 <a name="DOC_FAMILY">
2383         <nobr>Macro: <strong>DOC_FAMILY</strong> &lt;family&gt;</nobr>
2384 </a>
2385 <p>
2386 <ul>
2387         <li>the argument is the same as for
2388                 <a href="typesetting.html#FAMILY">FAMILY</a>
2389         <li>globally changes the type family
2390         <li>any page elements (e.g.
2391                 <a href="definitions.html#TERMS_HEADER">headers</a>,
2392         page numbers, footnotes) whose families you wish to remain
2393         at their old values must be reset with the appropriate
2394         <a href="docelement.html#DOCELEMENT_CONTROL">control macros</a>
2395 </ul>
2396 <br>
2397
2398 <hr width="66%" align="left">
2399 <p>
2400 <a name="DOC_PT_SIZE">
2401         <nobr>Macro: <strong>DOC_PT_SIZE</strong> &lt;point size&gt;</nobr>
2402 </a>
2403 <br>
2404 <em>*Does not require a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>; points is assumed</em>
2405 <p>
2406 <ul>
2407         <li>the argument is the same as for
2408                 <a href="typesetting.html#PS">PT_SIZE</a>,
2409                 and refers to the point size of type in paragraphs
2410         <li>all automatic point size changes (heads, quotes,
2411                 footnotes, headers, etc.) are affected by the new size;
2412                 anything you do not want affected must be reset to
2413                 its former value (see the Control Macros section of
2414                 the pertinent document element for instructions on
2415                 how to do this)
2416 </ul>
2417 <br>
2418
2419 <hr width="66%" align="left">
2420 <p>
2421 <a name="DOC_LEAD">
2422         <nobr>Macro: <strong>DOC_LEAD</strong> &lt;points&gt; [ ADJUST ]</nobr>
2423 </a>
2424 <br>
2425 <em>*Does not require a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>; points is assumed</em>
2426 <p>
2427 <ul>
2428         <li>the argument is the same as for
2429                 <a href="typesetting.html#LS">LS</a>,
2430                 and refers to the
2431                 <a href="definitions.html#TERMS_LEAD">leading</a>
2432                 of paragraphs
2433         <li>because paragraphs will have a new leading, the leading and
2434                 spacing of most running text is influenced by the new value
2435         <li>epigraphs and footnotes remain unaffected;
2436                 if you wish to change their leading, use
2437                 <a href="docelement.html#EPIGRAPH_AUTOLEAD">EPIGRAPH_AUTOLEAD</a>
2438                 and
2439                 <a href="docelement.html#FOOTNOTE_AUTOLEAD">FOOTNOTE_AUTOLEAD</a>.
2440         <li>the optional argument <strong>ADJUST</strong> performs
2441                 leading adjustment as explained in
2442                 <a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
2443 </ul>
2444 <p>
2445 <strong>IMPORTANT:</strong> Do not use <strong>DOC_LEAD</strong>
2446 in the middle of a page!  It should always and only be invoked
2447 immediately prior to a new page, like this:
2448 <p>
2449 <pre>
2450         .DOC_LEAD &lt;new value&gt;
2451         .NEWPAGE
2452 </pre>
2453
2454 <strong>NOTE:</strong> Even if you don't pass
2455 <strong>DOC_LEAD</strong> the optional argument
2456 <strong>ADJUST</strong>, <strong>mom</strong> will still adjust the
2457 leading of endnotes pages and toc pages.  See
2458 <a href="docelement.html#ENDNOTE_LEAD">ENDNOTE_LEAD</a>
2459 and
2460 <a href="docelement.html#TOC_LEAD">TOC_LEAD</a>
2461 for an explanation of how to disable this default behaviour.
2462 <p>
2463
2464 <hr width="66%" align="left">
2465 <p>
2466 <a name="DOC_QUAD">
2467         <nobr>Macro: <strong>DOC_QUAD</strong> L | R | C | J</nobr>
2468 </a>
2469 <p>
2470 <ul>
2471         <li>the arguments are the same as for
2472                 <a href="typesetting.html#QUAD">QUAD</a>
2473         <li>affects paragraphs, epigraphs and footnotes; does not
2474                 affect blockquotes
2475 </ul>
2476 <br>
2477
2478 <hr>
2479 <a href="typemacdoc.html#TOP">Next</a>&nbsp;&nbsp;
2480 <a href="color.html#TOP">Prev</a>&nbsp;&nbsp;
2481 <a href="#TOP">Top</a>&nbsp;&nbsp;
2482 <a href="toc.html">Back to Table of Contents</a>
2483 </body>
2484 </html>