PageRenderTime 59ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 0ms

/contrib/groff/contrib/mom/momdoc/headfootpage.html

https://bitbucket.org/freebsd/freebsd-head/
HTML | 1636 lines | 1482 code | 134 blank | 20 comment | 0 complexity | a07f4627a094412bb58d979b541d9bc4 MD5 | raw file
Possible License(s): MPL-2.0-no-copyleft-exception, BSD-3-Clause, LGPL-2.0, LGPL-2.1, BSD-2-Clause, 0BSD, JSON, AGPL-1.0, GPL-2.0
  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: headers, footers and pagination</title>
  6. </head>
  7. <body bgcolor="#dfdfdf">
  8. <!====================================================================>
  9. <a href="rectoverso.html#TOP">Next</a>&nbsp;&nbsp;
  10. <a href="docelement.html#TOP">Prev</a>&nbsp;&nbsp;
  11. <a href="toc.html">Back to Table of Contents</a>
  12. <p>
  13. <a name="TOP"></a>
  14. <a name="HEADFOOTPAGE">
  15. <h1 align="center"><u>PAGE HEADERS, FOOTERS, AND PAGINATION</u></h1>
  16. </a>
  17. <ul>
  18. <li><a href="#HEADFOOTPAGE_INTRO">Introduction -- VERY IMPORTANT; read me!</a>
  19. <ul>
  20. <li><a href="#PAGINATION_NOTE">An important note on pagination</a>
  21. </ul>
  22. <li><a href="#DESCRIPTION_GENERAL">General description of headers/footers</a>
  23. <li><a href="#HEADER_STYLE">Default specs for headers/footers</a>
  24. <li><a href="#VERTICAL_SPACING">Vertical placement and spacing of headers/footers</a>
  25. <li><a href="#HEADFOOT_MANAGEMENT">Managing headers/footers</a> -- see also <a href="#HEADFOOT_TOC">Control macros for headers/footers</a>
  26. <ul>
  27. <li><a href="#HEADERS">HEADERS</a> -- on or off
  28. <li><a href="#FOOTERS">FOOTERS</a> -- on or off
  29. <li><a href="#FOOTER_ON_FIRST_PAGE">FOOTER_ON_FIRST_PAGE</a>
  30. <li><a href="#USERDEF_HDRFTR">User-defined, single string recto/verso headers/footers</a>
  31. <ul>
  32. <li><a href="#USERDEF_HDRFTR_INTRO">Introduction</a>
  33. <li><a href="#HDRFTR_RECTOVERSO">HEADER_RECTO, HEADER_VERSO</a>
  34. </ul>
  35. </ul>
  36. <a name="HEADFOOT_TOC"></a>
  37. <li><a href="#HEADFOOT_CONTROL">Control macros for headers/footers</a>
  38. <ul>
  39. <li><a href="#HDRFTR_STRINGS">Header/footer strings</a>
  40. <ul>
  41. <li><a href="#RESERVED_STRINGS">Using mom's &quot;reserved&quot; strings in header/footer definitions</a>
  42. </ul>
  43. <li><a href="#HDRFTR_STYLE">Header/footer style</a>
  44. <ul>
  45. <li><a href="#HDRFTR_STYLE_GLOBAL">Global style control</a>
  46. <li><a href="#HDRFTR_STYLE_PART">Part-by-part style control</a>
  47. </ul>
  48. <li><a href="#HDRFTR_VERTICAL">Vertical placement and spacing of headers/footers</a>
  49. <ul>
  50. <li><a href="#HDRFTR_MARGIN">HEADER_MARGIN</a>
  51. <li><a href="#HDRFTR_GAP">HEADER_GAP</a>
  52. </ul>
  53. <li><a href="#HDRFTR_SEPARATOR">The header/footer separator rule</a>
  54. <ul>
  55. <li><a href="#HDRFTR_RULE">HEADER_RULE</a> -- on or off
  56. <li><a href="#HDRFTR_RULE_GAP">HEADER_RULE_GAP</a> -- distance of rule from header/footer
  57. <li><a href="#HDRFTR_RULE_COLOR">HEADER_RULE_COLOR</a> -- colour of the header/footer rule
  58. </ul>
  59. </ul>
  60. <li><a href="#PAGINATION">Pagination</a>
  61. <ul>
  62. <li><a href="#INDEX_PAGINATION">Pagination control macros</a>
  63. </ul>
  64. </ul>
  65. <a name="HEADFOOTPAGE_INTRO">
  66. <h2><u>Introduction</u></h2>
  67. </a>
  68. <a href="definitions.html#TERMS_HEADER">Headers</a>
  69. and
  70. <a href="definitions.html#TERMS_FOOTER">footers</a>,
  71. as defined in the section
  72. <a href="definitions.html#TERMS_MOM">Mom's Document Processing Terms</a>,
  73. are those parts of a document that contain information about the document
  74. itself which appear in the margins either above or below
  75. <a href="definitions.html#TERMS_RUNNING">running text</a>.
  76. They are, in all respects but two, identical. The differences are:
  77. <p>
  78. <ol>
  79. <li>headers appear in the margin <em>above</em> running text while
  80. footers appear in the margin <em>beneath</em> running text;
  81. <li>the (optional) rule that separates headers from running
  82. text appears <em>below</em> the header while
  83. the (optional) rule that separates footers from running
  84. text appears <em>above</em> the footer.
  85. </ol>
  86. <a name="HEADERFOOTER"></a>
  87. <p>
  88. Because headers and footers are virtually identical, this
  89. documentation addresses itself only to headers. In all cases,
  90. unless otherwise noted, descriptions of headers
  91. describe footers as well.
  92. <p>
  93. Furthermore, any
  94. <a href="definitions.html#TERMS_CONTROLMACRO">control macro</a>
  95. that begins with <strong>HEADER_</strong> may be used to control
  96. footers, simply by replacing <strong>HEADER_</strong> with
  97. <strong>FOOTER_</strong>.
  98. <p>
  99. <strong>Author's note:</strong> Left to their own devices (i.e. if
  100. you're happy with the way <strong>mom</strong> does things by default),
  101. headers are something you never have to worry about. You can skip
  102. reading this section entirely. But if you want to change them, be
  103. advised that headers have more macros to control their appearance than
  104. any other document element. The text of this documentation becomes
  105. correspondingly dense at this point.
  106. <a name="PAGINATION_NOTE"></a>
  107. <p>
  108. <strong>NOTE:</strong> While the single page number that
  109. <strong>mom</strong> generates in either the top or bottom margin
  110. above or below running text is technically a kind of header/footer,
  111. <strong>mom</strong> and this documentation treat it as a
  112. separate page element.
  113. <p>
  114. <a name="DESCRIPTION_GENERAL"><h3><u>General description of headers/footers</u></h3></a>
  115. <p>
  116. Headers comprise three distinct parts: a left part, a centre part,
  117. and a right part. Each part contains text (a &quot;string&quot;)
  118. that identifies some aspect of the document as a whole.
  119. <p>
  120. The left part (&quot;header left&quot;) lines up with the document's
  121. left margin. The centre part (&quot;header centre&quot;) is
  122. centred on the document's line length. The right part (&quot;header
  123. right&quot;) lines up with the document's right margin. Not all parts
  124. need contain a string, and if you don't want headers at all, you can
  125. turn them off completely.
  126. <p>
  127. <strong>A note to groff experts:</strong> Although
  128. <strong>mom</strong>'s headers resemble the three-part titles generated
  129. by <code>.tl</code>, they're in no way related to it, nor based
  130. upon it. <code>.tl</code> is not used at all in <strong>mom</strong>.
  131. <p>
  132. Normally, <strong>mom</strong> fills headers with strings appropriate
  133. to the document type selected with
  134. <a href="docprocessing.html#DOCTYPE">DOCTYPE</a>.
  135. You can, however, supply whatever strings you like -- including page
  136. numbers -- to go in any part of headers. What's more, you can set the
  137. family, font, size and capitalization style (caps or caps/lower-case)
  138. for each header part individually.
  139. <p>
  140. By default, <strong>mom</strong> prints a horizontal rule beneath
  141. headers to separate them visually from running text. In the case of
  142. footers, the rule is <em>above</em> running text. You can increase
  143. or decrease the space between the header and the rule if you like (with
  144. <a href="#HDRFTR_RULE_GAP">HEADER_RULE_GAP</a>),
  145. or remove it completely.
  146. <p>
  147. <a name="HEADER_STYLE"><h3><u>Default specs for headers/footers</u></h3></a>
  148. <p>
  149. <strong>Mom</strong> makes small type adjustments to each part of
  150. the header (left, centre, right) to achieve an aesthetically
  151. pleasing result. The defaults are listed below. (The strings
  152. <strong>mom</strong> puts by default in each part are explained in
  153. <a href="docprocessing.html#DOCTYPE">DOCTYPE</a>.)
  154. <p>
  155. <strong>NOTE:</strong> Except for capitalization (all caps or
  156. caps/lower-case), these defaults apply only to
  157. <a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE TYPESET</a>.
  158. <p>
  159. <pre>
  160. TYPE SPEC HEADER LEFT HEADER CENTER HEADER RIGHT
  161. --------- ----------- ------------- ------------
  162. Family document default document default document default
  163. Font roman italic roman
  164. Colour (black) (black) (black)
  165. All caps no no yes
  166. Size* -.5 (points) -.5 (points) -2 (points)
  167. (-2 if all caps) (-2 if all caps) (-.5 if not all caps)
  168. *Relative to the point size of type in paragraphs
  169. </pre>
  170. You can, of course, change any of the defaults using the appropriate
  171. control macros. And should you wish to design headers from the ground
  172. up, <strong>mom</strong> has a special macro,
  173. <a href="#HDRFTR_PLAIN">HEADER_PLAIN</a>,
  174. that removes all type adjustments to headers. The straightforward
  175. type specs for paragraphs are used instead, providing a simple
  176. reference point for any alterations you want to make to the family,
  177. font, size and capitalization style of any header part.
  178. <p>
  179. <a name="VERTICAL_SPACING"><h3><u>Vertical placement and spacing of headers/footers</u></h3></a>
  180. <p>
  181. As explained in the section on
  182. <a href="typedocmac.html">typesetting macros in document processing</a>,
  183. the top and bottom margins of a <strong>mom</strong> document
  184. are the vertical start and end positions of
  185. <a href="definitions.html#TERMS_RUNNING">running text</a>,
  186. not the vertical positions of headers or footers, which, by definition,
  187. appear in the margins <em>above</em> (or below) running text.
  188. <p>
  189. The vertical placement of headers
  190. is controlled by the macro
  191. <a href="#HDRFTR_MARGIN">HEADER_MARGIN</a>,
  192. which establishes the
  193. <a href="definitions.html">baseline</a>
  194. position of headers relative to the <em>top</em> edge of the page.
  195. The header rule, whose position is relative to the header itself,
  196. is controlled by a separate macro.
  197. <strong>FOOTER_MARGIN</strong> establishes the baseline position of
  198. footers relative to the <em>bottom</em> edge of the page.
  199. <p>
  200. <a href="#HDRFTR_GAP">HEADER_GAP</a> establishes
  201. the distance between headers and the <em>start</em> of running text (effectively
  202. making <strong>HEADER_MARGIN + HEADER_GAP</strong> the top margin of
  203. running text unless you give <strong>mom</strong> a literal top margin
  204. (with
  205. <a href="typesetting.html#T_MARGIN">T_MARGIN</a>),
  206. in which case she ignores <strong>HEADER_GAP</strong> and starts
  207. running text at whatever top margin you gave.
  208. <strong>FOOTER_GAP</strong> and
  209. <a href="typesetting.html#B_MARGIN">B_MARGIN</a>
  210. work similarly, except they determine where running text
  211. <em>ends</em> on the page. (See
  212. <a href="#FOOTER_MARGIN">FOOTER MARGIN AND BOTTOM MARGIN -- VERY IMPORTANT!</a>
  213. for a warning about possible conflicts between the footer margin
  214. and the bottom margin.)
  215. <p>
  216. Confused? <strong>Mom</strong> apologizes. It's really quite
  217. simple. By default, <strong>mom</strong> sets headers 4-1/2
  218. <a href="definitions.html#TERMS_PICASPOINTS">picas</a>
  219. down from the top of the page and starts running text 3 picas (the
  220. <strong>HEADER_GAP</strong>) beneath that, which means the
  221. effective top margin of running text is 7-1/2 picas (visually approx. 1
  222. inch). If you give <strong>mom</strong> a literal top margin (with
  223. <a href="typesetting.html#T_MARGIN">T_MARGIN</a>),
  224. she ignores the <strong>HEADER_GAP</strong> and starts running
  225. text at whatever top margin you gave.
  226. <p>
  227. Footers are treated the same way, the only difference being the
  228. default distances. <strong>Mom</strong> sets footers 3 picas up from
  229. the bottom of the page, and interrupts the processing of running text 3
  230. picas (the <strong>FOOTER_GAP</strong>) above that (again, visually
  231. approx. 1 inch). If you give <strong>mom</strong> a literal bottom
  232. margin (with <a
  233. href="typesetting.html#B_MARGIN">B_MARGIN</a>), she ignores the
  234. <strong>FOOTER_GAP</strong> and interrupts the processing of running
  235. text at whatever bottom margin you gave.
  236. <p>
  237. If <strong>mom</strong> is paginating your document (she
  238. does, by default, at the bottom of each page), the vertical
  239. spacing and placement of page numbers, whether at the top
  240. or the bottom of the page, is managed exactly as if the
  241. page numbers were headers (or footers), and are controlled
  242. by the same macros. See
  243. <a href="#PAGINATION">Pagination control</a>.
  244. <p>
  245. <hr>
  246. <!========================================================================>
  247. <a name="HEADFOOT_MANAGEMENT">
  248. <h2><u>Managing headers/footers</u></h2>
  249. </a>
  250. <p>
  251. The following are the basic macros for turning
  252. <a href="definitions.html#TERMS_HEADER">headers</a>
  253. or
  254. <a href="definitions.html#TERMS_FOOTER">footers</a>
  255. on or off. They should be invoked prior to
  256. <a href="docprocessing.html#START">START</a>.
  257. <p>
  258. By default, <strong>mom</strong> prints page headers. If you turn
  259. them off, she will begin
  260. <a href="definitions.html#TERMS_RUNNING">running text</a>
  261. on each page with a default top margin of 6
  262. <a href="definitions.html#TERMS_PICASPOINTS">picas</a>
  263. unless you have requested a different top margin (with
  264. <a href="typesetting.html#T_MARGIN">T_MARGIN</a>)
  265. prior to
  266. <a href="docprocessing.html#START">START</a>.
  267. <p>
  268. Please note that headers and footers are mutually exclusive. If
  269. headers are on, footers (but NOT bottom-of-page numbering) are
  270. automatically turned off. Equally, if footers are on, headers
  271. (but NOT top-of-page numbering) are automatically turned off. Thus, if
  272. you'd prefer footers in a document, you need only invoke
  273. <a href="#FOOTERS">FOOTERS</a>;
  274. there's no need to turn headers off first.
  275. <p>
  276. <!---HEADERS--->
  277. <hr width="66%" align="left">
  278. <p>
  279. <a name="HEADERS"></a>
  280. <nobr>Macro: <strong>HEADERS</strong> toggle</nobr>
  281. <p>
  282. <a href="definitions.html#TERMS_HEADER">Page headers</a>
  283. are on by default. If you don't want them, turn them off by
  284. invoking <strong>HEADERS</strong> with any argument
  285. (<strong>OFF, QUIT, END, X...</strong>), e.g.
  286. <p>
  287. <pre>
  288. .HEADERS OFF
  289. </pre>
  290. <p>
  291. <strong>NOTE:</strong> <strong>HEADERS</strong> automatically
  292. disables
  293. <a href="definitions.html#TERMS_FOOTER">footers</a>
  294. (you can't have both), but not the page numbers that normally
  295. appear at the bottom of the page.
  296. <p>
  297. <strong>ADDITIONAL NOTE:</strong> If <strong>HEADERS</strong>
  298. are <strong>OFF</strong>, <strong>mom</strong>'s normal top
  299. margin for
  300. <a href="definitions.html#TERMS_RUNNING">running text</a>
  301. (7.5
  302. <a href="definitions.html#TERMS_PICASPOINTS">picas</a>)
  303. changes to 6 picas (visually approx. 1 inch). This does NOT apply
  304. to the situation where footers have been explicitly turned on
  305. (with
  306. <a href="#FOOTERS">FOOTERS</a>).
  307. Explicitly invoking footers moves page numbering to the
  308. top of the page, where its placement and spacing are the same as
  309. for headers. (I.e. the top margin of running text remains 7.5
  310. picas.)
  311. <p>
  312. <!---FOOTERS--->
  313. <hr width="66%" align="left">
  314. <p>
  315. <a name="FOOTERS"></a>
  316. <nobr>Macro: <strong>FOOTERS</strong> toggle</nobr>
  317. <p>
  318. <a href="definitions.html#TERMS_FOOTER">Page footers</a>
  319. are off by default. If you want them instead of
  320. <a href="definitions.html#TERMS_HEADER">headers</a>
  321. (you can't have both), turn them on by invoking
  322. <strong>FOOTERS</strong> without an argument, e.g.
  323. <p>
  324. <pre>
  325. .FOOTERS
  326. </pre>
  327. <p>
  328. <strong>FOOTERS</strong> automatically disables headers, and
  329. <strong>mom</strong> shifts the placement of page numbers from their
  330. normal position at page bottom to the top of the page.
  331. <p>
  332. <strong>NOTE:</strong> By default, when footers are on,
  333. <strong>mom</strong> does not print a page number on the first
  334. page of a document, nor on first pages after
  335. <a href="rectoverso.html#COLLATE">COLLATE</a>.
  336. If you don't want this behaviour, you can change it with
  337. <a href="#PAGENUM_ON_FIRST_PAGE">PAGENUM_ON_FIRST_PAGE</a>.
  338. <p>
  339. <!---FOOTER_ON_FIRST_PAGE--->
  340. <hr width="66%" align="left">
  341. <p>
  342. <a name="FOOTER_ON_FIRST_PAGE"></a>
  343. <nobr>Macro: <strong>FOOTER_ON_FIRST_PAGE</strong> toggle</nobr>
  344. <p>
  345. If you invoke
  346. <a href="#FOOTERS">FOOTERS</a>,
  347. <strong>mom</strong>, by default, does not print a footer on the
  348. first page of the document. (The
  349. <a href="definitions.html">docheader</a>
  350. on page 1 makes it redundant.) However, should you wish a footer on
  351. page 1, invoke <strong>FOOTER_ON_FIRST_PAGE</strong> without any argument.
  352. <p>
  353. <hr>
  354. <!---USERDEF_HDRFTR--->
  355. <a name="USERDEF_HDRFTR">
  356. <h2><u>User-defined, single string recto/verso headers/footers</u></h2>
  357. </a>
  358. <a name="USERDEF_HDRFTR_INTRO"><h3><u>Introduction</u></h3></a>
  359. Sometimes, you'll find you can't get <strong>mom</strong>'s handling
  360. of 3-part headers or footers to do exactly what you want in the
  361. order you want. This is most likely happen when you want the
  362. information contained in the headers/footers split over two pages,
  363. as is often the case with recto/verso documents.
  364. <p>
  365. Say, for example, you want recto page headers to contain a document's
  366. author, centred, and verso page headers to contain the document's
  367. title, also centred, like this:
  368. <p>
  369. <pre>
  370. +------------------------+ +------------------------+
  371. | Author | | Title |
  372. | | | |
  373. | | | |
  374. | | | |
  375. | | | |
  376. | | | |
  377. | | | |
  378. | | | |
  379. | | | |
  380. | | | |
  381. | | | |
  382. | | | |
  383. | | | |
  384. | | | |
  385. +------------------------+ +------------------------+
  386. </pre>
  387. With <strong>mom</strong>'s standard 3-part headers, this isn't
  388. possible, even when
  389. <a href="rectoverso.html#RECTO_VERSO">RECTO_VERSO</a>
  390. is enabled. <strong>RECTO_VERSO</strong> switches the left and
  391. right parts of headers on alternate pages, but the centre
  392. part remains unchanged.
  393. <p>
  394. Any time you need distinctly different headers on alternate
  395. pages, <strong>mom</strong> has macros that let you manually
  396. design and determine what goes into headers on recto pages, and
  397. what goes into headers on verso pages. The macros are
  398. <a href="#HDRFTR_RECTO">HEADER_RECTO</a>
  399. and
  400. <a href="#HDRFTR_VERSO">HEADER_VERSO</a>.
  401. Both allow you to state whether the header is flush left, centred,
  402. or flush right, and both take a single
  403. <a href="definitions.html#TERMS_STRINGARGUMENT">string argument</a>
  404. with which, by combining text and
  405. <a href="definitions.html#TERMS_INLINES">inline escapes</a>,
  406. you can make the headers come out just about any way you want.
  407. Use of the <strong>\*[PAGE#]</strong> escape is permitted in the
  408. string argument (see
  409. <a href="#PAGE_NUMBER_INCL">Including the page number in header-left, -centre or -right</a>),
  410. and as an added bonus, <strong>mom</strong> provides a special
  411. mechanism whereby it's possible to &quot;pad&quot; the string as well.
  412. <p>
  413. <!---HDRFTR_RECTOVERSO--->
  414. <hr width="66%" align="left">
  415. <p>
  416. <a name="HDRFTR_RECTOVERSO"></a>
  417. <nobr>Macro: <strong>HEADER_RECTO</strong> LEFT | CENTER | RIGHT &quot;&lt;header recto string&gt;&quot;</nobr>
  418. <br>
  419. <nobr>Macro: <strong>HEADER_VERSO</strong> LEFT | CENTER | RIGHT &quot;&lt;header verso string&gt;&quot;</nobr>
  420. <br>
  421. <p>
  422. <strong>HEADER_RECTO</strong> and <strong>HEADER_VERSO</strong> behave
  423. identically, hence all references to <strong>HEADER_RECTO</strong>
  424. in this section also refer to <strong>HEADER_VERSO</strong>.
  425. Furthermore, <strong>FOOTER_</strong> can be used instead of
  426. <strong>HEADER_</strong> to set up recto/verso footers.
  427. <p>
  428. The first argument to <strong>HEADER_RECTO</strong> is the
  429. direction in which you want the header
  430. <a href="definitions.html#TERMS_QUAD">quadded</a>.
  431. <strong>L, C</strong> and <strong>R</strong> may be used in
  432. place of <strong>LEFT, CENTER</strong> and
  433. <strong>RIGHT</strong>. The second argument is a string,
  434. surrounded by double-quotes, containing what you want in the
  435. header. <strong>HEADER_RECTO</strong> disables <strong>mom</strong>'s
  436. normal 3-part headers, therefore anything you want in the
  437. headers must be entered by hand in the string, including colours
  438. (via the
  439. <a href="definitions.html#TERMS_INLINES">inline escape</a>
  440. <a href="color.html#COLOR_INLINE">\*[&lt;colorname&gt;]</a>).
  441. <p>
  442. By default, <strong>HEADER_RECTO</strong> is set at the same
  443. size, and in the same family and font, as paragraph text. The
  444. control macros
  445. <a href="#HDRFTR_GLOBAL_FAMILY">HEADER_FAMILY</a>
  446. and
  447. <a href="#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>
  448. may be used to change the default family and size. Changes to
  449. the font(s) within the string must be accomplished with the
  450. <a href="definitions.html#TERMS_INLINES">inline escapes</a>
  451. <strong>\*[ROM], \*[IT], \*[BD], \*[BDI]</strong> and
  452. <strong>\*[PREV]</strong> (see
  453. <a href="inlines.html#INLINE_FONTS_MOM">Changing fonts</a>).
  454. Additional refinements to the style of the header-recto string,
  455. including horizontal spacing and/or positioning, can also be made with
  456. inline escapes.
  457. <p>
  458. To include the current page number in the string, use the
  459. <strong>\*[PAGE#]</strong> inline.
  460. <br>
  461. <h3><u>*Padding the HEADER_RECTO/HEADER_VERSO string</u></h3>
  462. You can &quot;pad&quot; the header-recto string, a convenience you'll
  463. appreciate in circumstances such as the following.
  464. <p>
  465. <pre>
  466. VERSO RECTO
  467. +------------------------+ +------------------------+
  468. | Author Page# | | Page# Title |
  469. | | | |
  470. | | | |
  471. | | | |
  472. | | | |
  473. | | | |
  474. | | | |
  475. | | | |
  476. | | | |
  477. | | | |
  478. | | | |
  479. | | | |
  480. | | | |
  481. | | | |
  482. +------------------------+ +------------------------+
  483. </pre>
  484. To pad the string argument passed to <strong>HEADER_RECTO</strong>,
  485. begin and end the string (inside the double-quotes) with the caret
  486. character (<kbd>^</kbd>). Enter the pound sign (<kbd>#</kbd>) at any
  487. point in the string where you want an equalized amount of whitespace
  488. inserted. (If you're unsure what padding is, see
  489. <a href="goodies.html#PAD">Insert space into lines</a>.)
  490. Note that if you're padding the string, it doesn't matter what
  491. quad direction you give <strong>HEADER_RECTO</strong> since
  492. padding, by its nature, justifies text to the left and right
  493. margins.
  494. <p>
  495. The situation depicted above is accomplished like this:
  496. <p>
  497. <pre>
  498. .HEADER_RECTO LEFT "^\*[PAGE#]#Title^"
  499. .HEADER_VERSO LEFT "^Author#\*[PAGE#]^"
  500. </pre>
  501. Note that <strong>mom</strong> does not interpret the <kbd>#</kbd>
  502. in <strong>\*[PAGE#]</strong> as a padding marker (i.e. as a place
  503. to insert whitespace).
  504. <p>
  505. Also, notice that the argument <strong>LEFT</strong> is used in both
  506. cases. When padding a header, it doesn't matter whether you use
  507. LEFT, CENTER or RIGHT as the argument.
  508. <p>
  509. Furthermore, should you need a user-defined header of
  510. the sort provided by <strong>HEADER_RECTO</strong> and
  511. <strong>HEADER_VERSO</strong> but aren't actually printing
  512. recto/verso, you can use <strong>HEADER_RECTO</strong> to design the
  513. header that appears at the top of every page.
  514. <p>
  515. <strong>IMPORTANT:</strong> The
  516. <a href="goodies.html#PAD_MARKER">PAD_MARKER</a>
  517. macro, which changes the default pad marker (<kbd>#</kbd>) used by
  518. <a href="goodies.html#PAD">PAD</a>,
  519. has no effect on the pad marker used in the
  520. <strong>HEADER_RECTO</strong> string. If you absolutely must
  521. have a literal pound sign in your <strong>HEADER_RECTO</strong>
  522. string, use the escape sequence for the pound sign
  523. (<kbd>\[sh]</kbd>) where you want the pound sign to go.
  524. <p>
  525. <hr>
  526. <a name="HEADFOOT_CONTROL">
  527. <h2><u>Control macros for headers/footers</u></h2>
  528. </a>
  529. Virtually every part of headers (see the paragraph on how
  530. <a href="#HEADERFOOTER">&quot;headers&quot; means &quot;footers&quot;</a>
  531. in the
  532. <a href="#HEADFOOTPAGE_INTRO">introduction to headers/footers</a>)
  533. can be designed to your own specifications.
  534. <p>
  535. <a name="INDEX_REFERENCE">
  536. <h3><u>Header/footer control macros</u></h3>
  537. </a>
  538. <ul>
  539. <li><a href="#HDRFTR_STRINGS"><strong>STRINGS</strong></a>
  540. <ul>
  541. <li><a href="#HDRFTR_LEFT">HEADER_LEFT</a>
  542. <li><a href="#HDRFTR_CENTER">HEADER_CENTER</a>
  543. <ul>
  544. <li><a href="#HDRFTR_CENTER_PAD">HEADER_CENTER_PAD</a> -- stick some space left of right of the centre string
  545. </ul>
  546. <li><a href="#HDRFTR_RIGHT">HEADER_RIGHT</a>
  547. <li><a href="#PAGE_NUMBER_SYMBOL">Replacing header left, centre or right with the page number</a>
  548. <li><a href="#PAGE_NUMBER_INCL">Including the page number in header left, centre or right</a>
  549. </ul>
  550. <li><a href="#HDRFTR_STYLE"><strong>STYLE</strong></a>
  551. <ul>
  552. <li><a href="#HDRFTR_STYLE_GLOBAL"><strong>Global changes</strong></a>
  553. <li><a href="#HDRFTR_GLOBAL_FAMILY">HEADER_FAMILY</a>&nbsp;-- family for entire header
  554. <li><a href="#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>&nbsp;&nbsp;&nbsp;-- size for entire header
  555. <li><a href="#HDRFTR_PLAIN">HEADER_PLAIN</a>&nbsp;&nbsp;-- disable default adjustments to header parts
  556. <li><a href="#HDRFTR_COLOR">HEADER_COLOR</a>&nbsp;&nbsp;-- colourize the header
  557. </ul>
  558. <ul>
  559. <li><a href="#HDRFTR_STYLE_PART"><strong>Part-by-part changes</strong></a>
  560. <li><a href="#_FAMILY">_FAMILY</a>&nbsp;-- left, centre or right family
  561. <li><a href="#_FONT">_FONT</a>&nbsp;&nbsp;&nbsp;-- left, centre or right font
  562. <li><a href="#_SIZE">_SIZE</a>&nbsp;&nbsp;&nbsp;-- left, centre or right size
  563. <li><a href="#_CAPS">_CAPS</a>&nbsp;&nbsp;&nbsp;-- left, centre or right all caps
  564. <li><a href="#_COLOR">_COLOR</a>&nbsp;&nbsp;-- left, centre or right colour
  565. </ul>
  566. <li><a href="#HDRFTR_VERTICAL"><strong>VERTICAL PLACEMENT AND SPACING</strong></a>
  567. <ul>
  568. <li><a href="#HDRFTR_MARGIN">HEADER_MARGIN</a>
  569. <li><a href="#HDRFTR_GAP">HEADER_GAP</a>
  570. </ul>
  571. <li><a href="#HDRFTR_SEPARATOR"><strong>SEPARATOR RULE</strong></a>
  572. <ul>
  573. <li><a href="#HDRFTR_RULE">HEADER_RULE</a>
  574. <li><a href="#HDRFTR_RULE_GAP">HEADER_RULE_GAP</a>
  575. <li><a href="#HDRFTR_RULE_COLOR">HEADER_RULE_COLOR</a>
  576. </ul>
  577. </ul>
  578. <!---HDRFTR_STRINGS--->
  579. <hr width="66%" align="left">
  580. <a name="HDRFTR_STRINGS"><h3><u>Header/footer strings</u></h3></a>
  581. <p>
  582. <a name="HDRFTR_LEFT">
  583. <nobr>Macro: <strong>HEADER_LEFT</strong> &quot;&lt;text of header left&gt;&quot; | #</nobr>
  584. </a>
  585. <br>
  586. <a name="HDRFTR_CENTER">
  587. <nobr>Macro: <strong>HEADER_CENTER</strong> &quot;&lt;text of header centre&gt;&quot; | #</nobr>
  588. </a>
  589. <br>
  590. <a name="HDRFTR_RIGHT">
  591. <nobr>Macro: <strong>HEADER_RIGHT</strong> &quot;&lt;text of header right&gt;&quot; | #</nobr>
  592. </a>
  593. <p>
  594. To change the text (the &quot;string&quot;) of the left, centre,
  595. or right part of headers, invoke the appropriate macro above with
  596. the string you want. For example, <strong>mom</strong>, by default,
  597. prints the document's author in the header-left position. If your
  598. document has, say, two authors, and you want both their names to
  599. appear header-left, change <strong>HEADER_LEFT</strong> like this:
  600. <p>
  601. <pre>
  602. .HEADER_LEFT "R. Stallman, E. Raymond"
  603. </pre>
  604. Because the arguments to <strong>HEADER_LEFT, _CENTER,</strong>
  605. and <strong>_RIGHT</strong> are
  606. <a href="definitions.html#TERMS_STRINGARGUMENT">string arguments</a>,
  607. they must be enclosed in double-quotes.
  608. <p>
  609. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  610. with <strong>FOOTER_</strong> to change the strings in footers.
  611. <a name="HDRFTR_CENTER_PAD"><h3><u>*Padding the header/footer centre string</u></h3></a>
  612. <p>
  613. <nobr>Macro: <strong>HEADER_CENTER_PAD</strong> LEFT | RIGHT &lt;amount of space by which to pad centre string left or right&gt;</nobr>
  614. <br>
  615. <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
  616. <p>
  617. By default, <strong>mom</strong> centres the header centre string
  618. literally on the line length in effect for page headers. In some
  619. cases, notably when the header left or header right strings are
  620. particularly long, the effect isn't pretty. The offendingly long
  621. header left or right crowds, or even overprints, the header centre.
  622. That's where <strong>HEADER_CENTER_PAD</strong> comes in. With a
  623. bit of experimentation (yes, you have to preview the document), you
  624. can use <strong>HEADER_CENTER_PAD</strong> to move the header
  625. centre string left or right until it looks acceptably centred
  626. between the two other strings.
  627. <p>
  628. For example, say your document is an outline for a novel called "By
  629. the Shores of Lake Attica." You've told <strong>mom</strong>
  630. you want
  631. <p>
  632. &nbsp;&nbsp;&nbsp;&nbsp;<a href="docprocessing.html#DOCTYPE">DOCTYPE</a>
  633. <halign="center">
  634. <strong>NAMED</strong> "Outline"
  635. <p>
  636. but when you preview your work, you see that "Outline", in the
  637. centre of the page header, is uncomfortably close to the title,
  638. which is to the right of it. By invoking
  639. <p>
  640. <pre>
  641. .HEADER_CENTER_PAD RIGHT 3P
  642. </pre>
  643. you can scoot the word "Outline" over three
  644. <a href="definitions.html#TERMS_PICASPOINTS">picas</a>
  645. to the left (the padding's added to the right of the string)
  646. so that your head looks nicely spaced out. Invoking
  647. <strong>HEADER_CENTER_PAD</strong> with the <strong>LEFT</strong>
  648. argument obviously puts the padding on the left side of the string.
  649. <p>
  650. Most reassuring of all is that if you use
  651. <strong>HEADER_CENTER_PAD</strong> conjunction with
  652. <a href="rectoverso.html#RECTO_VERSO">RECTO_VERSO</a>,
  653. <strong>mom</strong> will pad the centre string appropriately left
  654. OR right, depending on which page you're on, without you having to
  655. tell her to do so.
  656. <p>
  657. <hr width="66%" align="left">
  658. <p>
  659. <a name="RESERVED_STRINGS"><h3><u>Using mom's &quot;reserved&quot; strings in header/footer definitions</u></h3></a>
  660. <p>
  661. As pointed out in the author's note in the introduction to
  662. headers/footers, headers and footers are something you don't
  663. normally have to worry much about. <strong>Mom</strong> usually
  664. knows what to do.
  665. <p>
  666. However, situations do arise where you need to manipulate what goes
  667. in the header/footer strings, setting and resetting them as you go
  668. along. A case where you might want to do this would be if you want
  669. to output endnotes at the end of each document in a series of
  670. <a href="rectoverso.html#COLLATE">collated</a>
  671. documents, and you want the word "Endnotes" to go in the header
  672. centre position of the endnotes, but want, say, the
  673. <a href="docprocessing.html#TITLE">TITLE</a>
  674. to go back into the centre position for the next output document.
  675. <p>
  676. In scenarios like the above, <strong>mom</strong> has a number of
  677. &quot;reserved&quot; strings that you can plug into the
  678. <strong>HEADER_LEFT, _CENTER</strong> and <strong>_RIGHT</strong>
  679. macros. They are:
  680. <p>
  681. <pre>
  682. \*[$TITLE] -- the argument passed to .TITLE
  683. \*[$DOCTITLE] -- the argument passed to .DOCTITLE
  684. \*[$AUTHOR_1] -- the first argument passed to .AUTHOR
  685. \*[$CHAPTER_STRING] -- the argument passed to .CHAPTER_STRING,
  686. if invoked, otherwise, "Chapter"
  687. \*[$CHAPTER] -- the argument (typically a number) passed
  688. to .CHAPTER
  689. \*[$CHAPTER_TITLE] -- the argument passed to .CHAPTER_TITLE
  690. </pre>
  691. Returning to the scenario above, first, you'd define a centre
  692. string for the endnotes page:
  693. <p>
  694. <pre>
  695. .HEADER_CENTER "Endnotes"
  696. </pre>
  697. Then, you'd output the endnotes:
  698. <p>
  699. <pre>
  700. .ENDNOTES
  701. </pre>
  702. Then, you'd prepare <strong>mom</strong> for the next document:
  703. <p>
  704. <pre>
  705. .COLLATE
  706. .TITLE "New Doc Title"
  707. .AUTHOR "Josephine Blough"
  708. </pre>
  709. Then, you'd redefine the header centre string using the reserved
  710. string \*[$TITLE], like this:
  711. <p>
  712. <pre>
  713. .HEADER_CENTER "\*[$TITLE]"
  714. </pre>
  715. And last, you'd do:
  716. <p>
  717. <pre>
  718. .START
  719. </pre>
  720. Voilà! Any argument you pass to <strong>TITLE</strong> from here
  721. on in (say, for subsequent documents) is back in the header centre
  722. position. Here's the whole routine again:
  723. <p>
  724. <pre>
  725. .HEADER_CENTER "Endnotes"
  726. .ENDNOTES
  727. .COLLATE
  728. .TITLE "New Doc Title"
  729. .AUTHOR "Josephine Blough"
  730. .HEADER_CENTER "\*[$TITLE]"
  731. .START
  732. </pre>
  733. If need be, you can concatenate the strings, as in the following
  734. example.
  735. <p>
  736. <pre>
  737. .HEADER_CENTER "\*[$CHAPTER_STRING] \*[$CHAPTER]"
  738. </pre>
  739. which, assuming a <strong>.CHAPTER_STRING</strong> of
  740. &quot;Chapter&quot; and a <strong>.CHAPTER</strong> of
  741. &quot;2&quot;, would put &quot;Chapter 2&quot; in the header centre
  742. position.
  743. <p>
  744. <a name="PAGE_NUMBER_SYMBOL">
  745. <h3><u>*Replacing header-left, -CENTER or -right with the page number</u></h3>
  746. </a>
  747. <p>
  748. If you would like to have the current page number to appear
  749. header-left, -center, or -right <em>instead</em> of a text
  750. string, invoke the appropriate macro, above, with the single
  751. argument <code>#</code> (the &quot;number&quot; or
  752. &quot;pound&quot; sign). Do <strong>NOT</strong> use
  753. double-quotes. For example,
  754. <p>
  755. <pre>
  756. .HEADER_CENTER #
  757. </pre>
  758. will print the current page number in the CENTER part of
  759. headers.
  760. <p>
  761. <a name="PAGE_NUMBER_INCL">
  762. <h3><u>*Including the page number in header-left, -CENTER or -right</u></h3>
  763. </a>
  764. <p>
  765. If you would like to <em>include</em> the current page number in
  766. the string you pass to <strong>HEADER_LEFT, _CENTER,</strong> or
  767. <strong>_RIGHT</strong>, use the special
  768. <a href="definitions.html#TERMS_INLINES">inline escape</a>
  769. <code>\*[PAGE#]</code> in the string argument.
  770. <p>
  771. For example, say you have a document that's ten pages long, and
  772. you want header-right to say "page &lt;whichever&gt; of 10",
  773. invoke <strong>HEADER_RIGHT</strong> as follows:
  774. <p>
  775. <pre>
  776. .HEADER_RIGHT "page \*[PAGE#] of 10"
  777. </pre>
  778. Header-right of page two will read &quot;page 2 of 10&quot;,
  779. header-right of page three will read &quot;page 3 of 10&quot;,
  780. and so on.
  781. <p>
  782. <hr>
  783. <!---HDRFTR_STYLE--->
  784. <a name="HDRFTR_STYLE"><h3><u>Header/footer style</u></h3></a>
  785. <p>
  786. <a name="HDRFTR_STYLE_GLOBAL"><strong>Global changes</strong></a>
  787. <p>
  788. The following macros allow you to make changes that affect all
  789. parts of the header at once.
  790. <p>
  791. Please note that <strong>HEADER_FAMILY</strong> and
  792. <strong>HEADER_FONT</strong> have no effect on
  793. <a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>.
  794. <p>
  795. <ul>
  796. <li><a href="#HDRFTR_GLOBAL_FAMILY">HEADER_FAMILY</a>
  797. <li><a href="#HDRFTR_GLOBAL_SIZE">HEADER_SIZE</a>
  798. <li><a href="#HDRFTR_PLAIN">HEADER_PLAIN</a>
  799. <li><a href="#HDRFTR_COLOR">HEADER_COLOR</a>
  800. </ul>
  801. <hr width="33%" align="left">
  802. <p>
  803. <a name="HDRFTR_GLOBAL_FAMILY">
  804. <nobr>Macro: <strong>HEADER_FAMILY</strong> &lt;family&gt;</nobr>
  805. </a>
  806. <p>
  807. By default, <strong>mom</strong> uses the default document family
  808. for headers. If you would like her to use another
  809. <a href="definitions.html#TERMS_FAMILY">family</a>
  810. in headers, invoke <strong>HEADER_FAMILY</strong> with the identifier
  811. for the family you want. The argument is the same as for the
  812. typesetting macro
  813. <a href="typesetting.html#FAMILY">FAMILY</a>.
  814. <p>
  815. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  816. with <strong>FOOTER_</strong> to change the footer family.
  817. <p>
  818. <hr width="33%" align="left">
  819. <p>
  820. <a name="HDRFTR_GLOBAL_SIZE">
  821. <nobr>Macro: <strong>HEADER_SIZE</strong> &lt;+|-number of points&gt;</nobr>
  822. <br>
  823. <em>*Argument is relative to the point size of type in paragraphs</em>
  824. </a>
  825. <p>
  826. By default, <strong>mom</strong> makes small adjustments to the size
  827. of each part of a header to achieve an aesthetically pleasing result.
  828. If you'd like her to continue to do so, but would like the overall
  829. appearance of headers to be a little smaller or a little larger,
  830. invoke <strong>HEADER_SIZE</strong> with + or - the number of
  831. <a href="definitions.html#TERMS_PICASPOINTS">points</a>
  832. (fractions allowed) by which you want her to in/decrease the size
  833. of headers. For example,
  834. <p>
  835. <pre>
  836. .HEADER_SIZE +.75
  837. </pre>
  838. increases the size of every part of a header by 3/4 of a point while
  839. respecting <strong>mom</strong>'s own little size changes.
  840. <p>
  841. See
  842. <a href="docelement.html#CONTROL_MACRO_ARGS">Arguments to the control macros</a>
  843. for an explanation of how control macros ending in
  844. <strong>_SIZE</strong> work.
  845. <p>
  846. <a name="FOOTER_GLOBAL_SIZE"></a>
  847. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  848. with <strong>FOOTER_</strong> to change the footer size.
  849. <p>
  850. <strong>ADDITIONAL NOTE:</strong> Normally, macros that control headers have no
  851. effect on
  852. <a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE TYPEWRITE</a>.
  853. <strong>HEADER_SIZE</strong> is an exception. While all parts of a
  854. header in <strong>PRINTSTYLE TYPEWRITE</strong> are always the same
  855. size, you can use <strong>HEADER_SIZE</strong> with <strong>PRINTSTYLE
  856. TYPEWRITE</strong> to reduce the header's overall point size.
  857. You'll most likely require this when the
  858. <a href="docprocessing.html#COPYSTYLE">COPYSTYLE</a>
  859. is <strong>DRAFT</strong>, since portions of the header may overprint
  860. if, say, the title of your document is very long.
  861. <p>
  862. <hr width="33%" align="left">
  863. <p>
  864. <a name="HDRFTR_PLAIN">
  865. Macro: <strong>HEADER_PLAIN</strong>
  866. </a>
  867. <p>
  868. By default, <strong>mom</strong> makes adjustments to the font,
  869. size, and capitalization style of each part of headers to achieve
  870. an aesthetically pleasing look. Should you wish to design your own
  871. headers from the ground up without worrying how changes to the various
  872. elements of header style interact with <strong>mom</strong>'s defaults,
  873. invoke <strong>HEADER_PLAIN</strong> by itself, with no argument.
  874. <strong>Mom</strong> will disable her default behaviour for headers,
  875. and reset all elements of header style to the same family, font,
  876. and point size as she uses in paragraphs.
  877. <p>
  878. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  879. with <strong>FOOTER_</strong> to disable <strong>mom</strong>'s
  880. default behaviour for the various elements of footer style.
  881. <p>
  882. <hr width="33%" align="left">
  883. <p>
  884. <a name="HDRFTR_COLOR">
  885. <nobr>Macro: <strong>HEADER_COLOR</strong> &lt;colorname&gt;</nobr>
  886. </a>
  887. <p>
  888. If you want your headers in a colour different from the document
  889. default (usually black), invoke <strong>HEADER_COLOR</strong> with
  890. the name of a colour pre-defined (or &quot;initialized&quot;) with
  891. <a href="color.html#NEWCOLOR">NEWCOLOR</a>
  892. or
  893. <a href="color.html#XCOLOR">XCOLOR</a>.
  894. <p>
  895. <strong>HEADER_COLOR</strong> will set all the parts of the header
  896. AND the header rule in the colour you give it as an argument. If
  897. you wish finer control over colour in headers, you can use
  898. <a href="#_COLOR">HEADER_&lt;POSITION&gt;_COLOR</a>
  899. to colourize each part of the header separately, as well as
  900. <a href="#HDRFTR_RULE_COLOR">HEADER_RULE_COLOR</a>
  901. to change the colour of the header rule.
  902. <p>
  903. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  904. with <strong>FOOTER_</strong> to colourize footers.
  905. <p>
  906. <hr width="66%" align="left">
  907. <p>
  908. <a name="HDRFTR_STYLE_PART"><strong>Part by part changes</strong></a>
  909. <p>
  910. <strong>NOTE:</strong> When using the following control macros,
  911. replace &quot;&lt;POSITION&gt;&quot; by <strong>LEFT, CENTER,</strong>
  912. or <strong>RIGHT</strong> as appropriate.
  913. <p>
  914. <ul>
  915. <li><a href="#_FAMILY">HEADER_&lt;POSITION&gt;_FAMILY</a>
  916. <li><a href="#_FONT">HEADER_&lt;POSITION&gt;_FONT</a>
  917. <li><a href="#_SIZE">HEADER_&lt;POSITION&gt;_SIZE</a>
  918. <li><a href="#_CAPS">HEADER_&lt;POSITION&gt;_CAPS</a>
  919. <li><a href="#_COLOR">HEADER_&lt;POSITION&gt;_COLOR</a>
  920. </ul>
  921. <hr width="33%" align="left">
  922. <p>
  923. <a name="_FAMILY">
  924. <nobr>Macro: <strong>HEADER_&lt;POSITION&gt;_FAMILY</strong> &lt;family&gt;</nobr>
  925. </a>
  926. <p>
  927. Use <strong>HEADER_&lt;POSITION&gt;_FAMILY</strong> to change the
  928. <a href="definitions.html#TERMS_FAMILY">family</a>
  929. of any part of headers. See
  930. <a href="docelement.html#CONTROL_MACRO_ARGS">Arguments to the control macros</a>
  931. for an explanation of how control macros ending in
  932. <strong>_FAMILY</strong> work.
  933. <p>
  934. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  935. with <strong>FOOTER_</strong> to change a footer part's family.
  936. <p>
  937. <hr width="33%" align="left">
  938. <p>
  939. <a name="_FONT">
  940. <nobr>Macro: <strong>HEADER_&lt;POSITION&gt;_FONT</strong> &lt;font&gt;</nobr>
  941. </a>
  942. <p>
  943. Use <strong>HEADER_&lt;POSITION&gt;_FONT</strong> to change the
  944. <a href="definitions.html#TERMS_FONT">font</a>
  945. of any part of headers. See
  946. <a href="docelement.html#CONTROL_MACRO_ARGS">Arguments to the control macros</a>
  947. for an explanation of how control macros ending in
  948. <strong>_FONT</strong> work.
  949. <p>
  950. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  951. with <strong>FOOTER_</strong> to change a footer part's font.
  952. <p>
  953. <hr width="33%" align="left">
  954. <p>
  955. <a name="_SIZE">
  956. <nobr>Macro: <strong>HEADER_&lt;POSITION&gt;_SIZE</strong> &lt;+|-number of points&gt;</nobr>
  957. </a>
  958. <p>
  959. Use <strong>HEADER_&lt;POSITION&gt;_SIZE</strong> to change the size of any
  960. part of headers (relative to the point size of type in
  961. paragraphs). See
  962. <a href="docelement.html#CONTROL_MACRO_ARGS">Arguments to the control macros</a>
  963. for an explanation of how control macros ending in
  964. <strong>_SIZE</strong> work.
  965. <p>
  966. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  967. with <strong>FOOTER_</strong> to change a footer part's size.
  968. <p>
  969. <hr width="33%" align="left">
  970. <p>
  971. <a name="_CAPS">
  972. <nobr>Macro: <strong>HEADER_&lt;POSITION&gt;_CAPS</strong> toggle</nobr>
  973. </a>
  974. <p>
  975. <strong>HEADER_&lt;POSITION&gt;_CAPS</strong> is a
  976. <a href="definitions.html#TERMS_TOGGLE">toggle macro</a>.
  977. If you want any part of headers to be set in all caps,
  978. regardless of the capitalization of that part's string as given
  979. to the
  980. <a href="docprocessing.html#REFERENCE_MACROS">reference macros</a>
  981. or as defined by you with the
  982. <a href="#HDRFTR_STRINGS">header string control macros</a>,
  983. simply invoke this macro (using the appropriate position) with no
  984. argument. If you wish to turn capitalization off (say, for the
  985. header-right string that <strong>mom</strong> capitalizes by
  986. default), invoke the argument with any argument (e.g. <strong>OFF,
  987. QUIT, END, X...</strong>).
  988. <p>
  989. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  990. with <strong>FOOTER_</strong> to change a footer part's
  991. capitalization style.
  992. <p>
  993. <hr width="33%" align="left">
  994. <p>
  995. <a name="_COLOR">
  996. <nobr>Macro: <strong>HEADER_&lt;POSITION&gt;_COLOR</strong> &lt;colorname&gt;</nobr>
  997. </a>
  998. <p>
  999. <strong>HEADER_&lt;POSITION&gt;_COLOR</strong> allows you to set a
  1000. colour for each of the three possible parts of a page header
  1001. separately. For example, say you want the right part of the header
  1002. (by default, the document title) in red, this is how you'd get it:
  1003. <p>
  1004. <pre>
  1005. .HEADER_RIGHT_COLOR red
  1006. </pre>
  1007. The other parts of the header will be in the default header colour
  1008. (usually black, but that can be changed with
  1009. <a href="#HDRFTR_COLOR">HEADER_COLOR</a>).
  1010. <p>
  1011. Remember that you have to define (or &quot;initialize&quot;) a
  1012. colour with
  1013. <a href="color.html#NEWCOLOR">NEWCOLOR</a>
  1014. or
  1015. <a href="color.html#XCOLOR">XCOLOR</a>
  1016. before you can use the colour.
  1017. <p>
  1018. If you create a
  1019. <a href="#USERDEF_HDRFTR">user-defined header</a>
  1020. with
  1021. <a href="#HDRFTR_RECTO">HEADER_RECTO</a>
  1022. or
  1023. <a href="#HDRFTR_VERSO">HEADER_VERSO</a>,
  1024. and you want various elements within the header to be colourized,
  1025. embed the colours in the string passed to <strong>HEADER_RECTO</strong>
  1026. or <strong>HEADER_VERSO</strong> with the
  1027. <a href="color.html#COLOR_INLINE">\*[&lt;colorname&gt;]</a>
  1028. <a href="definitions.html#TERMS_INLINES">inline escape</a>.
  1029. <p>
  1030. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  1031. with <strong>FOOTER_</strong> to set the colours for the various
  1032. elements of footers.
  1033. <p>
  1034. <hr>
  1035. <!---HDRFTR_VERTICAL--->
  1036. <a name="HDRFTR_VERTICAL">
  1037. <h2><u>Header/footer vertical placement and spacing</u></h2>
  1038. </a>
  1039. <p>
  1040. See
  1041. <a href="#VERTICAL_SPACING">Vertical placement and spacing of headers/footers</a>
  1042. for an explanation of how <strong>mom</strong> deals with
  1043. headers, footers, and top/bottom page margins.
  1044. <p>
  1045. <!---HDRFTR_MARGIN--->
  1046. <hr width="66%" align="left">
  1047. <p>
  1048. <a name="HDRFTR_MARGIN"></a>
  1049. <nobr>Macro: <strong>HEADER_MARGIN</strong> &lt;distance to baseline of header&gt;</nobr>
  1050. <br>
  1051. <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
  1052. <p>
  1053. Use <strong>HEADER_MARGIN</strong> to set the distance from the
  1054. top edge of the page to the
  1055. <a href="definitions.html#TERMS_BASELINE">baseline</a>
  1056. of type in headers. A unit of measure is required, and decimal
  1057. fractions are allowed.
  1058. <p>
  1059. <strong>Mom</strong>'s default header margin is 4-1/2
  1060. <a href="definitions.html#TERMS_PICASPOINTS">picas</a>,
  1061. but if you want a different margin, say, 1/2-inch, do
  1062. <p>
  1063. <pre>
  1064. .HEADER_MARGIN .5i
  1065. </pre>
  1066. If your document uses
  1067. <a href="definitions.html#TERMS_FOOTER">footers</a>,
  1068. replace <strong>HEADER_</strong>, above, with
  1069. <strong>FOOTER_</strong>. The argument to
  1070. <strong>FOOTER_MARGIN</strong> is the distance from the bottom
  1071. edge of the page to the baseline of type in footers.
  1072. <p>
  1073. <strong>Mom</strong>'s default footer margin is 3
  1074. <a href="definitions.html#TERMS_PICASPOINTS">picas</a>.
  1075. <a name="FOOTER_MARGIN"></a>
  1076. <p>
  1077. <strong>FOOTER MARGIN AND BOTTOM MARGIN -- VERY IMPORTANT!</strong>
  1078. <p>
  1079. <strong>Mom</strong> requires a footer margin for proper operation,
  1080. hence she sets one, even if you don't. (As stated above, her default
  1081. footer margin is 3-picas).
  1082. <p>
  1083. If you set a bottom margin for your document (with
  1084. <a href="typesetting.html#B_MARGIN">B_MARGIN</a>,
  1085. prior to
  1086. <a href="docprocessing.html#START">START</a>)
  1087. and the margin's too close to <strong>mom</strong>'s default
  1088. footer margin (or a footer margin you set yourself
  1089. with <strong>FOOTER_MARGIN</strong>), <strong>mom</strong> will
  1090. not print your footers; additionally, she'll give you a warning
  1091. and some advice on standard error. When this happens, you must
  1092. reset either <strong>B_MARGIN</strong> or
  1093. <strong>FOOTER_MARGIN</strong> so there's an adequate amount of
  1094. space for <strong>mom</strong> to print the bottom line of running
  1095. text and the footer.
  1096. <p>
  1097. If you see the warning even when footers and/or bottom-of-page page
  1098. numbering are disabled, set a nominal footer margin of 0 prior to
  1099. <a href="docprocessing.html#START">START</a>,
  1100. as in these examples.
  1101. <p>
  1102. <strong>Example 1</strong>
  1103. <p>
  1104. <pre>
  1105. &lt;reference macros, etc&gt;
  1106. .PAGINATION OFF
  1107. .B_MARGIN .25i
  1108. .FOOTER_MARGIN O
  1109. .START
  1110. </pre>
  1111. <strong>Example 2</strong>
  1112. <p>
  1113. <pre>
  1114. &lt;reference macros, etc&gt;
  1115. .HEADERS OFF
  1116. .PAGENUM_POS TOP RIGHT
  1117. .B_MARGIN .25i
  1118. .FOOTER_MARGIN O
  1119. .START
  1120. </pre>
  1121. <h3>A note on header/footer margins and page numbering</h3>
  1122. <strong>Mom</strong> uses HEADER_MARGIN</strong> and
  1123. <strong>FOOTER_MARGIN</strong> to establish the baseline
  1124. position of page numbers in addition to the baseline position of
  1125. headers and footers.
  1126. <p>
  1127. By default, page numbers appear at the bottom of the page, therefore
  1128. if you want the default position (bottom), but want to change the
  1129. baseline placement, use <strong>FOOTER_MARGIN</strong>. Conversely,
  1130. if page numbers are at the top of the page, either because you turned
  1131. <a href="#FOOTERS">FOOTERS</a>
  1132. on or because you instructed <strong>mom</strong> to put them
  1133. there with
  1134. <a href="#PAGENUM_POS">PAGENUM_POS</a>,
  1135. you'd use <strong>HEADER_MARGIN</strong> to change their
  1136. baseline placement.
  1137. <p>
  1138. <!---HDRFTR_GAP--->
  1139. <hr width="66%" align="left">
  1140. <p>
  1141. <a name="HDRFTR_GAP"></a>
  1142. <nobr>Macro: <strong>HEADER_GAP</strong> &lt;distance from header to start of running text&gt;</nobr>
  1143. <br>
  1144. <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
  1145. <p>
  1146. Use <strong>HEADER_GAP</strong> to set the distance from the
  1147. <a href="definitions.html#TERMS_BASELINE">baseline</a>
  1148. of type in headers to the start of
  1149. <a href="definitions.html#TERMS_RUNNING">running text</a>.
  1150. A unit of measure is required, and decimal fractions are allowed.
  1151. <p>
  1152. As explained in
  1153. <a href="#VERTICAL_SPACING">Vertical placement and spacing of headers/footers</a>,
  1154. <strong>HEADER_MARGIN + HEADER_GAP</strong> determine the
  1155. default vertical starting position of running text on the page
  1156. UNLESS you have given <strong>mom</strong> your own top margin
  1157. (with
  1158. <a href="typesetting.html#T_MARGIN">T_MARGIN</a>). If you give
  1159. a top margin, <strong>mom</strong> ignores
  1160. <strong>HEADER_GAP</strong>; running text starts at your stated
  1161. top margin.
  1162. <p>
  1163. <strong>Mom</strong>'s default header gap is 3
  1164. <a href="definitions.html#TERMS_PICASPOINTS">picas</a>,
  1165. but if you want a different gap, say, 2 centimetres, do
  1166. <p>
  1167. <pre>
  1168. .HEADER_GAP 2c
  1169. </pre>
  1170. If your document uses
  1171. <a href="definitions.html#TERMS_FOOTER">footers</a>,
  1172. replace <strong>HEADER_</strong>, above, with
  1173. <strong>FOOTER_</strong>. The argument to
  1174. <strong>FOOTER_GAP</strong> is the distance from the
  1175. baseline of type in footers to the last baseline of running text
  1176. on the page.
  1177. <p>
  1178. As explained in
  1179. <a href="#VERTICAL_SPACING">Vertical placement and spacing of headers/footers</a>,
  1180. <strong>FOOTER_MARGIN + FOOTER_GAP</strong> determine the
  1181. default vertical end position of running text on the page
  1182. UNLESS you have given <strong>mom</strong> a bottom margin
  1183. (with
  1184. <a href="typesetting.html#B_MARGIN">B_MARGIN</a>). If you give
  1185. a bottom margin, <strong>mom</strong> ignores
  1186. <strong>FOOTER_GAP</strong>; running text ends at your stated
  1187. bottom margin.
  1188. <p>
  1189. <strong>Mom</strong>'s default footer gap is 3
  1190. <a href="definitions.html#TERMS_PICASPOINTS">picas</a>.
  1191. <p>
  1192. <strong>NOTE:</strong> <strong>Mom</strong> uses
  1193. <strong>HEADER_GAP</strong> and
  1194. <strong>FOOTER_GAP</strong> to establish the start and end baseline
  1195. positions of running text with respect to both headers and footers
  1196. AND page numbers. If you wish to change the gap between
  1197. the last line of running text and a bottom page number, use
  1198. <strong>FOOTER_GAP</strong>. If page numbers are at the top of the
  1199. page, change the gap between the number and the first line of running
  1200. text with <strong>HEADER_GAP</strong>.
  1201. <p>
  1202. <hr>
  1203. <!---HDRFTR_SEPARATOR--->
  1204. <a name="HDRFTR_SEPARATOR">
  1205. <h2><u>Header/footer separator rule</u></h2>
  1206. </a>
  1207. <p>
  1208. The header/footer separator rule is a modest horizontal rule,
  1209. set slightly below the header (or above the footer), that runs
  1210. the length of the
  1211. <a href="definitions.html#TERMS_HEADER">header</a>
  1212. and helps separate it visually from
  1213. <a href="definitions.html#TERMS_RUNNING">running text</a>. If
  1214. you don't want the rule, you can turn it off. If you want it,
  1215. but at a different vertical position relative to the header (or
  1216. footer), you can alter its placement.
  1217. <p>
  1218. <ul>
  1219. <li><a href="#HDRFTR_RULE">HEADER_RULE</a> -- on or off
  1220. <li><a href="#HDRFTR_RULE_GAP">HEADER_RULE_GAP</a> -- distance of rule from header
  1221. </ul>
  1222. <!---HDRFTR_RULE--->
  1223. <hr width="66%" align="left">
  1224. <p>
  1225. <a name="HDRFTR_RULE"></a>
  1226. <nobr>Macro: <strong>HEADER_RULE</strong> toggle</nobr>
  1227. <p>
  1228. By default, <strong>mom</strong> prints a header separator rule
  1229. underneath headers (or above footers). If you don't want the
  1230. rule, turn it off by invoking <strong>HEADER_RULE</strong> with any
  1231. argument (<strong>OFF, QUIT, END, X...</strong>), e.g.
  1232. <p>
  1233. <pre>
  1234. .HEADER_RULE OFF
  1235. </pre>
  1236. To turn the rule (back) on, invoke <strong>HEADER_RULE</strong>
  1237. without any argument.
  1238. <p>
  1239. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  1240. with <strong>FOOTER_</strong> to enable/disable the printing of
  1241. the footer separator rule. (Most likely, if you're using
  1242. <a href="#FOOTERS">FOOTERS</a>, you'll want it off.)
  1243. <p>
  1244. <!---HDRFTR_RULE_GAP--->
  1245. <hr width="66%" align="left">
  1246. <p>
  1247. <a name="HDRFTR_RULE_GAP"></a>
  1248. <nobr>Macro: <strong>HEADER_RULE_GAP</strong> distance of rule beneath header</nobr>
  1249. <br>
  1250. <em>*Requires a <a href="definitions.html#TERMS_UNITOFMEASURE">unit of measure</a></em>
  1251. <p>
  1252. <strong>HEADER_RULE_GAP</strong> is the distance from the
  1253. <a href="definitions.html#TERMS_BASELINE">baseline</a>
  1254. of type in headers to the rule underneath. A unit of measure is
  1255. required, and decimal fractions are allowed. Please note that
  1256. <strong>HEADER_RULE_GAP</strong> has no effect on
  1257. <a href="#HEADER_GAP">HEADER_GAP</a>
  1258. (i.e. <strong>HEADER_RULE_GAP</strong> is NOT added to
  1259. <strong>HEADER_GAP</strong> when <strong>mom</strong> calculates
  1260. the space between headers and the start of
  1261. <a href="definitions.html#TERMS_RUNNING">running text</a>).
  1262. <p>
  1263. By default, the header rule gap is 4
  1264. <a href="definitions.html#TERMS_PICASPOINTS">points</a>.
  1265. If you'd like to change it to, say, 1/4
  1266. <a href="definitions.html#TERMS_EM">em</a>, do
  1267. <p>
  1268. <pre>
  1269. .HEADER_RULE_GAP .25m
  1270. </pre>
  1271. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  1272. with <strong>FOOTER_</strong> if you're using
  1273. <a href="definitions.html#TERMS_FOOTER">footers</a>
  1274. and want to change the separator rule gap. In footers, the gap
  1275. is measured from the top of the tallest
  1276. <a href="definitions.html#TERMS_ASCENDER">ascender</a>
  1277. in the footer.
  1278. <p>
  1279. <strong>ADDITIONAL NOTE:</strong> When using
  1280. <a href="#HDRFTR_RECTOVERSO">FOOTER_RECTO</a>
  1281. and
  1282. <a href="#HDRFTR_RECTOVERSO">FOOTER_VERSO</a>,
  1283. make sure that the default size for footers
  1284. (<a href="#FOOTER_GLOBAL_SIZE">FOOTER_SIZE</a>)
  1285. is set to the largest size of type that will be used in the
  1286. footer or <strong>mom</strong> may not get the rule gap right.
  1287. Inline changes to the size of type in
  1288. <strong>FOOTER_RECTO</strong> and <strong>FOOTER_VERSO</strong>
  1289. should always be negative (smaller) than the default.
  1290. <p>
  1291. <!---HDRFTR_RULE_COLOR--->
  1292. <hr width="66%" align="left">
  1293. <p>
  1294. <a name="HDRFTR_RULE_COLOR"></a>
  1295. <nobr>Macro: <strong>HEADER_RULE_COLOR</strong> &lt;colorname&gt;</nobr>
  1296. <p>
  1297. If you wish to change the colour of the header rule, invoke
  1298. <strong>HEADER_RULE_COLOR</strong> with the name of a colour
  1299. pre-defined (or &quot;initialized&quot;) with
  1300. <a href="color.html#NEWCOLOR">NEWCOLOR</a>
  1301. or
  1302. <a href="color.html#XCOLOR">XCOLOR</a>.
  1303. <p>
  1304. Please note that <strong>HEADER_RULE_COLOR</strong> overrides the
  1305. colour set with
  1306. <a href="#HDRFTR_COLOR">HDRFTR_COLOR</a>,
  1307. so that it's possible to have the heads entirely in, say, blue (set
  1308. with <strong>HEADER_COLOR</strong>), and the header rule in, say,
  1309. red.
  1310. <p>
  1311. <strong>NOTE:</strong> Replace <strong>HEADER_</strong>, above,
  1312. with <strong>FOOTER_</strong> to change the colour of the footer
  1313. rule.
  1314. <p>
  1315. <hr>
  1316. <a name="PAGINATION">
  1317. <h2><u>Pagination</u></h2>
  1318. </a>
  1319. <p>
  1320. By default, <strong>mom</strong> paginates documents. Page numbers
  1321. appear in the bottom margin of the page, centred between two hyphens.
  1322. As with all elements of <strong>mom</strong>'s document processing,
  1323. most aspects of pagination style can be altered to suit your taste
  1324. with control macros.
  1325. <p>
  1326. <a name="INDEX_PAGINATION">
  1327. <h3><u>Pagination macros list</u></h3>
  1328. </a>
  1329. <ul>
  1330. <li><a href="#PAGINATE">PAGINATE</a> -- pagination on or off
  1331. <li><a href="#PAGENUMBER">PAGENUMBER</a> -- user-defined (starting) page number
  1332. <li><a href="#PAGENUM_STYLE">PAGENUM_STYLE</a> -- digits, roman numerals, etc
  1333. <li><a href="#PAGENUM_ON_FIRST_PAGE">PAGENUM_ON_FIRST_PAGE</a> -- applies only when footers are enabled
  1334. <li><a href="#DRAFT_WITH_PAGENUMBER">DRAFT_WITH_PAGENUMBER</a> -- attach draft/revision information to page numbers
  1335. <li><a href="#PAGINATE_CONTROL">Control macros</a>
  1336. </ul>
  1337. <p>
  1338. <!---PAGINATE--->
  1339. <hr width="66%" align="left">
  1340. <p>
  1341. <a name="PAGINATE"></a>
  1342. <nobr>Macro: <strong>PAGINATE</strong> toggle</nobr>
  1343. <br>
  1344. Alias: <strong>PAGINATION</strong>
  1345. <p>
  1346. By default, <strong>mom</strong> paginates documents (in the bottom
  1347. margin). If you'd prefer she not paginate, turn pagination off
  1348. by invoking <strong>PAGINATE</strong> with any argument (<strong>OFF,
  1349. NO, QUIT, END, X...</strong>), e.g.
  1350. <p>
  1351. <pre>
  1352. .PAGINATE NO
  1353. </pre>
  1354. To (re)start pagination, invoke <strong>PAGINATE</strong>
  1355. without any argument.
  1356. <p>
  1357. <!---PAGENUMBER--->
  1358. <hr width="66%" align="left">
  1359. <p>
  1360. <a name="PAGENUMBER"></a>
  1361. <nobr>Macro: <strong>PAGENUMBER</strong> &lt;number&gt;</nobr>
  1362. <p>
  1363. As is to be expected, pagination of documents begins at page 1.
  1364. If you'd prefer that <strong>mom</strong> begin with a different
  1365. number on the first page of a document, invoke
  1366. <strong>PAGENUMBER</strong> with the number you want.
  1367. <p>
  1368. <strong>PAGENUMBER</strong> need not be used only to give
  1369. <strong>mom</strong> a "first page" number. It can be used at
  1370. any time to tell <strong>mom</strong> what number you want a
  1371. page to have. Subsequent page numbers will, of course, be
  1372. incremented by 1 from that number.
  1373. <p>
  1374. <!---PAGENUM_STYLE--->
  1375. <hr width="66%" align="left">
  1376. <p>
  1377. <a name="PAGENUM_STYLE"></a>
  1378. <nobr>Macro: <strong>PAGENUM_STYLE</strong> DIGIT | ROMAN | roman | ALPHA | alpha</nobr>
  1379. <p>
  1380. <strong>PAGENUM_STYLE</strong> lets you tell
  1381. <strong>mom</strong> what kind of page numbering you want.
  1382. <p>
  1383. <table valign="baseline" summary="pagenumstyle">
  1384. <tr><td>DIGIT<td align="center" width="15">=<td>Arabic digits (1, 2, 3...)
  1385. <tr><td>ROMAN<td align="center" width="15">=<td>upper case roman numerals (I, II, III...)
  1386. <tr><td>roman<td align="center" width="15">=<td>lower case roman numerals (i, ii, iii...)
  1387. <tr><td>ALPHA<td align="center" width="15">=<td>upper case letters (A, B, C...)
  1388. <tr><td>alpha<td align="center" width="15">=<td>lower case letters (a, b, c...)</td></tr>
  1389. </table>
  1390. <p>
  1391. <!---PAGENUM_ON_FIRST_PAGE--->
  1392. <hr width="66%" align="left">
  1393. <p>
  1394. <a name="PAGENUM_ON_FIRST_PAGE"></a>
  1395. <nobr>Macro: <strong>PAGENUM_ON_FIRST_PAGE</strong> toggle</nobr>
  1396. <p>
  1397. This macro applies only if you've enabled
  1398. <a href="#FOOTERS">FOOTERS</a>.
  1399. If <strong>FOOTERS</strong> are on, <strong>mom</strong> automatically
  1400. places page numbers at the tops of pages except on
  1401. the first page of a document (or on first pages after
  1402. <a href="rectoverso.html#COLLATE">COLLATE</a>). If you'd
  1403. like the page number to appear on &quot;first&quot; pages when
  1404. footers are on, invoke <strong>PAGENUM_ON_FIRST_PAGE</strong> with
  1405. no argument. Any other argument turns the feature off (<strong>OFF,
  1406. QUIT, END, X...</strong>).
  1407. <p>
  1408. As with most of the <a
  1409. href="definitions.html#TERMS_CONTROLMACRO">control macros</a>,
  1410. <strong>PAGENUM_ON_FIRST_PAGE</strong> can be invoked at any time,
  1411. meaning that if you don't want a page number on the very first
  1412. page of a document, but do want one on pages that appear after
  1413. <strong>COLLATE</strong>, omit it before the first
  1414. <a href="docprocessing.html#START">START</a>
  1415. of the document, then invoke it either just before or after your
  1416. first <strong>COLLATE</strong>.
  1417. <p>
  1418. <!---DRAFT_WITH_PAGENUMBER--->
  1419. <hr width="66%" align="left">
  1420. <p>
  1421. <a name="DRAFT_WITH_PAGENUMBER"></a>
  1422. Macro: <strong>DRAFT_WITH_PAGENUMBER</strong>
  1423. <p>
  1424. Sometimes, in
  1425. <a href="docprocessing.html#COPYSTYLE">COPYSTYLE DRAFT</a>,
  1426. the CENTER part of page headers gets overcrowded because of the draft
  1427. and revision information that go there by default.
  1428. <strong>DRAFT_WITH_PAGENUMBER</strong> is one way to
  1429. fix the problem.
  1430. <p>
  1431. Invoked without an argument, <strong>DRAFT_WITH_PAGENUMBER</strong>
  1432. removes draft/revision information from the page headers and attaches
  1433. it instead to the document's page numbering, in the form
  1434. <p>
  1435. <pre>
  1436. Draft #, Rev. # / &lt;pagenumber&gt;
  1437. </pre>
  1438. See the note in
  1439. <a href="docprocessing.html#COPYSTYLE">COPYSTYLE DRAFT</a>
  1440. for other ways of dealing with crowded page headers when formatting
  1441. draft-style copy.
  1442. <p>
  1443. <hr>
  1444. <!---PAGINATE_CONTROL--->
  1445. <a name="PAGINATE_CONTROL"><h3><u>Pagination control macros</u></h3></a>
  1446. <ol>
  1447. <li><a href="#PAGINATE_GENERAL">Family/font/size/colour</a>
  1448. <li><a href="#PAGENUM_POS">Page number position (vertical and horizontal)</a>
  1449. <li><a href="#PAGENUM_HYPHENS">Enclose page numbers with hyphens (on or off)</a>
  1450. </ol>
  1451. <br>
  1452. <a name="PAGINATE_GENERAL"><h3><u>1. Page number family/font/size/colour</u></h3></a>
  1453. <p>
  1454. See
  1455. <a href="#CONTROL_MACRO_ARGS">Arguments to the control macros</a>.
  1456. <p>
  1457. <pre>
  1458. .PAGENUM_FAMILY default = prevailing document family; default is Times Roman
  1459. .PAGENUM_FONT default = roman
  1460. .PAGENUM_SIZE default = 0 (i.e. same size as paragraph text)
  1461. .PAGENUM_COLOR default= black
  1462. </pre>
  1463. <a name="PAGENUM_POS"><h3><u>2. Page number position</u></h3></a>
  1464. <p>
  1465. <nobr>Macro: <strong>PAGENUM_POS</strong> TOP | BOTTOM&nbsp;&nbsp;LEFT | CENTER | RIGHT</nobr>
  1466. <p>
  1467. Use <strong>PAGENUM_POS</strong> to change the default position of
  1468. automatic page numbering. <strong>PAGENUM_POS</strong> requires
  1469. <em>two</em> arguments: a vertical position (TOP or BOTTOM) and a
  1470. horizontal position (LEFT or CENTER or RIGHT).
  1471. <p>
  1472. For example, if you turn both
  1473. <a href="definitions.html#TERMS_HEADER">headers</a>
  1474. and
  1475. <a href="definitions.html#TERMS_FOOTER">footers</a>
  1476. off (with <code>.HEADERS OFF</code> and <code>.FOOTERS
  1477. OFF</code>) and you want <strong>mom</strong> to number your
  1478. pages at the top right position, enter
  1479. <p>
  1480. <pre>
  1481. .PAGENUM_POS TOP RIGHT
  1482. </pre>
  1483. <a name="PAGENUM_HYPHENS"><h3><u>3. Enclose page numbers with hyphens (on or off)</u></h3></a>
  1484. <p>
  1485. By default, <strong>mom</strong> encloses page numbers between hyphens.
  1486. If you don't want this behaviour, invoke the macro
  1487. <strong>PAGENUM_HYPHENS</strong> with any argument (<strong>OFF, QUIT, END, X...</strong>),
  1488. like this:
  1489. <p>
  1490. <pre>
  1491. .PAGENUM_HYPHENS OFF
  1492. </pre>
  1493. If, for some reason, you want to turn page number hyphens back
  1494. on, invoke the macro without an argument.
  1495. <p>
  1496. <hr>
  1497. <a href="rectoverso.html#TOP">Next</a>&nbsp;&nbsp;
  1498. <a href="docelement.html#TOP">Prev</a>&nbsp;&nbsp;
  1499. <a href="#TOP">Top</a>&nbsp;&nbsp;
  1500. <a href="toc.html">Back to Table of Contents</a>
  1501. </body>
  1502. </html>