o Added TOC (finally) and a nearly complete set of associated
[s-roff.git] / contrib / mom / momdoc / docprocessing.html
blobc857c4f15ca981c85e1111fc9961117c4318932f
1 <html>
2 <head>
3 <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
4 <title>Mom -- Document Processing, Introduction and Setup</title>
5 </head>
6 <body bgcolor="#dfdfdf">
8 <!====================================================================>
10 <a href="docelement.html#TOP">Next</a>&nbsp;&nbsp;
11 <a href="inlines.html#TOP">Prev</a>&nbsp;&nbsp;
12 <a href="toc.html">Back to Table of Contents</a>
14 <a name="TOP"></a>
15 <a name="DOCPROCESSING">
16 <h1 align="center"><u>DOCUMENT PROCESSING WITH MOM</u>
17 </h1>
18 </a>
20 <a href="#INTRO_MACROS_DOCPROCESSING">Introduction to document processing</a>
21 <br>
22 <a href="#DEFAULTS">Some document defaults</a>
23 <p>
24 <a href="#LEADING_NOTE">* IMPORTANT NOTE on leading/spacing and bottom margins *</a>
25 <p>
26 <ul>
27 <li><a href="#SETUP"><strong>DOCUMENT SETUP</strong></a>
28 <br>
29 <a href="#DOCPROCESSING_TUT">Tutorial -- Setting up a mom document</a>
30 <br>
31 <ul>
32 <li><a href="#REFERENCE_MACROS"><strong>The Reference Macros</strong></a>
33 <ul>
34 <li><a href="#TITLE">TITLE</a>
35 <li><a href="#SUBTITLE">SUBTITLE</a>
36 <li><a href="#AUTHOR">AUTHOR</a>
37 <li><a href="#CHAPTER">CHAPTER</a>
38 <li><a href="#DRAFT">DRAFT</a>
39 <li><a href="#REVISION">REVISION</a>
40 </ul>
41 <li><a href="#DOCSTYLE_MACROS"><strong>The Docstyle Macros</strong></a>
42 <ul>
43 <li><a href="#DOCTYPE">DOCTYPE</a>
44 <li><a href="#PRINTSTYLE">PRINTSTYLE</a>
45 <li><a href="#COPYSTYLE">COPYSTYLE</a>
46 </ul>
48 <li><a href="#STYLE_BEFORE_START"><strong>Changing type/style parameters prior to START</strong></a>
49 <ul>
50 <li><a href="#TYPE_BEFORE_START">Using typesetting macros prior to START</a>
51 <li><a href="#DOC_LEAD_ADJUST">Adjusting document leading to fill pages -- DOC_LEAD_ADJUST</a>
52 <li><a href="#DOCHEADER">Managing the document header</a>
53 <ul>
54 <li><a href="#DOCHEADER">DOCHEADER -- turning docheaders off</a>
55 <li><a href="#DOCHEADER_CONTROL">Docheader control</a>
56 </ul>
57 </ul>
59 <li><a href="#COLUMNS_INTRO"><strong>Setting documents in columns</strong></a>
60 <ul>
61 <li><a href="#COLUMNS">COLUMNS</a>
62 <li><a href="#BREAKING_COLUMNS">Breaking columns manually</a>
63 <ul>
64 <li><a href="#COL_NEXT">COL_NEXT</a>
65 <li><a href="#COL_BREAK">COL_BREAK</a>
66 </ul>
68 </ul>
70 <li><a href="#START_MACRO"><strong>Initiate document processing</strong></a>
71 <ul>
72 <li><a href="#START">START</a>
73 </ul>
75 <li><a href="#DOC_PARAM_MACROS"><strong>Changing document-wide typesetting parameters after START</strong></a>
76 <ul>
77 <li><a href="#DOC_LEFT_MARGIN">DOC_LEFT_MARGIN</a>
78 <li><a href="#DOC_RIGHT_MARGIN">DOC_RIGHT_MARGIN</a>
79 <li><a href="#DOC_LINE_LENGTH">DOC_LINE_LENGTH</a>
80 <li><a href="#DOC_FAMILY">DOC_FAMILY</a>
81 <li><a href="#DOC_PT_SIZE">DOC_PT_SIZE</a>
82 <li><a href="#DOC_LEAD">DOC_LEAD</a>
83 <li><a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
84 <li><a href="#DOC_QUAD">DOC_QUAD</a>
85 </ul>
86 <br>
87 <li><a href="docelement.html#DOCELEMENT"><strong>THE DOCUMENT ELEMENT MACROS (TAGS)</strong></a>
88 <ul>
89 <li><a href="docelement.html#DOCELEMENT_INTRO">Introduction to the document element tags</a>
90 <ul>
91 <li><a href="docelement.html#DOCELEMENT_CONTROL">Document element (tag) control macros</a>
92 <li><a href="docelement.html#CONTROL_MACRO_ARGS">Arguments to the control macros</a>
93 </ul>
94 <li><a href="docelement.html#EPIGRAPH_INTRO"><strong>Epigraphs</strong></a>
95 <ul>
96 <li><a href="docelement.html#EPIGRAPH">EPIGRAPH</a>
97 <li><a href="docelement.html#EPIGRAPH_CONTROL">Epigrah control</a>
98 </ul>
99 <li><a href="docelement.html#PP_INTRO"><strong>Paragraphs</strong></a>
100 <ul>
101 <li><a href="docelement.html#PP">PP</a>
102 <li><a href="docelement.html#PP_CONTROL">Paragraph control</a>
103 </ul>
104 <li><a href="docelement.html#HEAD_INTRO"><strong>Main heads</strong></a>
105 <ul>
106 <li><a href="docelement.html#HEAD">HEAD</a>
107 <li><a href="docelement.html#HEAD_CONTROL">Head control</a>
108 </ul>
109 <li><a href="docelement.html#SUBHEAD_INTRO"><strong>Subheads</strong></a>
110 <ul>
111 <li><a href="docelement.html#SUBHEAD">SUBHEAD</a>
112 <li><a href="docelement.html#SUBHEAD_CONTROL">Subhead control</a>
113 </ul>
114 <li><a href="docelement.html#PARAHEAD_INTRO"><strong>Paragraph heads</strong></a>
115 <ul>
116 <li><a href="docelement.html#PARAHEAD">PARAHEAD</a>
117 <li><a href="docelement.html#PARAHEAD_CONTROL">Parahead control</a>
118 </ul>
119 <li><a href="docelement.html#LINEBREAK_INTRO"><strong>Linebreaks (author linebreaks)</strong></a>
120 <ul>
121 <li><a href="docelement.html#LINEBREAK">LINEBREAK</a>
122 <li><a href="docelement.html#LINEBREAK_CONTROL">Linebreak control</a>
123 </ul>
124 <li><a href="docelement.html#QUOTE_INTRO"><strong>Quotes (line for line poetic quotes)</strong></a>
125 <ul>
126 <li><a href="docelement.html#QUOTE">QUOTE</a>
127 <li><a href="docelement.html#QUOTE_CONTROL">Quote control</a>
128 </ul>
129 <li><a href="docelement.html#BLOCKQUOTE_INTRO"><strong>Blockquotes (cited material)</strong></a>
130 <ul>
131 <li><a href="docelement.html#BLOCKQUOTE">BLOCKQUOTE</a>
132 <li><a href="docelement.html#BLOCKQUOTE_CONTROL">Blockquote control</a>
133 </ul>
134 <li><a href="docelement.html#FOOTNOTE_INTRO"><strong>Footnotes</strong></a>
135 <ul>
136 <li><a href="docelement.html#FOOTNOTE">FOOTNOTE</a>
137 <li><a href="docelement.html#FOOTNOTE_CONTROL">Footnote control</a>
138 </ul>
139 <li><a href="docelement.html#ENDNOTE_INTRO"><strong>Endnotes</strong></a>
140 <ul>
141 <li><a href="docelement.html#ENDNOTE">ENDNOTE</a>
142 <li><a href="docelement.html#ENDNOTE_CONTROL">Endnote control</a>
143 </ul>
144 <li><a href="docelement.html#FINIS_INTRO"><strong>Document termination</strong></a>
145 <ul>
146 <li><a href="docelement.html#FINIS">FINIS</a>
147 <li><a href="docelement.html#FINIS_CONTROL">Finis control</a>
148 </ul>
149 </ul>
151 <li><a href="headfootpage.html#HEADFOOTPAGE"><strong>HEADERS and FOOTERS</strong></a>
152 <br>
153 <ul>
154 <li><a href="headfootpage.html#HEADFOOTPAGE_INTRO">Introduction to headers/footers</a>
155 <li><a href="headfootpage.html#HEADFOOT_MANAGEMENT">Managing headers/footers</a>
156 <ul>
157 <li><a href="headfootpage.html#HEADERS">HEADERS</a> -- on or off
158 <li><a href="headfootpage.html#FOOTERS">FOOTERS</a> -- on or off
159 <li><a href="headfootpage.html#FOOTER_ON_FIRST_PAGE">FOOTER_ON_FIRST_PAGE</a>
160 </ul>
161 <li><a href="headfootpage.html#HEADFOOT_CONTROL">Header/footer control</a>
162 <ul>
163 <li><a href="headfootpage.html#HDRFTR_STRINGS">Header/footer strings</a>
164 <li><a href="headfootpage.html#HDRFTR_STYLE">Header/footer style</a> -- global and part-by-part
165 <li><a href="headfootpage.html#HDRFTR_VERTICAL">Header/footer placement and spacing</a>
166 <li><a href="headfootpage.html#HDRFTR_SEPARATOR">The header/footer separator rule</a>
167 </ul>
168 </ul>
169 <li><a href="headfootpage.html#PAGINATION"><strong>PAGINATION</strong></a>
170 <br>
171 <ul>
172 <li><a href="headfootpage.html#PAGINATE">PAGINATE</a> -- on or off
173 <li><a href="headfootpage.html#PAGENUMBER">PAGENUMBER</a> -- user supplied page number
174 <li><a href="headfootpage.html#PAGENUM_STYLE">PAGENUM_STYLE</a> -- digits, roman numerals, etc.
175 <li><a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a> -- attach draft/revision information to page numbers
176 <li><a href="headfootpage.html#PAGINATE_CONTROL">Pagination control</a>
177 </ul>
178 <br>
179 <li><a href="rectoverso.html#RECTOVERSO"><strong>RECTO_VERSO PRINTING and COLLATING</strong></a>
180 <br>
181 <ul>
182 <li><a href="rectoverso.html#RECTOVERSO_INTRO">Introduction to recto/verso</a>
183 <ul>
184 <li><a href="rectoverso.html#RECTO_VERSO">RECTO_VERSO</a>
185 <li><a href="rectoverso.html#SWITCH_HDRFTR">SWITCH_HEADERS</a> (also FOOTERS)
186 </ul>
187 <li><a href="rectoverso.html#COLLATE_INTRO">Introduction to collating</a>
188 <ul>
189 <li><a href="rectoverso.html#COLLATE">COLLATE</a>
190 </ul>
191 </ul>
193 <li><a href="cover.html#COVER"><strong>CREATING A COVER PAGE</strong></a>
194 <br>
195 <li><a href="letters.html#LETTERS"><strong>WRITING LETTERS</strong></a>
196 <ul>
197 <li><a href="letters.html#LETTERS_INTRO">Introduction to writing letters</a>
198 <li><a href="letters.html#TUTORIAL">Tutorial on writing letters</a>
199 <li><a href="letters.html#LETTERS_DEFAULTS">Default style for letters</a>
200 <li><a href="letters.html#LETTERS_MACROS">The letter macros</a>
201 </ul>
202 </ul>
203 </ul>
204 <hr>
206 <h2><a name="INTRO_MACROS_DOCPROCESSING"><u>Introduction to document processing</u></a></h2>
208 As explained in
209 <a href="intro.html#INTRO_DOCPROCESSING">Document processing with mom</a>,
210 document processing uses markup tags to identify document elements
211 like heads, paragraphs, and so on. The tags are, of course, macros,
212 but with sensible, readable names that make them easy to grasp and
213 easy to remember. (And don't forget: if you don't like the
214 &quot;official&quot; name of a tag -- too long, cumbersome
215 to type in, not &quot;intuitive&quot; enough -- you can change it
216 with the
217 <a href="goodies.html#ALIAS">ALIAS</a>
218 macro.)
220 In addition to the tags themselves, <strong>mom</strong> has an
221 extensive array of macros that control how they look and behave.
223 Setting up a <strong>mom</strong> doc is a simple, four-part procedure.
224 You begin by entering information about the document itself (title,
225 subtitle, author, etc.). Next, you tell <strong>mom</strong> what
226 kind of document you're creating (e.g. chapter, letter, abstract,
227 etc...) and what kind of output you want (typeset, typewrittten,
228 draft-style, etc). Thirdly, you make as many or as few changes to
229 <strong>mom</strong>'s default behaviour as you wish. Lastly, you
230 invoke the
231 <a href="#START">START</a>
232 macro. Voilà! You're ready to write.
233 <br>
234 <hr>
237 <h2><a name="DEFAULTS"><u>Some document defaults</u></a></h2>
239 As is to be expected, <strong>mom</strong> has defaults for everything.
240 If you want to know a particular default, read about it in the
241 description of the pertinent tag.
243 I fear the following may not be adequately covered in the
244 documentation. Just in case, here they are.
246 <ul>
247 <li>the paper size is 8.5x11 inches
248 <li>the left and right margins are 1-inch
249 <li>the top and bottom margins for document text are plus/minus
250 visually 1-inch
251 <li>pages are numbered; the number appears centered, at the
252 bottom, surrounded by hyphens ( e.g. -6- )
253 <li>the first page of a document begins with a
254 <a href="definitions.html#TERMS_DOCHEADER">document header</a>
255 <li>subsequent pages have
256 <a href="definitions.html#TERMS_HEADER">page headers</a>
257 with a rule underneath
258 </ul>
260 Another way to check up on document processing defaults is to have
261 a look at the macro file (om.tmac). Each macro is preceded by a
262 description that (generally) says what its default is (if it has
263 one).
264 <br>
265 <hr>
267 <a name="LEADING_NOTE">
268 <h2><u>IMPORTANT NOTE on leading/spacing and bottom margins</u></h2>
269 </a>
271 <strong>Mom</strong> takes evenly-aligned bottom margins in
272 <a href="definitions.html#TERMS_RUNNING">running text</a>
273 very seriously. Only under a very few (exceptional) circumstances
274 will she allow a bottom margin to &quot;hang&quot; (i.e. to fall
275 short).
277 In order to ensure even bottom margins, <strong>mom</strong>
278 uses the &quot;base&quot; document
279 <a href="definitions.html#TERMS_LEADING">leading</a>
280 in effect <em>at the start of each page</em> (i.e. the leading used
281 in paragraphs) to calculate the spacing of every document element.
282 Prior to invoking
283 <a href="#START">START</a>,
284 this is done with the
285 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macro</a>
286 <a href="typesetting.html#LEADING">LS</a>,
287 afterwards with the document
288 <a href="definitions.html#TERMS_CONTROLMACRO">control macro</a>
289 <a href="#DOC_LEAD">DOC_LEAD</a>.
291 Because <strong>mom</strong> relies so heavily on the base document
292 leading, any change to the leading or spacing on a page will almost
293 certainly have undesirable consequences on that page's bottom margin
294 unless the change is fully compensated for elsewhere on the page.
296 In other words, if you add a few points of space somewhere on a page,
297 you must subtract the same number of points somewhere else on that
298 same page, and vice versa.
300 If it's a question of adding or subtracting full line spaces between
301 or within document elements, you can do so by using the &quot;v&quot;
302 <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>
303 with whatever spacing macro you choose --
304 <a href="typesetting.html#ALD">ALD</a>,
305 <a href="typesetting.html#RLD">RLD</a>,
306 <a href="typesetting.html#SPACE">SPACE</a>
307 -- and <strong>mom</strong> won't object. &quot;v&quot; means
308 &quot;the current leading&quot;, so she isn't confused by it. And
309 since &quot;v&quot; accepts decimal fractions, you can add/subtract
310 half linespaces and quarter linespaces with &quot;v&quot; as well,
311 <em>provided you compensate for the fractional linespace somewhere
312 else on the page</em>.
313 <br>
314 <hr>
316 <a name="SETUP"><h2><u>Document setup</u></h2></a>
318 <a name="DOCPROCESSING_TUT">
319 <h3><u>Tutorial -- Setting up a mom document</u></h3>
320 </a>
322 There are four &quot;parts&quot; to setting up a <strong>mom</strong>
323 doc (three, actually, with one optional). Before we proceed, though,
324 be reassured that something as simple as
326 <pre>
327 .TITLE "By the Shores of Lake Attica"
328 .AUTHOR "Rosemary Winspeare"
329 .PRINTSTYLE TYPESET
330 .START
331 </pre>
333 produces a beautifully typeset 8.5x11 document, with a
334 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
335 at the top of page 1,
336 <a href="definitions.html#TERMS_HEADER">page headers</a>
337 with the title and author on subsequent
338 pages, and page numbers at the bottom of each page. In the course
339 of the document, heads, subheads, citations, quotes, epigraphs,
340 and so on, all come out looking neat, trim, and professional.
342 For the purposes of this tutorial, we're going to set up a short
343 story -- <em>My Pulitzer Winner</em> by Joe Blow. Thankfully,
344 we don't have to look at story itself, just the setup.
345 Joe wants the document
347 <ul>
348 <li>to be draft 7, revision 39;
349 <li>to use the &quot;default&quot; style of document formatting:
350 <li>to print as draft-style output (instead of &quot;final&quot; copy output);
351 <li>to be typeset, in Helvetica, 12 on 14,
352 <a href="definitions.html#TERMS_RAG">rag-right</a>;
353 <li>to have <a href="definitions.html#TERMS_FOOTER">footers</a>
354 instead of
355 <a href="definitions.html#TERMS_HEADER">headers</a>;
356 <li>to use a single asterisk for
357 <a href="definitions.html#TERMS_LINEBREAK">author linebreaks</a>.
358 </ul>
360 Joe Blow has no taste in typography. His draft won't look pretty,
361 but this is, after all, a tutorial; we're after examples, not beauty.
362 <h3><u>Step 1</u></h3>
364 The first step in setting up any document is giving <strong>mom</strong>
365 some reference information. The reference macros are:
367 <ul>
368 <li>TITLE
369 <li>SUBTITLE
370 <li>AUTHOR
371 <li>CHAPTER -- the chapter number
372 <li>DRAFT -- the draft number
373 <li>REVISION -- the revision number
374 </ul>
376 You can use as many or as few as you wish, although at a minimum,
377 you'll probably fill in <strong>TITLE</strong> (unless the document's
378 a letter) and <strong>AUTHOR</strong>. Order doesn't matter.
379 You can separate the
380 <a href="definitions.html#TERMS_ARGUMENTS">arguments</a>
381 from the macros by any number of spaces. The following are
382 what you'd need to start Joe Blow's story.
384 <pre>
385 .TITLE "My Pulitzer Winner"
386 .AUTHOR "Joe Blow"
387 .DRAFT 7
388 .REVISION 39
389 </pre>
391 <h3><u>Step 2</u></h3>
393 Once you've given <strong>mom</strong> the reference information she
394 needs, you tell her how you want your document formatted. What kind
395 of document is it? Should it be typeset or typewritten? Is this
396 a &quot;final&quot; copy (for the world to see) or just a draft?
397 <strong>Mom</strong> calls the macros that answer these questions
398 &quot;the docstyle macros.&quot; They are:
400 <ul>
401 <li>DOCTYPE -- the type of document (default, chapter, user-defined, letter)
402 <li>PRINTSTYLE -- typeset or typewritten
403 <li>COPYSTYLE -- draft or final copy
404 </ul>
406 <strong>Mom</strong> has defaults for <strong>DOCTYPE</strong>
407 and <strong>COPYSTYLE</strong>; if they're what you want, you
408 don't need to include them here. However, <strong>PRINTSTYLE</strong>
409 has no default and MUST be present in every formatted document.
410 If you omit it, <strong>mom</strong> won't process the document AND
411 she'll complain (both to stderr and as a single printed sheet with
412 a warning). Moms -- they can be so annoying sometimes. &lt;sigh&gt;
414 Adding to what we already have, the next bit of setup for Joe
415 Blow's story looks like this:
417 <pre>
418 .TITLE "My Pulitzer Winner"
419 .AUTHOR "Joe Blow"
420 .DRAFT 7
421 .REVISION 39
423 .DOCTYPE DEFAULT \"Superfluous; mom uses DOCTYPE DEFAULT by default
424 .PRINTSTYLE TYPESET
425 .COPYSTYLE DRAFT
426 </pre>
428 Notice the use of the
429 <a href="definitions.html#TERMS_COMMENTLINES">comment line</a>
430 ( \# ), a handy way to keep groups of macros visually separated
431 for easy reading in a text editor.
433 <h3><u>Step 3</u></h3>
435 This step -- completely optional -- is where you, the user, take
436 charge. <strong>Mom</strong> has defaults for <em>everything</em>,
437 but who's ever satisfied with defaults? Use any of the <a
438 href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
439 here to change <strong>mom</strong>'s document defaults (paper
440 size, margins, family, point size, line space, rag, etc), or
441 any of the document processing macros that set/change/control
442 the appearance of document elements. Think of this as the
443 &quot;style-sheet &quot; section of a document.
445 Joe Blow wants his story printed in Helvetica, 12 on 14, rag
446 right, with
447 <a href="definitions.html#TERMS_FOOTER">page footers</a>
448 instead of
449 <a href="definitions.html#TERMS_HEADER">page headers</a>
450 and a single asterisk for the
451 <a href="definitions.html#TERMS_LINEBREAK">linebreak</a>
452 character. None of these requirements conforms
453 to <strong>mom</strong>'s defaults for the chosen
454 <strong>PRINTSTYLE</strong> (TYPESET), so we change them here.
455 The setup for Joe Blow's story now looks like this:
457 <pre>
458 .TITLE "My Pulitzer Winner"
459 .AUTHOR "Joe Blow"
460 .DRAFT 7
461 .REVISION 39
463 .DOCTYPE DEFAULT
464 .PRINTSTYLE TYPESET
465 .COPYSTYLE DRAFT
467 .FAMILY H
468 .PT_SIZE 12
469 .LS 14
470 .QUAD LEFT \"ie. rag right
471 .FOOTERS
472 .LINEBREAK_CHAR *
473 </pre>
475 <h3><u>Step 4</u></h3>
476 The final step in setting up a document is telling <strong>mom</strong>
477 to start document processing. It's a no-brainer, just the single macro
478 <strong>START</strong>. Other than <strong>PRINTSTYLE</strong>, it's
479 the only macro required for document processing (although
480 I can't guarantee you'll like the results of using just the two).
482 Here's the complete setup for <em>My Pulitzer Winner</em>:
484 <pre>
485 .TITLE "My Pulitzer Winner"
486 .AUTHOR "Joe Blow"
487 .DRAFT 7
488 .REVISION 39
490 .DOCTYPE DEFAULT
491 .PRINTSTYLE TYPESET
492 .COPYSTYLE DRAFT
494 .FAMILY H
495 .PT_SIZE 12
496 .LS 14
497 .QUAD LEFT \"ie. rag right
498 .FOOTERS
499 .LINEBREAK_CHAR *
501 .START
502 </pre>
504 As pointed out earlier, Joe Blow is no typographer. Given that all he
505 needs is a printed draft of his work, a simpler setup would have been:
507 <pre>
508 .TITLE "My Pulitzer Winner"
509 .AUTHOR "Joe Blow"
510 .DRAFT 7
511 .REVISION 39
513 .PRINTSTYLE TYPEWRITE
514 .COPYSTYLE DRAFT
516 .START
517 </pre>
519 <kbd>.PRINTSTYLE TYPEWRITE</kbd>, above, means that Joe's work
520 will come out &quot;typewritten, double-spaced&quot;, making the
521 blue-pencilling he (or someone else) is sure to do much
522 easier (which is why many publishers and agents still insist on
523 typewritten, double-spaced copy).
525 When J. Blow stops re-writing and decides to print off a final,
526 typeset copy of his work for the world to see, he need only
527 make two changes to the (simplified) setup:
529 <pre>
530 .TITLE "My Pulitzer Winner"
531 .AUTHOR "Joe Blow"
532 .DRAFT 7
533 .REVISION 39
535 .PRINTSTYLE TYPESET \"first change
536 .COPYSTYLE FINAL \"second change
538 .START
539 </pre>
541 In the above, <kbd>.DRAFT 7, .REVISION 39,</kbd> and <kbd>.COPYSTYLE
542 FINAL</kbd> are actually superfluous. The draft and revision numbers
543 aren't used when <strong>COPYSTYLE</strong> is <strong>FINAL</strong>,
544 and <strong>COPYSTYLE FINAL</strong> is <strong>mom</strong>'s
545 default unless you tell her otherwise. BUT... to judge from the
546 number of drafts already, J. Blow may very well decide his
547 &quot;final&quot; version still isn't up to snuff. Hence, he might
548 as well leave in the superfluous macros. That way, when draft 7,
549 rev. 62 becomes draft 8, rev. 1, he'll be ready to tackle his Pulitzer
550 winner again.
551 <br>
552 <hr>
554 <!========================================================================>
556 <a name="REFERENCE_MACROS">
557 <h2><u>The Reference Macros</u></h2>
558 </a>
560 The reference macros give <strong>mom</strong> the information
561 she needs to generate
562 <a href="definitions.html#TERMS_DOCHEADER">docheaders</a>
564 <a href="definitions.html#TERMS_HEADER">page headers</a>. They
565 must go at the top of any file that uses <strong>mom</strong>'s
566 document processing macros.
568 <a name="INDEX_REFERENCE">
569 <h3><u>Reference macros list</u></h3>
570 </a>
572 <ul>
573 <li><a href="#TITLE">TITLE</a>
574 <li><a href="#SUBTITLE">SUBTITLE</a>
575 <li><a href="#AUTHOR">AUTHOR</a>
576 <li><a href="#CHAPTER">CHAPTER</a>
577 <li><a href="#DRAFT">DRAFT</a>
578 <li><a href="#REVISION">REVISION</a>
579 </ul>
581 <!---TITLE--->
583 <hr width="66%" align="left">
585 <a name="TITLE"></a>
586 Macro: <strong>TITLE</strong> <var>&quot;&lt;title&gt;&quot;</var>
587 <br>
588 <em>*Argument must be enclosed in double-quotes</em>
591 The title string can be caps or caps/lower-case; it's up to you.
593 <a href="#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
594 the title will appear in the
595 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
596 exactly as you typed it. However, <strong>mom</strong> converts
597 the title to all caps in
598 <a href="definitions.html#TERMS_HEADER">page headers</a>
599 unless you turn that feature off (see
600 <a href="headfootpage.html#_CAPS">HEADER_&lt;POSITION&gt;_CAPS</a>). In
601 <a href="#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>,
602 the title always gets converted to caps.
604 <strong>NOTE:</strong> If your
605 <a href="#DOCTYPE">DOCTYPE</a>
606 is <strong>CHAPTER</strong>, <strong>TITLE</strong> should be the
607 title of the opus, not &quot;CHAPTER whatever&quot;.
608 <br>
610 <!---DOCTITLE--->
612 <hr width="66%" align="left">
614 <a name="DOCTITLE"></a>
615 Macro: <strong>DOCTITLE</strong> <var>&quot;&lt;overall document title&gt;&quot;</var>
616 <br>
617 <em>*Argument must be enclosed in double-quotes</em>
620 When you're creating a single document, say, an essay or a short
621 story, you have no need of this macro.
622 <a href="#TITLE">TITLE</a>
623 takes care of all your title needs.
625 However if you're
626 <a href="rectoverso.html#COLLATE">collating</a>
627 a bunch of documents together, say, to print out a report containing
628 many articles with different titles, or a book of short stories, you
629 need <strong>DOCTITLE</strong>.
631 <strong>DOCTITLE</strong> tells <strong>mom</strong> the title
632 of the complete document (as opposed to the title of each article
633 or entitled section).
635 The doctitle string can be caps or caps/lower-case; it's up to you.
637 <a href="#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
638 by default, the doctitle appears in the rightmost position of
639 <a href="definitions.html#TERMS_HEADER">page headers</a>,
640 all in caps unless you turn that feature off (see
641 <a href="headfootpage.html#_CAPS">HEADER_&lt;POSITION&gt;_CAPS</a>). In
642 <a href="#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>,
643 the doctitle always gets converted to caps.
645 <strong>NOTE:</strong> If your
646 <a href="#DOCTYPE">DOCTYPE</a>
647 is <strong>CHAPTER</strong>, you don't need
648 <strong>DOCTITLE</strong>. <strong>TITLE</strong> takes care of
649 everything.
650 <br>
651 <!---SUBTITLE--->
653 <hr width="66%" align="left">
655 <a name="SUBTITLE"></a>
656 Macro: <strong>SUBTITLE</strong> <var>&quot;&lt;subtitle&gt;&quot;</var>
657 <br>
658 <em>*Argument must be enclosed in double-quotes</em>
661 The subtitle string can be caps or caps/lower-case. Since a
662 document's subtitle appears only in the
663 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>,
664 and the title is most likely in caps, I recommend caps/lower case.
665 <br>
667 <!---AUTHOR--->
669 <hr width="66%" align="left">
671 <a name="AUTHOR"></a>
672 Macro: <strong>AUTHOR</strong> <var>&quot;&lt;author string&gt;&quot; [ &quot;&lt;author2 string&gt;&quot; &quot;&lt;author3 string&gt;&quot; ... ]</var>
673 <br>
674 <em>*Multiple arguments must be enclosed in double-quotes</em>
677 Each author string can hold as many names as you like, e.g.
679 <pre>
680 .AUTHOR "Joe Blow"
682 .AUTHOR "Joe Blow, Jane Doe" "John Hancock"
683 </pre>
685 <strong>Mom</strong> prints each string that's enclosed in
686 double-quotes on a separate line in the
687 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>,
688 however only the first string appears in
689 <a href="definitions.html#TERMS_HEADER">page headers</a>.
690 If you want <strong>mom</strong> to put something else in the author
691 part of page headers (say, just the last names of a document's two
692 authors), redefine the appropriate part of the header (see
693 <a href="headfootpage.html#HEADER_CONTROL">header/footer control</a>).
695 The strings can be caps or caps/lower-case. I recommend caps/lower
696 case.
697 <br>
699 <!---CHAPTER--->
701 <hr width="66%" align="left">
703 <a name="CHAPTER"></a>
704 Macro: <strong>CHAPTER</strong> <var>&lt;chapter number&gt;</var>
707 The chapter number can be in any form you like -- a digit, a roman
708 numeral, a word. If you choose
709 <a href="#DOCTYPE">DOCTYPE CHAPTER</a>,
710 <strong>mom</strong> prints whatever argument you pass
711 <strong>CHAPTER</strong> beside the word &quot;Chapter&quot; as a
712 single line
713 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>.
714 She also puts the same thing in the middle of
715 <a href="definitions.html#TERMS_HEADER">page headers</a>.
717 If you're not using <strong>DOCTYPE CHAPTER</strong>, the macro serves
718 no purpose and <strong>mom</strong> ignores it.
720 <a name="CHAPTER_STRING"><strong>CHAPTER_STRING<strong></a>
722 If you're not writing in English, you can ask <strong>mom</strong>
723 to use the word for chapter in your own language by telling
724 her what it is with the <strong>CHAPTER_STRING</strong> macro,
725 like this:
727 <pre>
728 .CHAPTER_STRING "Chapître"
729 </pre>
731 You can also use <strong>CHAPTER_STRING</strong> if you want
732 &quot;CHAPTER&quot; instead of &quot;Chapter&quot; in the doc- and
733 page-headers.
734 <br>
736 <!---CHAPTER_TITLE--->
738 <hr width="66%" align="left">
740 <a name="CHAPTER_TITLE"></a>
741 Macro: <strong>CHAPTER_TITLE</strong> <var>&quot;&lt;chapter title&gt;&quot;</var>
744 If, either in addition to or instead of &quot;Chapter #&quot; appearing
745 at the top of chapters, you want your chapter to have a title, use
746 <strong>CHAPTER_TITLE</strong> with your title enclosed in
747 double-quotes, like this:
749 <pre>
750 .CHAPTER_TITLE "The DMCA Nazis"
751 </pre>
753 If you've used
754 <a href="#CHAPTER">CHAPTER</a> to give the chapter a number,
755 &quot;Chapter #&quot; and the title will appear at the top of the
756 chapter, like this:
758 <pre>
759 Chapter 1
760 The DMCA Nazis
761 </pre>
763 In such a case, by default, only the chapter's title will appear in the
764 page headers, not &quot;Chapter #&quot;.
766 If you omit <strong>CHAPTER</strong> when setting up your reference
767 macros, only the title will appear, both at the top of page one and in
768 subsequent page headers.
769 <br>
771 <!---DRAFT--->
773 <hr width="66%" align="left">
775 <a name="DRAFT"></a>
776 Macro: <strong>DRAFT</strong> <var>&lt;draft #&gt;</var>
779 <strong>DRAFT</strong> only gets used with
780 <a href="#COPYSTYLE">COPYSTYLE DRAFT</a>.
781 If the <strong>COPYSTYLE</strong> is <strong>FINAL</strong> (the
782 default), <strong>mom</strong> ignores <strong>DRAFT</strong>.
783 <strong>DRAFT</strong> only accepts a
784 <a href="definitions.html#TERMS_NUMERICARGUMENT">numeric argument</a>.
786 <strong>Mom</strong> prints the draft number beside the word
787 &quot;Draft&quot; in the middle part of
788 <a href="definitions.html#TERMS_HEADER">page headers</a>.
790 <a name="DRAFT_STRING"><strong>DRAFT STRING<strong></a>
792 If you're not writing in English, you can ask <strong>mom</strong>
793 to use the word for draft in your own language by telling
794 her what it is with the <strong>DRAFT_STRING</strong> macro,
795 like this:
797 <pre>
798 .DRAFT_STRING "Jet"
799 </pre>
801 <!---REVISION--->
803 <hr width="66%" align="left">
805 <a name="REVISION"></a>
806 Macro: <strong>REVISION</strong> <var>&lt;revision #&gt;</var>
809 <strong>REVISION</strong> only gets used with
810 <a href="#COPYSTYLE">COPYSTYLE DRAFT</a>.
811 If the <strong>COPYSTYLE</strong> is <strong>FINAL</strong>
812 (the default), <strong>mom</strong> ignores the
813 <strong>REVISION</strong> macro. <strong>REVISION</strong> only
814 accepts a
815 <a href="definitions.html#TERMS_NUMERICARGUMENT">numeric argument</a>.
817 <strong>Mom</strong> prints the revision number beside the shortform
818 &quot;Rev.&quot; in the middle part of
819 <a href="definitions.html#TERMS_HEADER">page headers</a>.
821 <a name="REVISION_STRING"><strong>REVISION STRING</strong></a>
823 If you're not writing in English, you can ask <strong>mom</strong>
824 to use the word for revision, or a shortform therof in your own language
825 by telling her what it is with the <strong>REVISION_STRING</strong>
826 macro, like this:
828 <pre>
829 .REVISION_STRING "Rév."
830 </pre>
831 <hr>
833 <!========================================================================>
835 <a name="DOCSTYLE_MACROS">
836 <h2><u>The Docstyle Macros</u></h2>
837 </a>
839 The docstyle macros tell <strong>mom</strong> what type of document you're
840 writing, whether you want the output typeset or
841 &quot;typewritten&quot;, and whether you want a draft copy (with
842 draft and revision information in the headers) or a final copy.
844 <a name="INDEX_DOCSTYLE">
845 <h3><u>Docstyle macros list</u></h3>
846 </a>
848 <ul>
849 <li><a href="#DOCTYPE">DOCTYPE</a>
850 <li><a href="#PRINTSTYLE">PRINTSTYLE</a>
851 <ul>
852 <li><a href="#TYPESET_DEFAULTS">Defaults for PRINTSTYLE TYPESET</a>
853 <li><a href="#TYPEWRITE_DEFAULTS">Defaults for PRINTSTYLE TYPEWRITE</a>
854 <ul>
855 <li><a href="#TYPEWRITE_CONTROL">TYPEWRITE control macros</a>
856 </ul>
857 </ul>
858 <li><a href="#COPYSTYLE">COPYSTYLE</a>
859 </ul>
861 <!---DOCTYPE--->
863 <hr width="66%" align="left">
865 <a name="DOCTYPE"></a>
866 Macro: <strong>DOCTYPE</strong> <var>DEFAULT | CHAPTER | NAMED &quot;&lt;name&gt;&quot; | LETTER</var>
868 The arguments <strong>DEFAULT, CHAPTER</strong> and
869 <strong>NAMED</strong> tell <strong>mom</strong> what to put
870 in the
871 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
873 <a href="definitions.html#TERMS_HEADER">page headers</a>.
874 <strong>LETTER</strong> tells her that you want to write a
875 lettter.
877 <strong>Mom</strong>'s default <strong>DOCTYPE</strong> is
878 <strong>DEFAULT</strong>. If that's what you want, you don't
879 have to give a <strong>DOCTYPE</strong> command.
881 <strong>DEFAULT</strong> prints a
882 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
883 containing the title, subtitle and author information given to the
884 <a href="#REFERENCE_MACROS">reference macros</a>,
885 and page headers with the author and title.
886 (See
887 <a href="headfootpage.html#HEADER_STYLE">Default specs for headers</a>
888 for how <strong>mom</strong>'s outputs each part of the page header.)
890 <strong>CHAPTER</strong> prints &quot;Chapter #&quot; in place of a
891 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
892 (# is what you gave to the
893 <a href="#REFERENCE_MACROS">reference macro</a>
894 <a href="#CHAPTER">CHAPTER</a>).
895 If you give the chapter a title with
896 <a href="#CHAPTER_TITLE">CHAPTER TITLE</a>,
897 <strong>mom</strong> prints &quot;Chapter #&quot; and the title
898 underneath. If you omit the
899 <a href="#CHAPTER">CHAPTER</a>
900 reference macro but supply a
901 <a href="#CHAPTER_TITLE">CHAPTER_TITLE</a>,
902 <strong>mom</strong> prints only the chapter title. <em>(*For
903 backward compatability with pre-1.1.5 versions of</em>
904 <strong>mom</strong><em>, you can also supply a chapter title by
905 ommitting the</em> <strong>CHAPTER</strong> <em>reference macro and
906 supplying a chapter title with
907 <a href="#CHAPTER_STRING">CHAPTER_STRING</a>.
909 The page headers in <strong>DOCTYPE CHAPTER</a> contain the author,
910 the title of the book (which you gave with
911 <a href="#TITLE">TITLE</a>),
912 and &quot;Chapter #&quot; (or the chapter title). See
913 <a href="headfootpage.html#HEADER_STYLE">Default Specs for Headers</a>
914 for <strong>mom</strong>'s default type parameters for each part of
915 the page header.
917 <strong>NAMED</strong> takes an additional argument: a name
918 for this particular kind of document (e.g. outline, synopsis,
919 abstract, memorandum), enclosed in double-quotes.
920 <strong>NAMED</strong> is identical to <strong>DEFAULT</strong>
921 except that <strong>mom</strong> prints the argument to
922 <strong>NAMED</strong> beneath the
923 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>,
924 as well as in page headers.
925 (See
926 <a href="headfootpage.html#HEADER_STYLE">Default specs for headers</a>
927 for how <strong>mom</strong>'s outputs each part of the page header.)
929 <strong>LETTER</strong> tells mom you're writing a letter. See
930 the section
931 <a href="letters.html#INTRO">Writing Letters</a>
932 for instructions on using <strong>mom</strong> to format letters.
933 <br>
935 <!---PRINTSTYLE--->
937 <hr width="66%" align="left">
939 <a name="PRINTSTYLE"></a>
940 Macro: <strong>PRINTSTYLE</strong> <var>TYPESET | TYPEWRITE [ SINGLESPACE ]</var>
941 <br>
942 <em>*Required for document processing.</em>
943 <br>
944 <em>*Must come before any changes to default document style</em>
947 <strong>PRINTSTYLE</strong> tells <strong>mom</strong> whether to typeset
948 a document, or to print it out &quot;typewritten, doubled-spaced&quot;.
950 <strong>THIS MACRO MAY NOT BE OMITTED.</strong> In order for
951 document processing to take place, <strong>mom</strong> requires
952 a <strong>PRINTSTYLE</strong>. If you don't give one,
953 <strong>mom</strong> will warn you on stderr and print a single
954 page with a nasty message. Furthermore, <strong>PRINTSTYLE</strong>
955 must come before any changes to <strong>mom</strong>'s default
956 typestyle parameters. (This applies primarily to
957 <strong>PRINTSTYLE TYPESET</strong>.
959 <strong>TYPESET</strong>, as the argument implies, typesets documents
960 (by default in Times Roman; see
961 <a href="#TYPESET_DEFAULTS">TYPESET defaults</a>).
962 You have full access to all the
963 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
964 as well as the
965 <a href="definitions.html#STYLE_CONTROL">style control macros</a>
966 of document processing.
968 As mentioned in the above paragraph, <strong>PRINTSTYLE
969 TYPESET</strong> must come before any changes to
970 <strong>mom</strong>'s default typographic settings. For example,
972 <pre>
973 .LS 14
974 .PRINTSTYLE TYPESET
975 </pre>
977 will not changes <strong>mom</strong>'s default document leading
978 of 16 points to 14 points, whereas
980 <pre>
981 .PRINTSTYLE TYPESET
982 .LS 14
983 </pre>
985 will.
987 With <strong>TYPEWRITE</strong>, <strong>mom</strong> does her best
988 to reproduce the look and feel of typewritten, double-spaced copy (see
989 <a href="#TYPEWRITE_DEFAULTS">TYPEWRITE defaults</a>).
990 <a href="docelement.html#DOCELEMENT_CONTROL">Control macros</a>
992 <a href="typesetting.html#INTRO_MACROS_TYPESETTING">typesetting macros</a>
993 that alter family, font, point size, and
994 <a href="definitions.html#TERMS_LEADING">leading</a>
995 are (mostly) ignored. An important exception is
996 <a href="headfootpage.html#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>
997 (and, by extension, <strong>FOOTER_SIZE</strong>), which allows
998 you to reduce the point size of headers/footers should they become
999 too crowded. Most of <strong>mom</strong>'s inlines affecting the
1000 appearance of type are also ignored (<strong>\*S</strong> is an
1001 exception; there may be a few others).
1003 In short, <strong>TYPEWRITE</strong> never produces effects other than
1004 those available on a typewriter. Don't be fooled by how brainless
1005 this sounds; <strong>mom</strong> is remarkably sophisticated when
1006 it comes to conveying the typographic sense of a document within the
1007 confines of <strong>TYPEWRITE</strong>.
1009 The primary uses of <strong>TYPEWRITE</strong> are: outputting hard
1010 copy drafts of your work (for editing), and producing documents
1011 for submission to publishers and agents who (wisely) insist on
1012 typewritten, double-spaced copy. To get a nicely typeset version of
1013 work that's in the submission phase of its life (say, to show fellow
1014 writers for critiquing), simply change <strong>TYPEWRITE</strong>
1015 to <strong>TYPESET</strong> and print out a copy.
1017 If, for some reason, you would prefer the output of
1018 <strong>TYPEWRITE</strong> single-spaced, pass <strong>PRINTSTYLE
1019 TYPEWRITE</strong> the optional argument, <strong>SINGLESPACE</strong>.
1021 If you absolutely must have a leading other than typewriter double-
1022 or singlespaced, the only way to get it is with the
1023 <a href="#DOC_LEAD">DOC_LEAD</a>
1024 macro, and then ONLY if <strong>DOC_LEAD</strong> is set
1025 <strong>before</strong> you invoke the <strong>START</strong>
1026 macro.
1028 <a name="TYPESET_DEFAULTS"><h3><u>TYPESET defaults</u></h3></a>
1029 <pre>
1030 Family = Times Roman
1031 Point size = 12.5
1032 Paragraph leading = 16 points, adjusted
1033 Fill mode = justified
1034 Hyphenation = enabled
1035 max. lines = 2
1036 margin = 36 points
1037 interword adjustment = 1 point
1038 Kerning = enabled
1039 Ligatures = enabled
1040 Smartquotes = enabled
1041 Word space = groff default
1042 Sentence space = 0
1043 </pre>
1045 <a name="TYPEWRITE_DEFAULTS"><h3><u>TYPEWRITE defaults</u></h3></a>
1046 <pre>
1047 Family = Courier
1048 Italics = underlined
1049 Point size = 12
1050 Paragraph leading = 24 points, adjusted; 12 points for SINGLESPACE
1051 Fill mode = left
1052 Hyphenation = disabled
1053 Kerning = disabled
1054 Ligatures = disabled
1055 Smartquotes = disabled
1056 Word space = groff default
1057 Sentence space = groff default
1058 Columns = ignored
1059 </pre>
1061 <a name="TYPEWRITE_CONTROL"><h3><u>PRINTSTYLE TYPEWRITE control macros</u></h3></a>
1063 In <strong>PRINTSTYLE TYPEWRITE</strong>, <strong>mom</strong>,
1064 by default, underlines anything that looks like italics. This
1065 includes the
1066 <a href="typesetting.html#SLANT_INLINE">\*[SLANT]</a>
1067 <a href="definitions.html#TERMS_INLINES">inline escape</a>
1068 for pseudo-italics.
1070 If you'd prefer that <strong>mom</strong> were
1071 less bloody-minded about pretending to be a typewriter (i.e.
1072 you'd like italics and pseudo-italics to come out as italics),
1073 use the control macros <strong>.ITALIC_MEANS_ITALIC</strong> and
1074 <strong>.SLANT_MEANS_SLANT</strong>. Neither requires an
1075 argument.
1077 Although it's unlikely, should you wish to reverse the sense of
1078 these macros in the midst of a document,
1079 <strong>.UNDERLINE_ITALIC</strong> and
1080 <strong>.UNDERLINE_SLANT</strong> restore underlining of
1081 italics and pseudo-italics.
1083 Additionally, by default, <strong>mom</strong> underlines
1084 <a href="definitions.html#TERMS_QUOTES">quotes</a>
1085 (but not
1086 <a href="definitions.html#TERMS_BLOCKQUOTES">blockquotes</a>)
1087 in <strong>PRINTSTYLE TYPEWRITE</strong>.
1088 If you don't like this behaviour, turn it off with
1090 <pre>
1091 .UNDERLINE_QUOTES OFF
1092 </pre>
1094 To turn underlining of quotes back on, use
1095 <strong>UNDERLINE_QUOTES</strong> without an argument.
1097 While most of the
1098 <a href="docelement.html#DOCELEMENT_CONTROL">control macros</a>
1099 have no effect on <strong>PRINTSTYLE TYPEWRITE</strong>, there
1100 is an important exception:
1101 <a href="headfootpage.html#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>
1102 (and by extension, <strong>FOOTER_SIZE</strong>). This is
1103 particularly useful for reducing the point size of
1104 headers/footers should they become crowded (quite likely to
1105 happen if the title of your document is long and your
1106 <a href="#COPYSTYLE">COPYSTYLE</a>
1107 is <strong>DRAFT</strong>).
1108 <br>
1110 <!---COPYSTYLE--->
1112 <hr width="66%" align="left">
1114 <a name="COPYSTYLE"></a>
1115 Macro: <strong>COPYSTYLE</strong> <var>DRAFT | FINAL</var>
1118 <strong>Mom</strong>'s default <strong>COPYSTYLE</strong> is
1119 <strong>FINAL</strong>, so you don't have to use this macro unless
1120 you want to.
1122 <strong>COPYSTYLE DRAFT</strong> exhibits the following behaviour:
1123 <br>
1124 <ol>
1125 <li>documents start on page 1, whether or not you
1126 request a different starting page number with
1127 <a href="headfootpage.html#PAGENUMBER">PAGENUMBER</a>
1128 <li>page numbers are set in lower case roman numerals
1129 <li>the draft number supplied by
1130 <a href="#DRAFT">DRAFT</a>
1131 and a revision number, if supplied with
1132 <a href="#REVISION">REVISION</a>
1133 (see
1134 <a href="#REFERENCE_MACROS">reference macros</a>),
1135 appear in the center part of
1136 <a href="definitions.html#TERMS_HEADER">page headers</a>
1137 (or footers, depending on which you'ves selected) along with
1138 any other information that normally appears there.
1139 </ol>
1141 <strong>IMPORTANT:</strong> If you define your own center part for page
1142 headers with
1143 <a href="headfootpage.html#HDRFTR_CENTER">HEADER_CENTER</a>,
1144 no draft and/or revision number will appear there. If you want draft
1145 and revision information in this circumstance, use
1146 <a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a>.
1148 <strong>COPYSTYLE FINAL</strong> differs from <strong>DRAFT</strong> in that:
1149 <br>
1150 <ol>
1151 <li>it respects the starting page number you give the document
1152 <li>page numbers are set in normal (arabic) digits
1153 <li>no draft or revision number appears in the page headers
1154 </ol>
1156 <strong>NOTE:</strong> The center part of page headers can get crowded,
1157 especially with
1158 <a href="docprocessing.html#DOCTYPE">DOCTYPE CHAPTER</a>
1160 <a href="docprocessing.html#DOCTYPE">DOCTYPE NAMED</a>,
1161 when the <strong>COPYSTYLE</strong> is <strong>DRAFT</strong>.
1162 Three mechanisms are available to overcome this problem. One is to
1163 reduce the overall size of headers (with
1164 <a href="headfootpage.html#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>).
1165 Another, which only works with
1166 <a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
1167 is to reduce the size of the header's centre part only (with
1168 <a href="headfootpage.html#_SIZE">HEADER_CENTER_SIZE</a>).
1169 And finally, you can elect to have the draft/revsion information
1170 attached to page numbers instead of having it appear in the center
1171 of page headers (see
1172 <a href="headfootpage.html#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a>).
1173 <br>
1174 <hr>
1176 <!========================================================================>
1178 <a name="STYLE_BEFORE_START"><h2><u>Changing type/style parameters prior to START</u></h2></a>
1180 In the third (optional) part of setting up a document (see
1181 <a href="#DOCPROCESSING_TUT">Tutorial -- setting up a mom document</a>),
1182 you can use the
1183 <a href="typsetting.html">typesetting macros</a>
1184 to change <strong>mom</strong>'s document-wide defaults for margins,
1185 line length, family, base point size,
1186 <a href="definitions.html#TERMS_LEADING">leading</a>,
1187 and justification style.
1189 Two additional style concerns have to be addressed here (i.e. in
1190 macros before
1191 <a href="#START">START</a>):
1192 changes to the
1193 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>,
1194 and whether you want you want the document's nominal leading
1195 adjusted to fill pages fully to the bottom margin.
1197 <ul>
1198 <li><a href="#TYPE_BEFORE_START">Using typesetting macros prior to START</a>
1200 <li><a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
1201 -- adjusting linespacing for equal, accurate bottom margins
1202 <li><a href="#DOCHEADER">DOCHEADER</a>
1203 -- turning the docheader off
1204 <ul>
1205 <li><a href="#DOCHEADER_CONTROL">Docheader control</a>
1206 </ul>
1207 </ul>
1209 <hr width="66%" align="left">
1210 <a name="TYPE_BEFORE_START"><h2><u>Using the typesetting macros prior to START</u></h2></a>
1212 From time to time (or maybe frequently), you'll want the overall
1213 look of a document to differ from <strong>mom</strong>'s defaults.
1214 Perhaps you'd like her to use a different
1215 <a href="definitions.html#TERMS_FAMILY">family</a>,
1216 or a different overall
1217 <a href="definitions.html#TERMS_LEADING">leading</a>,
1218 or have different left and/or right page margins.
1220 To accomplish such alterations, use the appropriate
1221 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
1222 (listed below) prior to
1223 <a href="#START">START</a>.
1224 Do <strong>NOT</strong> use the macros listed in
1225 <a href="#DOC_PARAM_MACROS">Changing document-wide typesetting parameters after START</a>
1226 prior to <strong>START</strong>; they are exclusively for use afterwards.
1228 When used before
1229 <strong>START</strong>,
1231 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
1232 (below have) the following meanings:
1234 <pre>
1235 L_MARGIN Left margin of pages, including headers/footers
1236 R_MARGIN Right margin of pages, including headers/footers
1237 T_MARGIN The point at which running text (i.e. not
1238 headers/footers or page numbers) starts on each page
1239 B_MARGIN The point at which running text (i.e. not
1240 headers/footers or page numbers) ends on each page
1242 (PAGE If you use PAGE, its first four arguments have the
1243 same meaning as L_ R_ T_ and B_MARGIN above.)
1245 LL The line length for everything on the page;
1246 equivalent to setting the right margin with R_MARGIN
1247 FAMILY The family of all type in the document
1248 PT_SIZE The point size of type in paragraphs; mom uses this
1249 calculate automatic point size changes (eg. for heads,
1250 footnotes, quotes, headers, etc)
1251 *LS or AUTOLEAD The leading used in paragraphs; all leading and spacing
1252 of running text is calculated from this
1253 QUAD Affects paragraphs only
1255 ------
1256 *See <a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
1257 </pre>
1259 Other macros that deal with type style, or refinements thereof
1260 (<strong>KERN, LIGATURES, HY, WS, SS,</strong> etc.), behave normally.
1261 It is not recommended that you set up tabs or indents prior to
1262 <strong>START</strong>.
1264 If you want to change any of the basic parameters above
1265 <em>after</em> <strong>START</strong> and have them affect a
1266 document globally (as if you'd entered them <em>before</em>
1267 <strong>START</strong>), you must use the macros listed in
1268 <a href="#DOC_PARAM_MACROS">Changing document-wide style parameters after START</a>.
1269 <br>
1271 <!---DOC_LEAD_ADJUST--->
1273 <hr width="66%" align="left">
1274 <a name="DOC_LEAD_ADJUST"><h3><u>Adjusting document leading to fill pages</u></h3></a>
1275 <br>
1276 Macro: <strong>DOC_LEAD_ADJUST</strong> <var>toggle</var>
1277 <br>
1278 <em>*Must come after LS or AUTOLEAD and before START</em>
1281 <strong>DOC_LEAD_ADJUST</strong> is a special macro to adjust
1282 document
1283 <a href="definitions.html#TERMS_LEADING">leading</a>
1284 so that bottom margins fall precisely where you expect.
1286 If you invoke <strong>DOC_LEAD_ADJUST</strong>, <strong>mom</strong>
1287 takes the number of lines that fit on the page at your requested
1288 leading, then incrementally adds
1289 <a href="definitions.html#TERMS_UNITS">machine units</a>
1290 to the leading until the maximum number of lines at the new leading
1291 matches the bottom margin. In most instances, the difference
1292 between the requested lead and the adjusted lead is
1293 unnoticeable, and since in almost all cases adjusted leading is
1294 what you want, it's <strong>mom</strong>'s default.
1296 Should you NOT want adjusted document leading, you MUST turn it
1297 off manually, like this:
1299 <pre>
1300 .DOC_LEAD_ADJUST OFF
1301 </pre>
1302 If you set the document leading prior to <strong>START</strong>
1303 with
1304 <a href="typesetting.html#LS">LS</a>
1306 <a href="typesetting.html#AUTOLEAD">AUTOLEAD</a>,
1307 <strong>DOC_LEAD_ADJUST OFF</strong> must come afterwards, like
1308 this:
1310 <pre>
1311 .LS 12
1312 .DOC_LEAD_ADJUST OFF
1313 </pre>
1315 In this scenario, the maximum number of lines that fit on a page at
1317 <a href="definitions.html#TERMS_LEADING">leading</a>
1318 of 12
1319 <a href="definitions.html#TERMS_PICASPOINTS">points</a>
1320 determine where <strong>mom</strong> ends
1321 a page. The effect will be that last lines usually fall (slightly)
1322 short of the &quot;official&quot; bottom margin.
1325 <a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE</a>
1326 <strong>TYPEWRITE</strong>, the leading is always adjusted and
1327 can't be turned off.
1329 <strong>NOTE:</strong> <strong>DOC_LEAD_ADJUST</strong>, if
1330 used, must be invoked after
1331 <a href="typesetting.html#LEADING">LS</a>
1333 <a href="typesetting.html#AUTOLEAD">AUTOLEAD</a>
1334 and before
1335 <a href="#START">START</a>
1337 <strong>ADDITIONAL NOTE:</strong> Even if you disable
1338 <strong>DOC_LEAD_ADJUST</strong>, <strong>mom</strong> will still
1339 adjust the leading of endnotes pages and toc pages. See
1340 <a href="docelement.html#ENDNOTE_LEAD">ENDNOTE_LEAD</a>
1342 <a href="docelement.html#TOC_LEAD">TOC_LEAD</a>
1343 for an explanation of how to disable this default behaviour.
1344 <br>
1346 <!---DOCHEADER--->
1348 <hr width="66%" align="left">
1349 <a name="DOCHEADER"><h3><u>Managing the docheader</u></h3></a>
1350 <br>
1351 Macro: <strong>DOCHEADER</strong> <var>&lt;toggle&gt; [ distance to advance from top of page ]</var>
1352 <br>
1353 <em>*Must come before START; distance requires a <a href="#TERMS_UNITOFMEASURE">unit of measure</a></em>
1356 By default, <strong>mom</strong> prints a
1357 <a href="definitions.html#TERMS_DOCHEADER">docheader</a>
1358 on the first page of any document (see
1359 <a href="#DOCHEADER_DESC">below</a>
1360 for a description of the docheader). If you don't want a docheader,
1361 turn it off with
1363 <pre>
1364 .DOCHEADER OFF
1365 </pre>
1367 <strong>DOCHEADER</strong> is a toggle macro, so the argument doesn't
1368 have to be <strong>OFF</strong>; it can be anything you like.
1370 If you turn the docheader off, <strong>mom</strong>, by default, starts
1371 your document in the same place she would if the docheader were there.
1372 If you'd like her to start at a different vertical position, give
1373 her the distance you'd like as a second argument.
1375 <pre>
1376 .DOCHEADER OFF 1.5i
1377 </pre>
1379 This starts the document 1.5 inches from the top of the page.
1380 The distance you give is measured from the top edge of the paper
1381 to the
1382 <a href="definitions.html#TERMS_BASELINE">baseline</a>
1383 of the first line of type.
1385 <strong>TIP:</strong> Since no document processing happens until
1386 you invoke
1387 <a href="#START">START</a>
1388 -- including anything to do with docheaders -- you can typeset
1389 your own docheader prior to <strong>START</strong> (if you don't
1390 like the way <strong>mom</strong> does things) and use
1391 <strong>DOCHEADER OFF</strong> with its optional distance argument
1392 to ensure that the body of your document starts where you want.
1393 You can even insert a PostScript file (with <strong>.PSPIC</strong>;
1394 see the <strong>grops</strong> man page for usage).
1396 <a name="DOCHEADER_CONTROL"><h3><u>How to change the look of docheaders: docheader control macros</u></h3></a>
1399 With
1400 <a href="#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>,
1401 the look of docheaders is carved in stone.
1403 <a href="#PRINTSTYLE">PRINTSTYLE TYPESET</a>,
1404 however, you can make a lot of changes. Macros that alter docheaders
1405 MUST come before
1406 <a href="#START">START</a>.
1407 <a name="DOCHEADER_DESC"></a>
1409 A typeset docheader has the following characteristics. Note that
1410 title, subtitle, author, and document type are what you supply
1411 with the
1412 <a href="#REFERENCE_MACROS">reference macros</a>.
1413 Any you leave out will not appear; <strong>mom</strong> will
1414 compensate:
1416 <pre>
1417 TITLE bold, 3.5 points larger than running text (not necessarily caps)
1418 Subtitle medium, same size as running text
1419 by medium italic, same size as running text
1420 Author(s) medium italic, same size as running text
1422 (Document type) bold italic, underscored, 3 points larger than running text
1423 </pre>
1425 If the
1426 <a href="#DOCTYPE">DOCTYPE</a>
1427 is CHAPTER,
1428 <pre>
1429 Chapter # bold, 4 points larger than running text
1430 Chapter Title bold italic, 4 points larger than running text
1431 </pre>
1435 <a href="definitions.html#TERMS_FAMILY">family</a>
1436 is the prevailing family of the whole document.
1438 <h3><u>The docheader macros to:</u></h3>
1439 <ol>
1440 <li><a href="#CHANGE_START">Change the starting position</a>
1441 <li><a href="#ADJUST_LEADING">Adjust the docheader leading</a>
1442 <li><a href="#CHANGE_FAMILY">Change the family of docheader elements</a>
1443 <li><a href="#CHANGE_FONT">Change the font of docheader elements</a>
1444 <li><a href="#CHANGE_SIZE">Adjust the size of docheader elements</a>
1445 <li><a href="#CHANGE_ATTRIBUTE">Change the attribution string (&quot;by&quot;)</a>
1446 </ol>
1448 <a name="CHANGE_START"><h3><u>1. Change the starting position</u></h3></a>
1449 By default, a docheader starts on the same
1450 <a href="definitions.html#TERMS_BASELINE">baseline</a>
1452 <a href="definitions.html#TERMS_RUNNING">running text</a>.
1453 If you'd like it to start somewhere else, use the macro
1454 <kbd>.DOCHEADER_ADVANCE</kbd> and give it the distance you want
1455 (measured from the top edge of the paper to the first baseline
1456 of the docheader), like this:
1458 <pre>
1459 .DOCHEADER_ADVANCE 4P
1460 </pre>
1463 <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>
1464 is required.
1466 <strong>NOTE:</strong> If
1467 <a href="headfootpage.html#HEADERS">HEADERS</a>
1468 are <strong>OFF</strong>, <strong>mom</strong>'s normal top
1469 margin for
1470 <a href="definitions.html#TERMS_RUNNING">running text</a>
1471 (7.5
1472 <a href="definitions.html#TERMS_PICASPOINTS">picas</a>)
1473 changes to 6 picas (visually approx. 1 inch). Since the
1474 first baseline of the docheader falls on the same baseline
1475 as the first line of running text (on pages after page 1),
1476 you might find the docheaders a bit high when headers are off.
1478 <a href="#CHANGE_START">DOCHEADER_ADVANCE</a>
1479 to place them where you want.
1482 <a name="ADJUST_LEADING"><h3><u>2. Adjust the leading</u></h3></a>
1484 <a href="definitions.html#TERMS_LEADING">leading</a> of
1485 docheaders is the same as running text (except when
1486 <a href="#DOCTYPE">DOCTYPE</a>
1487 is <strong>CHAPTER</a> <em>and both</em> a chapter number and a
1488 chapter title have been supplied, in which case the default is 4 points
1489 more than running text.)
1491 If you'd like your docheaders to have a different leading, say, 2
1492 points more than the lead of running text, use:
1494 <pre>
1495 .DOCHEADER_LEAD +2p
1496 </pre>
1498 Since the leading of docheaders is calculated from the lead of running
1499 text, a + or - sign is required before the argument (how much to add
1500 or subtract from the lead of running text). The
1501 <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>
1502 is also required.
1504 <a name="CHANGE_FAMILY"><h3><u>3. Change the family of docheader elements</u></h3></a>
1505 The following macros let you change the
1506 <a href="definitions.html#TERMS_FAMILY">family</a>
1507 of each docheader element separately:
1509 <ul>
1510 <li><strong>TITLE_FAMILY</strong> <var>&lt;family&gt;</var>
1511 <li><strong>CHAPTER_TITLE_FAMILY</strong> <var>&lt;family&gt;</var>
1512 <li><strong>SUBTITLE_FAMILY</strong> <var>&lt;family&gt;</var>
1513 <li><strong>AUTHOR_FAMILY</strong> <var>&lt;family&gt;</var>
1514 <li><strong>DOCTYPE_FAMILY</strong> <var>&lt;family&gt;</var> (if
1515 <a href="#DOCTYPE">DOCTYPE</a> is NAMED)
1516 </ul>
1518 Simply pass the appropriate macro the family you want.
1520 <a name="CHANGE_FONT"><h3><u>4. Change the font of docheader elements</u></h3></a>
1521 The following macros let you change the
1522 <a href="definitions.html#TERMS_FONT">font</a>
1523 of each docheader element separately:
1525 <ul>
1526 <li><strong>TITLE_FONT</strong> <var>R | B | I | BI</var>
1527 <li><strong>CHAPTER_TITLE_FONT</strong> <var>R | B | I | BI</var>
1528 <li><strong>SUBTITLE_FONT</strong> <var>R | B | I | BI</var>
1529 <li><strong>AUTHOR_FONT</strong> <var>R | B | I | BI</var>
1530 <li><strong>DOCTYPE_FONT</strong> <var>R | B | I | BI</var> (if
1531 <a href="#DOCTYPE">DOCTYPE</a> is NAMED)
1532 </ul>
1534 Simply pass the appropriate macro the font you want. <strong>R,
1535 B, I</strong> and <strong>BI</strong> have the same meaning as
1536 they do for
1537 <a href="typesetting.html#FONT">FT</a>.
1540 <a name="CHANGE_SIZE"><h3><u>5. Adjust the size of docheader elements</u></h3></a>
1541 The following macros let you adjust the point size of each docheader
1542 element separately.
1544 <strong>Mom</strong> calculates the point size
1545 of docheader elements from the point size of paragraphs in running
1546 text, so you must prepend a + or - sign to the argument. Points is
1547 assumed as the
1548 <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>,
1549 so there's no need to append a unit to the argument. Fractional point
1550 sizes are allowed.
1552 <ul>
1553 <li><strong>TITLE_SIZE</strong> <var>&lt;+/-points&gt;</var>
1554 <br>
1555 default = +3.5 (+4 if docheader title is &quot;Chapter #&quot;)
1556 <li><strong>CHAPTER_TITLE_SIZE</strong> <var>&lt;+/-points&gt;</var>
1557 <br>
1558 default = +4
1559 <li><strong>SUBTITLE_SIZE</strong> <var>&lt;+/-points&gt;</var>
1560 <br>
1561 default = +0
1562 <li><strong>AUTHOR_SIZE</strong> <var>&lt;+/-points&gt;</var>
1563 <br>
1564 default = +0
1565 <li><strong>DOCTYPE_SIZE</strong> <var>&lt;+/-points&gt;</var> (if
1566 <a href="#DOCTYPE">DOCTYPE</a> is NAMED)
1567 <br>
1568 default = +3
1569 </ul>
1571 Simply pass the appropriate macro the size adjustment you want.
1573 <a name="CHANGE_ATTRIBUTE"><h3><u>6. Change the attribution string (&quot;by&quot;)</u></h3></a>
1575 If you're not writing in English, you can change what
1576 <strong>mom</strong> prints where &quot;by&quot; appears in
1577 docheaders. For example,
1579 <pre>
1580 .ATTRIBUTE_STRING "par"
1581 </pre>
1583 changes &quot;by&quot; to &quot;par&quot;. If you
1584 don't want an attribution string at all, simply pass
1585 <strong>ATTRIBUTE_STRING</strong> an empty argument, like this:
1587 <pre>
1588 .ATTRIBUTE_STRING ""
1589 </pre>
1591 <strong>Mom</strong> will deposit a blank line where the
1592 attribution string normally appears.
1594 <strong>NOTE:</strong> The type specs for the attribution line
1595 in docheaders are the same as for the author line. Although
1596 it's highly unlikely you'll want the attribution line in a
1597 different family, font, or point size, you can do so by using
1598 <a href="definitions.html#TERMS_INLINES">inline escapes</a>
1599 in the argument to <strong>ATTRIBUTE_STRING</strong>. For
1600 example,
1602 <pre>
1603 .ATTRIBUTE_STRING "\f[HBI]\*S[-2p] by \*S[+2p]\*[PREV]"
1604 </pre>
1606 would set &quot;by&quot; in Helvetica bold italic, 2 points
1607 smaller than normal.
1608 <br>
1609 <hr>
1611 <!---COLUMNS_INTRO--->
1613 <a name="COLUMNS_INTRO"><h2><u>Setting documents in columns</u></h2></a>
1616 Setting documents in columns is easy with <strong>mom</strong>. (Of
1617 course she'd say that, but it's true!) All you have to do is is
1618 say how many columns you want and how much space you want
1619 between them (the
1620 <a href="definitions.html#TERMS_GUTTER">gutters</a>).
1621 That's it. <strong>Mom</strong> takes care of everything else, from
1622 soup to nuts.
1624 <strong>SOME WORDS OF ADVICE:</strong>
1626 If you want your type to achieve a pleasing
1627 <a href="definitions.html#TERMS_JUST">justification</a>
1629 <a href="definitions.html#TERMS_RAG">rag</a>
1630 in columns, reduce the point size of type (and probably the
1631 <a href="definitions.html#TERMS_LEADING">leading</a>
1632 as well). <strong>Mom</strong>'s default document point
1633 size is 12.5, which works well across her default 39
1634 <a href="definitions.html#TERMS_PICASPOINTS">pica</a>
1635 full page line length, but with even just two columns on a page,
1636 the default point size is awkward to work with.
1638 Furthermore, you'll absolutely need to reduce the indents for
1639 <a href="docelement.html#EPIGRAPH_CONTROL">epigraphs</a>,
1640 <a href="docelement.html#QUOTE_GENERAL">quotes</a>,
1642 <a href="docelement.html#BLOCKQUOTE_GENERAL">blockquotes</a>
1643 (and probably the
1644 <a href="docelement.html#PARA_INDENT">paragraph first-line indent</a>
1645 as well).
1646 <br>
1648 <!---COLUMNS--->
1650 <hr width="66%" align="left">
1651 <a name="COLUMNS"><h3><u>COLUMNS</u></h3></a>
1652 <br>
1653 Macro: <strong>COLUMNS</strong> <var>&lt;number of columns&gt; &lt;width of gutters&gt;</var>
1654 <br>
1655 <em>*Should be the last macro before START
1656 <br>
1657 The second argument requires a <a href="#TERMS_UNITOFMEASURE">unit of measure</a></em>
1660 <strong>COLUMNS</strong> takes two arguments: the number of
1661 columns you want on document pages, and the width of the
1662 <a href="definitions.html#TERMS_GUTTER">gutter</a>
1663 between them. For example, to set up a page with two columns
1664 separated by an 18 point gutter, you'd do
1666 <pre>
1667 .COLUMNS 2 18p
1668 </pre>
1670 Nothing to it, really. However, as noted above,
1671 <strong>COLUMNS</strong> should always be the last document
1672 setup macro prior to
1673 <a href="#START">START</a>.
1675 <strong>NOTE:</strong> <strong>Mom</strong> ignores columns completely
1676 when the
1677 <a href="#PRINTSTYLE">PRINTSTYLE</a>
1678 is <strong>TYPEWRITE</strong>. The notion of typewriter-style
1679 output in columns is just too ghastly for her to bear.
1681 <a name="BREAKING_COLUMNS"></a>
1682 <h3><u>Breaking columns manually</u></h3>
1684 <strong>Mom</strong> takes care of breaking columns when they reach
1685 the bottom margin of a page. However, there may be times you want to
1686 break the columns yourself. There are two macros for breaking columns
1687 manually: <strong>COL_NEXT</strong> and <strong>COL_BREAK</strong>.
1689 <a name="COL_NEXT"></a>
1691 <kbd>.COL_NEXT</kbd> breaks the line just before it,
1692 <a href="definitions.html#TERMS_QUAD">quads</a>
1693 it left (assuming the type is justified or quad left), and moves over
1694 to the top of the next column. If the column happens to be the last
1695 (rightmost) one on the page, <strong>mom</strong> starts a new page
1696 at the &quot;column 1&quot; position. This is the macro to use when
1697 you want to start a new column after the end of a paragraph.
1699 <a name="COL_BREAK"></a>
1701 <kbd>.COL_BREAK</kbd> is almost the same, except that
1702 instead of breaking and quadding the line preceding it,
1703 she breaks and spreads it (see
1704 <a href="typesetting.html#SPREAD">SPREAD</a>).
1705 Use this macro whenever you need to start a new column in the middle
1706 of a paragraph.
1708 If you need <strong>COL_BREAK</strong> in the middle of a blockquote
1709 or (god help us) an epigraph, you must do the following in order for
1710 <strong>COL_BREAK</strong> to work:
1712 <pre>
1713 .SPREAD
1714 \!.COL_BREAK
1715 </pre>
1716 <hr>
1718 <!========================================================================>
1720 <a name="START_MACRO">
1721 <h2><u>Start document processing</u></h2>
1722 </a>
1724 In order to use <strong>mom</strong>'s document element macros
1725 (tags), you have to tell her you want them. The macro to do this
1726 is <strong>START</strong>.
1728 <strong>START</strong> collects the information you gave
1729 <strong>mom</strong> in the setup section at the top of your file (see
1730 <a href="#DOCPROCESSING_TUT">Tutorial -- setting up a mom document</a>),
1731 merges it with her defaults, sets up headers and page numbering,
1732 and prepares <strong>mom</strong> to process your document using
1733 the document element tags. No document processing takes place until
1734 you invoke <strong>START</strong>.
1735 <br>
1737 <!---START--->
1739 <hr width="66%" align="left">
1741 <a name="START"></a>
1742 Macro: <strong>START</strong>
1743 <br>
1744 <em>*Required for document processing.</em>
1747 <strong>START</strong> takes no arguments. It simply instructs
1748 <strong>mom</strong> to begin document processing. If you don't
1749 want document processing (i.e. you only want the
1750 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>),
1751 don't use <strong>START</strong>.
1753 At a barest minimum before <strong>START</strong>, you must enter a
1754 <a href="#PRINTSTYLE">PRINTSTYLE</a>
1755 command.
1756 <br>
1757 <hr>
1759 <!========================================================================>
1761 <a name="DOC_PARAM_MACROS">
1762 <h2><u>Changing document-wide style parameters after START</u></h2>
1763 </a>
1765 In the normal course of things, you change the basic type
1766 parameters of a document <em>before</em>
1767 <a href="#START">START</a>,
1768 using
1769 <a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
1770 (<strong>L_MARGIN, FAMILY, PT_SIZE, LS,</strong> etc). After
1771 <strong>START</strong>, you must use the following macros to make
1772 global changes to the basic type parameters of a document.
1773 <br>
1775 <a name="INDEX_DOC_PARAM">
1776 <h3><u>Macro list</u></h3>
1777 </a>
1778 <ul>
1779 <li><a href="#DOC_LEFT_MARGIN">DOC_LEFT_MARGIN</a>
1780 <li><a href="#DOC_RIGHT_MARGIN">DOC_RIGHT_MARGIN</a>
1781 <li><a href="#DOC_LINE_LENGTH">DOC_LINE_LENGTH</a>
1782 <li><a href="#DOC_FAMILY">DOC_FAMILY</a>
1783 <li><a href="#DOC_PT_SIZE">DOC_PT_SIZE</a>
1784 <li><a href="#DOC_LEAD">DOC_LEAD</a>
1785 <li><a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
1786 <li><a href="#DOC_QUAD">DOC_QUAD</a>
1787 </ul>
1789 <hr width="66%" align="left">
1791 <a name="DOC_LEFT_MARGIN">
1792 Macro: <strong>DOC_LEFT_MARGIN</strong> <var>&lt;left margin&gt;</var>
1793 </a>
1794 <br>
1795 <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
1797 <ul>
1798 <li>the argument is the same as for
1799 <a href="typesetting.html#L_MARGIN">L_MARGIN</a>
1800 <li>changes all left margins to the new value
1801 <li>the line length remains the same (i.e. the right margin
1802 shifts when you change the left margin)
1803 </ul>
1805 <br>
1807 <hr width="66%" align="left">
1809 <a name="DOC_RIGHT_MARGIN">
1810 Macro: <strong>DOC_RIGHT_MARGIN</strong> <var>&lt;right margin&gt;</var>
1811 </a>
1812 <br>
1813 <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
1815 <ul>
1816 <li>the argument is the same as for
1817 <a href="typesetting.html#R_MARGIN">R_MARGIN</a>
1818 <li>changes all right margins to the new value
1819 <li>all mom commands that include a right indent calculate
1820 the indent from the new value
1821 </ul>
1822 <br>
1824 <hr width="66%" align="left">
1826 <a name="DOC_LINE_LENGTH">
1827 Macro: <strong>DOC_LINE_LENGTH</strong> <var>&lt;length&gt;</var>
1828 </a>
1829 <br>
1830 <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
1832 <ul>
1833 <li>the argument is the same as for
1834 <a href="typesetting.html#LL">LL</a>
1835 <li>equivalent to changing the right margin with DOC_RIGHT_MARGIN
1836 </ul>
1837 <br>
1839 <hr width="66%" align="left">
1841 <a name="DOC_FAMILY">
1842 Macro: <strong>DOC_FAMILY</strong> <var>&lt;family&gt;</var>
1843 </a>
1845 <ul>
1846 <li>the argument is the same as for
1847 <a href="typesetting.html#FAMILY">FAMILY</a>
1848 <li>globally changes the type family
1849 <li>if you wish the
1850 <a href="definitions.html#TERMS_HEADER">header</a>
1851 and/or page number families to remain at their old values,
1852 you must reset them with
1853 <a href="headfootpage.html#HEADER_FAMILY">HEADER_FAMILY</a>
1855 <a href="headfootpage.html#PAGENUM_FAMILY">PAGENUM_FAMILY</a>
1856 </ul>
1857 <br>
1859 <hr width="66%" align="left">
1861 <a name="DOC_PT_SIZE">
1862 Macro: <strong>DOC_PT_SIZE</strong> <var>&lt;point size&gt;</var>
1863 </a>
1864 <br>
1865 <em>*Does not require a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>; points is assumed</em>
1867 <ul>
1868 <li>the argument is the same as for
1869 <a href="typesetting.html#PS">PT_SIZE</a>,
1870 and refers to the point size of type in paragraphs
1871 <li>all automatic point size changes (heads, quotes,
1872 footnotes, headers, etc.) are affected by the new size;
1873 anything you do not want affected must be reset to
1874 its former value (see the Control Macros section of
1875 the pertinent document element for instructions on
1876 how to do this)
1877 </ul>
1878 <br>
1880 <hr width="66%" align="left">
1882 <a name="DOC_LEAD">
1883 Macro: <strong>DOC_LEAD</strong> <var>&lt;points&gt; [ ADJUST ]</var>
1884 </a>
1885 <br>
1886 <em>*Does not require a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a>; points is assumed</em>
1888 <ul>
1889 <li>the argument is the same as for
1890 <a href="typesetting.html#LS">LS</a>,
1891 and refers to the
1892 <a href="definitions.html#TERMS_LEAD">leading</a>
1893 of paragraphs
1894 <li>because paragraphs will have a new leading, the leading and
1895 spacing of most running text is influenced by the new value
1896 <li>epigraphs and footnotes remain unaffected;
1897 if you wish to change their leading, use
1898 <a href="docelement.html#EPIGRAPH_AUTOLEAD">EPIGRAPH_AUTOLEAD</a>
1900 <a href="docelement.html#FOOTNOTE_AUTOLEAD">FOOTNOTE_AUTOLEAD</a>.
1901 <li>the optional argument <strong>ADJUST</strong> performs
1902 leading adjustment as explained in
1903 <a href="#DOC_LEAD_ADJUST">DOC_LEAD_ADJUST</a>
1904 </ul>
1906 <strong>IMPORTANT:</strong> Do not use <strong>DOC_LEAD</strong>
1907 in the middle of a page! It should always and only be invoked
1908 immediately prior to a new page, like this:
1910 <pre>
1911 .DOC_LEAD &lt;new value&gt;
1912 .NEWPAGE
1913 </pre>
1915 <strong>NOTE:</strong> Even if you don't pass
1916 <strong>DOC_LEAD</strong> the optional argument
1917 <strong>ADJUST</strong>, <strong>mom</strong> will still adjust the
1918 leading of endnotes pages and toc pages. See
1919 <a href="docelement.html#ENDNOTE_LEAD">ENDNOTE_LEAD</a>
1921 <a href="docelement.html#TOC_LEAD">TOC_LEAD</a>
1922 for an explanation of how to disable this default behaviour.
1923 <br>
1925 <hr width="66%" align="left">
1927 <a name="DOC_QUAD">
1928 Macro: <strong>DOC_QUAD</strong> <var>L | R | C | J</var>
1929 </a>
1931 <ul>
1932 <li>the arguments are the same as for
1933 <a href="typesetting.html#QUAD">QUAD</a>
1934 <li>affects paragraphs, epigraphs and footnotes; does not
1935 affect blockquotes
1936 </ul>
1939 <hr>
1940 <a href="docelement.html#TOP">Next</a>&nbsp;&nbsp;
1941 <a href="inlines.html#TOP">Prev</a>&nbsp;&nbsp;
1942 <a href="#TOP">Top</a>&nbsp;&nbsp;
1943 <a href="toc.html">Back to Table of Contents</a>
1944 </body>
1945 </html>