1GROFF_MM(7)            Miscellaneous Information Manual            GROFF_MM(7)
2
3
4

NAME

6       groff_mm - groff mm macros
7

SYNOPSIS

9       groff -mm [ options... ] [ files... ]
10

DESCRIPTION

12       The  groff  mm  macros  are  intended  to be compatible with the DWB mm
13       macros with the following limitations:
14
15       ·      No Bell Labs localisms are implemented.
16
17       ·      The macros OK and PM are not implemented.
18
19       ·      groff mm does not support cut marks.
20
21       mm is intended to support easy localization.  Use mmse  as  an  example
22       how  to  adapt  the  output  format  to a national standard.  Localized
23       strings        are        collected         in         the         file
24       `/usr/share/groff/1.22.2/tmac/xx.tmac', where xx denotes the two-letter
25       code for the language,  as  defined  in  the  ISO  639  standard.   For
26       Swedish, this is `sv.tmac' – not `se', which is the ISO 3166 two-letter
27       code for the country (as used for the output format localization).
28
29       A file called locale or country_locale is read after the initialization
30       of  the  global  variables.   It  is therefore possible to localize the
31       macros with a different company name and so on.
32
33       In this manual, square brackets are used to show optional arguments.
34
35   Number registers and strings
36       Many macros can be controlled by number registers and strings.  A  num‐
37       ber register is assigned with the nr command:
38
39              .nr XXX [±]n [i]
40
41       XXX  is  the  name  of the register, n is the value to be assigned, and
42       i is the increment value for auto-increment.  n  can  have  a  plus  or
43       minus  sign  as  a  prefix  if an increment or decrement of the current
44       value is wanted.  (Auto-increment or auto-decrement occurs if the  num‐
45       ber register is used with a plus or minus sign, \n+[XXX] or \n-[XXX].)
46
47       Strings are defined with ds.
48
49              .ds YYY string
50
51       The  string is assigned everything to the end of the line, even blanks.
52       Initial blanks in  string  should  be  prefixed  with  a  double-quote.
53       (Strings are used in the text as \*[YYY].)
54
55   Special formatting of number registers
56       A  number  register is printed with normal digits if no format has been
57       given.  Set the format with af:
58
59              .af R c
60
61       R is the name of the register, c is the format.
62
63              Form   Sequence
64              1      0, 1, 2, 3, ...
65              001    000, 001, 002, 003, ...
66
67              i      0, i, ii, iii, iv, ...
68              I      0, I, II, III, IV, ...
69              a      0, a, b, c, ..., z, aa, ab, ...
70              A      0, A, B, C, ..., Z, AA, AB, ...
71
72   Fonts
73       In mm, the fonts (or rather, font styles) R (normal), I  (italic),  and
74       B  (bold)  are  hardwired  to font positions 1, 2, and 3, respectively.
75       Internally, font positions are used for backwards compatibility.   From
76       a  practical point of view it doesn't make a big difference – a differ‐
77       ent font family can still be selected with a call to the  .fam  request
78       or  using  groff's  -f  command line option.  On the other hand, if you
79       want to replace just, say, font B, you have  to  replace  the  font  at
80       position 2 (with a call to `.fp 2 ...').
81
82   Macros
83       )E level text
84              Add heading text text to the table of contents with level, which
85              is either 0 or in the range 1 to 7.  See also .H.  This macro is
86              used for customized tables of contents.
87
88       1C [1] Begin  one-column  processing.   A 1 as an argument disables the
89              page break.  Use wide footnotes, small footnotes  may  be  over‐
90              printed.
91
92       2C     Begin  two-column  processing.   Splits the page in two columns.
93              It is a special case of MC.  See also 1C.
94
95       AE     Abstract end, see AS.
96
97       AF [name-of-firm]
98              Author's firm, should be called before AU, see also COVER.
99
100       AL [type [text-indent [1]]]
101              Start auto-increment list.  Items are  numbered  beginning  with
102              one.  The type argument controls the format of numbers.
103
104                     Arg   Description
105                     1     Arabic (the default)
106                     A     Upper-case letters (A-Z)
107                     a     Lower-case letters (a-z)
108                     I     Upper-case roman
109                     i     Lower-case roman
110
111              text-indent  sets  the  indentation  and  overrides Li.  A third
112              argument prohibits printing of a blank line before each item.
113
114       APP name text
115              Begin an appendix with name name.  Automatic  naming  occurs  if
116              name  is "".  The appendices start with A if automatic naming is
117              used.  A new page is ejected, and a header is also  produced  if
118              the  number variable Aph is non-zero.  This is the default.  The
119              appendix always appears in the `List of contents'  with  correct
120              page numbers.  The name `APPENDIX' can be changed by setting the
121              string App to the desired text.  The string Apptxt contains  the
122              current appendix text.
123
124       APPSK name pages text
125              Same  as  .APP,  but  the page number is incremented with pages.
126              This is used when diagrams or other non-formatted documents  are
127              included as appendices.
128
129       AS [arg [indent]]
130              Abstract  start.  Indentation is specified in `ens', but scaling
131              is  allowed.   Argument  arg  controls  where  the  abstract  is
132              printed.
133
134              Arg   Placement
135              0     Abstract  is  printed  on page 1 and on the cover sheet if
136                    used in the released-paper style (MT 4), otherwise  it  is
137                    printed on page 1 without a cover sheet.
138              1     Abstract is only printed on the cover sheet (MT 4 only).
139              2     Abstract is printed only on the cover sheet (other than MT
140                    4 only).  The cover sheet is printed without  a  need  for
141                    CS.
142
143              An  abstract  is  not printed at all in external letters (MT 5).
144              The indent parameter controls the indentation of  both  margins,
145              otherwise normal text indentation is used.
146
147       AST [title]
148              Abstract title.  Default is `ABSTRACT'.  Sets the text above the
149              abstract text.
150
151       AT title1 [title2 [...]]
152              Author's title.  AT must appear just after each AU.   The  title
153              shows up after the name in the signature block.
154
155       AU [name [initials [loc [dept [ext [room [arg [arg [arg]]]]]]]]]
156              Author  information.  Specifies the author of the memo or paper,
157              and is printed on the cover sheet and on other  similar  places.
158              AU  must  not appear before TL.  The author information can con‐
159              tain initials, location, department, telephone  extension,  room
160              number or name and up to three extra arguments.
161
162       AV [name [1]]
163              Approval  signature.   Generates an approval line with place for
164              signature and date.  The string `APPROVED:' can be changed  with
165              variable  Letapp; it is replaced with an empty lin if there is a
166              second argument.  The string `Date' can be changed with variable
167              Letdate.
168
169       AVL [name]
170              Letter signature.  Generates a line with place for signature.
171
172       B [bold-text [prev-font-text [bold [...]]]]
173              Begin boldface.  No limit on the number of arguments.  All argu‐
174              ments are concatenated to one word; the first, third and  so  on
175              is printed in boldface.
176
177       B1     Begin  box (as the ms macro).  Draws a box around the text.  The
178              text is indented one character, and  the  right  margin  is  one
179              character shorter.
180
181       B2     End box.  Finishes the box started with B1.
182
183       BE     End bottom block, see BS.
184
185       BI [bold-text [italic-text [bold-text [...]]]]
186              Bold-italic.  No limit on the number of arguments, see B.
187
188       BL [text-indent [1]]
189              Start bullet list.  Initializes a list with a bullet and a space
190              in the beginning of each list item (see LI).  text-indent  over‐
191              rides  the  default  indentation of the list items set by number
192              register Pi.  A third argument prohibits  printing  of  a  blank
193              line before each item.
194
195       BR [bold-text [roman-text [bold-text [...]]]]
196              Bold-roman.  No limit on the number of arguments.
197
198       BS     Bottom block start.  Begins the definition of a text block which
199              is printed at the bottom of each page.  The block ends with BE.
200
201       BVL text-indent [mark-indent [1]]
202              Start of broken variable-item list.  Broken  variable-item  list
203              has  no fixed mark, it assumes that every LI has a mark instead.
204              The text always begins at the next line after the  mark.   text-
205              indent  sets  the  indentation  to the text, and mark-indent the
206              distance from the current indentation  to  the  mark.   A  third
207              argument prohibits printing of a blank line before each item.
208
209       COVER [arg]
210              Begin  a  coversheet  definition.   It  is important that .COVER
211              appears before any normal text.  This macro uses  arg  to  build
212              the  filename `/usr/share/groff/1.22.2/tmac/mm/arg.cov'.  There‐
213              fore it is possible to create unlimited types of  cover  sheets.
214              `ms.cov'  is  supposed  to look like the ms cover sheet.  .COVER
215              requires a .COVEND at the end of the cover  definition.   Always
216              use this order of the cover macros:
217
218                     .COVER
219                     .TL
220                     .AF
221                     .AU
222                     .AT
223                     .AS
224                     .AE
225                     .COVEND
226
227              However, only .TL and .AU are required.
228
229       COVEND Finish  the  cover  description and print the cover page.  It is
230              defined in the cover file.
231
232       DE     Display end.  Ends a block of text or display that  begins  with
233              DS or DF.
234
235       DF [format [fill [rindent]]]
236              Begin floating display (no nesting allowed).  A floating display
237              is saved in a queue and is printed in the order  entered.   For‐
238              mat, fill, and rindent are the same as in DS.  Floating displays
239              are controlled by the two number registers De and Df.
240
241              De register
242
243                     0   Nothing special, this is the default.
244                     1   A page eject occurs after each printed display,  giv‐
245                         ing  only  one display per page and no text following
246                         it.
247
248              Df register
249
250                     0   Displays are printed at the end of each section (when
251                         section-page  numbering  is  active) or at the end of
252                         the document.
253                     1   A new display is printed on the current page if there
254                         is  enough  space, otherwise it is printed at the end
255                         of the document.
256                     2   One display is printed at the top  of  each  page  or
257                         column (in multi-column mode).
258                     3   Print  one  display  if there is enough space for it,
259                         otherwise it is printed at the top of the  next  page
260                         or column.
261                     4   Print  as  many displays as possible in a new page or
262                         column.  A page break occurs between each display  if
263                         De is not zero.
264
265
266
267                     5   Fill  the  current  page  with  displays and the rest
268                         beginning at a new page  or  column.   (This  is  the
269                         default.)   A  page break occurs between each display
270                         if De is not zero.
271
272       DL [text-indent [1 [1]]]
273              Dash list start.  Begins a list where each item is printed after
274              a dash.  text-indent changes the default indentation of the list
275              items set by number register Pi.  A second argument prevents  an
276              empty  line  between  each list item.  See LI.  A third argument
277              prohibits printing of a blank line before each item.
278
279       DS [format [fill [rindent]]]
280              Static display start.  Begins collection of text until DE.   The
281              text  is  printed together on the same page, unless it is longer
282              than the height of the page.  DS can be nested arbitrarily.
283
284              format
285
286                     ""     No indentation.
287                     none   No indentation.
288                     L      No indentation.
289                     I      Indent text with the value of number register Si.
290                     C      Center each line.
291                     CB     Center the whole display as a block.
292                     R      Right-adjust the lines.
293                     RB     Right-adjust the whole display as a block.
294
295              The values `L', `I', `C', and `CB' can also be specified as `0',
296              `1', `2', and `3', respectively, for compatibility reasons.
297
298              fill
299
300                     ""     Line-filling turned off.
301                     none   Line-filling turned off.
302                     N      Line-filling turned off.
303                     F      Line-filling turned on.
304
305              `N' and `F' can also be specified as `0' and `1', respectively.
306
307              By  default,  an empty line is printed before and after the dis‐
308              play.  Setting number register Ds to 0 prevents  this.   rindent
309              shortens the line length by that amount.
310
311       EC [title [override [flag [refname]]]]
312              Equation  title.   Sets  a  title for an equation.  The override
313              argument changes the numbering.
314
315              flag
316
317                     none   override is a prefix to the number.
318                     0      override is a prefix to the number.
319                     1      override is a suffix to the number.
320                     2      override replaces the number.
321
322              EC uses the number register Ec as a counter.  It is possible  to
323              use  .af to change the format of the number.  If number register
324              Of is 1, the format of title uses a dash instead of a dot  after
325              the number.
326
327              The  string  Le  controls  the  title  of the List of Equations;
328              default is `LIST OF EQUATIONS'.  The List of Equations  is  only
329              printed  if  number  register  Le  is 1.  The default is 0.  The
330              string Liec contains  the  word  `Equation',  which  is  printed
331              before the number.  If refname is used, then the equation number
332              is saved with .SETR, and can be retrieved with `.GETST refname'.
333
334              Special handling of the title occurs if EC is used inside DS/DE;
335              it is not affected by the format of DS.
336
337       EF [arg]
338              Even-page  footer,  printed just above the normal page footer on
339              even pages.  See PF.
340
341              This macro defines string EOPef.
342
343       EH [arg]
344              Even-page header, printed just below the normal page  header  on
345              even pages.  See PH.
346
347              This macro defines string TPeh.
348
349       EN     Equation end, see EQ.
350
351       EOP    End-of-page user-defined macro.  This macro is called instead of
352              the normal printing of the footer.  The macro is executed  in  a
353              separate environment, without any trap active.  See TP.
354
355              strings available to EOP
356
357              EOPf    argument of PF
358              EOPef   argument of EF
359              EOPof   argument of OF
360
361       EPIC [-L] width height [name]
362              Draw  a box with the given width and height.  It also prints the
363              text name or a default string if name is not specified.  This is
364              used  to  include  external  pictures; just give the size of the
365              picture.  -L left-adjusts the picture; the default is to center.
366              See PIC.
367
368       EQ [label]
369              Equation  start.  EQ/EN are the delimiters for equations written
370              for eqn(1).  EQ/EN must be inside of a DS/DE pair, except if  EQ
371              is used to set options for eqn only.  The label argument appears
372              at the right margin of the equation, centered vertically  within
373              the DS/DE block, unless number register Eq is 1.  Then the label
374              appears at the left margin.
375
376              If there are multiple EQ/EN blocks within a single  DS/DE  pair,
377              only the last equation label (if any) is printed.
378
379       EX [title [override [flag [refname]]]]
380              Exhibit  title.   The arguments are the same as for EC.  EX uses
381              the number register Ex as a counter.  The string Lx controls the
382              title  of  the  List of Exhibits; default is `LIST OF EXHIBITS'.
383              The List of Exhibits is only printed if number register Lx is 1,
384              which  is  the  default.   The  string  Liex  contains  the word
385              `Exhibit', which is printed before the number.   If  refname  is
386              used,  the  exhibit  number  is  saved  with  .SETR,  and can be
387              retrieved with `.GETST refname'.
388
389              Special handling of the title occurs if EX is used inside DS/DE;
390              it is not affected by the format of DS.
391
392       FC [closing]
393              Print  `Yours  very  truly,'  as a formal closing of a letter or
394              memorandum.  The argument  replaces  the  default  string.   The
395              default is stored in string variable Letfc.
396
397       FD [arg [1]]
398              Footnote  default  format.   Controls  the hyphenation (hyphen),
399              right margin justification (adjust), and indentation of footnote
400              text  (indent).   It  can  also  change  the label justification
401              (ljust).
402
403                     arg   hyphen   adjust   indent   ljust
404                     0     no       yes      yes      left
405                     1     yes      yes      yes      left
406                     2     no       no       yes      left
407                     3     yes      no       yes      left
408                     4     no       yes      no       left
409                     5     yes      yes      no       left
410                     6     no       no       no       left
411                     7     yes      no       no       left
412                     8     no       yes      yes      right
413                     9     yes      yes      yes      right
414                     10    no       no       yes      right
415                     11    yes      no       yes      right
416
417              An argument greater  than  or  equal  to  11  is  considered  as
418              value 0.  Default for mm is 10.
419
420       FE     Footnote end.
421
422       FG [title [override [flag [refname]]]]
423              Figure  title.   The  arguments are the same as for EC.  FG uses
424              the number register Fg as a counter.  The string Lf controls the
425              title of the List of Figures; default is `LIST OF FIGURES'.  The
426              List of Figures is only printed if  number  register  Lf  is  1,
427              which  is  the default.  The string Lifg contains the word `Fig‐
428              ure', which is printed before the number.  If refname  is  used,
429              then the figure number is saved with .SETR, and can be retrieved
430              with `.GETST refname'.
431
432              Special handling of the title occurs if FG is used inside DS/DE,
433              it is not affected by the format of DS.
434
435       FS [label]
436              Footnote start.  The footnote is ended by FE.  By default, foot‐
437              notes are automatically numbered; the  number  is  available  in
438              string  F.   Just  add  \*F in the text.  By adding label, it is
439              possible to have other number or names on the footnotes.   Foot‐
440              notes  in  displays  are  now possible.  An empty line separates
441              footnotes; the height of the line is controlled by number regis‐
442              ter Fs, default value is 1.
443
444       GETHN refname [varname]
445              Include the header number where the corresponding `SETR refname'
446              was placed.  This is displayed  as  `X.X.X.'  in  pass  1.   See
447              INITR.   If varname is used, GETHN sets the string variable var‐
448              name to the header number.
449
450       GETPN refname [varname]
451              Include the page number where the corresponding  `SETR  refname'
452              was  placed.  This is displayed as `9999' in pass 1.  See INITR.
453              If varname is used, GETPN sets the stringvariable varname to the
454              page number.
455
456       GETR refname
457              Combine  GETHN  and  GETPN with the text `chapter' and `, page'.
458              The string Qrf contains the text for the cross reference:
459
460                     .ds Qrf See chapter \\*[Qrfh], page \\*[Qrfp].
461
462              Qrf may be changed to support other languages.  Strings Qrfh and
463              Qrfp  are  set  by  GETR and contain the page and header number,
464              respectively.
465
466       GETST refname [varname]
467              Include the string saved with  the  second  argument  to  .SETR.
468              This  is  a  dummy  string in pass 1.  If varname is used, GETST
469              sets it to the saved string.  See INITR.
470
471       H level [heading-text [heading-suffix]]
472              Numbered section heading.  Section  headers  can  have  a  level
473              between  1  and 14; level 1 is the top level.  The text is given
474              in heading-text, and must be surrounded by double quotes  if  it
475              contains  spaces.   heading-suffix is added to the header in the
476              text but not in the table of contents.  This  is  normally  used
477              for  footnote  marks and similar things.  Don't use \*F in head‐
478              ing-suffix, it doesn't work.  A manual label must be  used,  see
479              FS.
480
481              A  call  to  the  paragraph macro P directly after H is ignored.
482              H takes care of spacing and indentation.
483
484              Page ejection before heading
485
486                     Number register Ej  controls  page  ejection  before  the
487                     heading.   By default, a level-one heading gets two blank
488                     lines before it; higher levels only get one.  A new  page
489                     is ejected before each first-level heading if number reg‐
490                     ister Ej is 1.  All levels below or equal the value of Ej
491                     get a new page.  Default value for Ej is 0.
492
493              Heading break level
494
495                     A  line  break  occurs  after  the heading if the heading
496                     level is less or equal to number  register  Hb.   Default
497                     value is 2.
498
499              Heading space level
500
501                     A blank line is inserted after the heading if the heading
502                     level is less or equal to number  register  Hs.   Default
503                     value is 2.
504
505                     Text follows the heading on the same line if the level is
506                     greater than both Hb and Hs.
507
508              Post-heading indent
509
510                     Indentation of the text after the heading  is  controlled
511                     by number register Hi.  Default value is 0.
512
513                     Hi
514
515                     0   The text is left-justified.
516                     1   Indentation  of  the text follows the value of number
517                         register Pt , see P.
518                     2   The text is lined up with the first word of the head‐
519                         ing.
520
521              Centered section headings
522
523                     All  headings whose level is equal or below number regis‐
524                     ter Hc and also less than or equal to Hb or Hs  are  cen‐
525                     tered.
526
527              Font control of the heading
528
529                     The  font  of  each heading level is controlled by string
530                     HF.  It contains a font number  or  font  name  for  each
531                     level.  Default value is
532
533                            2 2 2 2 2 2 2 2 2 2 2 2 2 2
534
535                     (all headings in italic).  This could also be written as
536
537                            I I I I I I I I I I I I I I
538
539                     Note that some other implementations use 3 3 2 2 2 2 2 as
540                     the default value.  All omitted values  are  presumed  to
541                     have value 1.
542
543              Point size control
544
545                     String HP controls the point size of each heading, in the
546                     same way as HF controls the font.  A value of  0  selects
547                     the default point size.  Default value is
548
549                            0 0 0 0 0 0 0 0 0 0 0 0 0 0
550
551                     Beware that only the point size changes, not the vertical
552                     size.  The latter can be controlled by the user-specified
553                     macros HX and/or HZ.
554
555              Heading counters
556
557                     Fourteen  number registers named H1 up to H14 contain the
558                     counter for each heading level.  The values  are  printed
559                     using Arabic numerals; this can be changed with the macro
560                     HM (see below).  All marks are concatenated before print‐
561                     ing.   To  avoid this, set number register Ht to 1.  This
562                     only prints the current heading counter at each heading.
563
564              Automatic table of contents
565
566                     All headings whose level is equal or below number  regis‐
567                     ter  Cl are saved to be printed in the table of contents.
568                     Default value is 2.
569
570              Special control of the heading, user-defined macros
571
572                     The following macros can be defined by the user to get  a
573                     finer  control  of vertical spacing, fonts, or other fea‐
574                     tures.  Argument level is the level-argument to H, but  0
575                     for unnumbered headings (see HU).  Argument rlevel is the
576                     real level; it is set to number register  Hu  for  unnum‐
577                     bered  headings.  Argument heading-text is the text argu‐
578                     ment to H and HU.
579
580                     HX level rlevel heading-text
581                            This macro is called just before the  printing  of
582                            the  heading.   The following registers are avail‐
583                            able for HX.  Note that HX may alter }0,  }2,  and
584                            ;3.
585
586                            }0 (string)
587                                   Contains  the  heading mark plus two spaces
588                                   if rlevel is non-zero, otherwise empty.
589
590                            ;0 (register)
591                                   Contains the position of the text after the
592                                   heading.  0 means that the text should fol‐
593                                   low the heading on the same line,  1  means
594                                   that  a  line break should occur before the
595                                   text, and 2 means that a blank line  should
596                                   separate the heading and the text.
597
598                            }2 (string)
599                                   Contains  two  spaces  if register ;0 is 0.
600                                   It is used to separate the heading from the
601                                   text.   The  string  is empty if ;0 is non-
602                                   zero.
603
604                            ;3 (register)
605                                   Contains the needed space  in  units  after
606                                   the  heading.   Default is 2v.  Can be used
607                                   to change things like numbering (}0),  ver‐
608                                   tical  spacing  (}2),  and the needed space
609                                   after the heading.
610
611                     HY dlevel rlevel heading-text
612                            This macro is called after size and font  calcula‐
613                            tions and might be used to change indentation.
614
615                     HZ dlevel rlevel heading-text
616                            This  macro  is  called  after the printing of the
617                            heading, just before H or HU exits.  Can  be  used
618                            to change the page header according to the section
619                            heading.
620
621       HC [hyphenation-character]
622              Set hyphenation character.  Default value is  `\%'.   Resets  to
623              the  default  if  called  without  argument.  Hyphenation can be
624              turned off by setting number register Hy to 0 at  the  beginning
625              of the file.
626
627       HM [arg1 [arg2 [... [arg14]]]]
628              Heading  mark  style.  Controls the type of marking for printing
629              of the heading counters.  Default is 1 for all levels.
630
631              Argument
632
633              1      Arabic numerals.
634              0001   Arabic numerals with leading zeroes, one or more.
635              A      upper-case alphabetic
636              a      lower-case alphabetic
637              I      upper-case roman numerals
638              i      lower-case roman numerals
639              ""     Arabic numerals.
640
641       HU heading-text
642              Unnumbered section header.  HU behaves like H at  the  level  in
643              number register Hu.  See H.
644
645       HX dlevel rlevel heading-text
646              User-defined  heading  exit.   Called  just  before printing the
647              header.  See H.
648
649       HY dlevel rlevel heading-text
650              User-defined heading exit.   Called  just  before  printing  the
651              header.  See H.
652
653       HZ dlevel rlevel heading-text
654              User-defined  heading  exit.   Called  just  after  printing the
655              header.  See H.
656
657       I [italic-text [prev-font-text [italic-text [...]]]]
658              Italic.  Changes the font to italic if called without arguments.
659              With  one  argument  it sets the word in italic.  With two argu‐
660              ments it concatenates them and sets the first word in italic and
661              the  second in the previous font.  There is no limit on the num‐
662              ber of argument; all are concatenated.
663
664       IA [addressee-name [title]]
665              Begin specification of the addressee and addressee's address  in
666              letter  style.  Several names can be specified with empty IA/IE-
667              pairs, but only one address.  See LT.
668
669       IB [italic-text [bold-text [italic-text [...]]]]
670              Italic-bold.  Even arguments are printed in italic, odd in bold‐
671              face.  See I.
672
673       IE     End the address specification after IA.
674
675       INITI type filename [macro]
676              Initialize  the new index system and set the filename to collect
677              index lines in with IND.  Argument  type  selects  the  type  of
678              index:  page  number, header marks or both.  The default is page
679              numbers.
680
681              It is also possible to create a macro that  is  responsible  for
682              formatting  each  row; just add the name of the macro as a third
683              argument.  The macro is then called  with  the  index  as  argu‐
684              ment(s).
685
686              type
687
688              N   Page numbers
689              H   Header marks
690              B   Both  page  numbers  and  header marks, separated with a tab
691                  character.
692
693       INITR filename
694              Initialize the cross reference  macros.   Cross  references  are
695              written  to  stderr  and are supposed to be redirected into file
696              `filename.qrf'.  Requires two passes with groff; this is handled
697              by  a  separate  program  called mmroff(1).  This program exists
698              because groff(1) by default deactivates  the  unsafe  operations
699              that are required by INITR.  The first pass looks for cross ref‐
700              erences, and the second one includes them.  INITR  can  be  used
701              several times, but it is only the first occurrence of INITR that
702              is active.
703
704              See also SETR, GETPN, and GETHN.
705
706       IND arg1 [arg2 [...]]
707              Write a line in the index file selected by INITI with all  argu‐
708              ments and the page number or header mark separated by tabs.
709
710                     Examples
711
712                     arg1\tpage number
713                     arg1\targ2\tpage number
714                     arg1\theader mark
715                     arg1\tpage number\theader mark
716
717       INDP   Print the index by running the command specified by string vari‐
718              able Indcmd, which has `sort -t\t' as the default  value.   INDP
719              reads  the output from the command to form the index, by default
720              in two columns (this can be changed  by  defining  TYIND).   The
721              index  is  printed with string variable Index as header, default
722              is `INDEX'.  One-column  processing  is  reactivated  after  the
723              list.   INDP  calls  the  user-defined  macros TXIND, TYIND, and
724              TZIND if defined.  TXIND is called before  printing  the  string
725              `INDEX',  TYIND is called instead of printing `INDEX', and TZIND
726              is called after the printing and should take care  of  restoring
727              to normal operation again.
728
729       ISODATE [0]
730              Change  the predefined date string in DT to ISO-format, this is,
731              `YYYY-MM-DD'.  This can also be done by adding  -rIso=1  on  the
732              command line.  Reverts to old date format if argument is 0.
733
734       IR [italic-text [roman-text [italic-text [...]]]]
735              Italic-roman.   Even  arguments  are  printed  in italic, odd in
736              roman.  See I.
737
738       LB text-indent mark-indent pad type [mark [LI-space [LB-space]]]
739              List-begin macro.  This is the common macro used for all  lists.
740              text-indent  is the number of spaces to indent the text from the
741              current indentation.
742
743              pad and mark-indent control where to put the mark.  The mark  is
744              placed  within the mark area, and mark-indent sets the number of
745              spaces before this area.  By default it is  0.   The  mark  area
746              ends where the text begins.  The start of the text is still con‐
747              trolled by text-indent.
748
749              The mark is left-justified within the mark area if pad is 0.  If
750              pad  is  greater than 0, mark-indent is ignored, and the mark is
751              placed pad spaces before the  text.   This  right-justifies  the
752              mark.
753
754              If  type  is  0 the list either has a hanging indentation or, if
755              argument mark is given, the string mark as a mark.
756
757              If type is greater than 0 automatic numbering occurs, using ara‐
758              bic numbers if mark is empty.  mark can then be any of `1', `A',
759              `a', `I', or `i'.
760
761              type selects one of six possible ways to display the mark.
762
763              type
764
765                     1   x.
766                     2   x)
767                     3   (x)
768                     4   [x]
769                     5   <x>
770                     6   {x}
771
772              Every item in the list  gets  LI-space  number  of  blank  lines
773              before them.  Default is 1.
774
775              LB itself prints LB-space blank lines.  Default is 0.
776
777       LC [list-level]
778              List-status  clear.  Terminates all current active lists down to
779              list-level, or 0 if no argument is given.  This is used by H  to
780              clear any active list.
781
782       LE [1] List end.  Terminates the current list.  LE outputs a blank line
783              if an argument is given.
784
785       LI [mark [1|2]]
786              List item preceding every item in a list.  Without argument,  LI
787              prints  the mark determined by the current list type.  By giving
788              LI one argument, it uses that as the mark  instead.   Two  argu‐
789              ments  to  LI makes mark a prefix to the current mark.  There is
790              no separating space between the prefix and the mark if the  sec‐
791              ond  argument is `2' instead of `1'.  This behaviour can also be
792              achieved by setting number  register  Limsp  to  zero.   A  zero
793              length mark makes a hanging indentation instead.
794
795              A  blank  line is printed before the list item by default.  This
796              behaviour can be controlled by number register Ls.   Pre-spacing
797              occurs  for  each  list level less than or equal to Ls.  Default
798              value is 99.  There is no nesting limit.
799
800              The indentation can  be  changed  through  number  register  Li.
801              Default is 6.
802
803              All  lists  begin  with  a list initialization macro, LB.  There
804              are, however, seven predefined list types to make  lists  easier
805              to use.  They all call LB with different default values.
806
807                     AL    Automatically Incremented List
808                     ML    Marked List
809                     VL    Variable-Item List
810                     BL    Bullet List
811                     DL    Dash List
812                     RL    Reference List
813                     BVL   Broken Variable List.
814
815              These  lists  are described at other places in this manual.  See
816              also LB.
817
818       LT [arg]
819              Format a letter in one of four different styles depending on the
820              argument.  See also section INTERNALS.
821
822                     Arg   Style
823                     BL    Blocked.    Date  line,  return  address,  writer's
824                           address and closing begins at  the  center  of  the
825                           line.  All other lines begin at the left margin.
826                     SB    Semi-blocked.   Same  as  blocked,  except that the
827                           first line in every paragraph is indented five spa‐
828                           ces.
829                     FB    Full-blocked.  All lines begin at the left margin.
830                     SP    Simplified.   Almost  the  same as the full-blocked
831                           style.  Subject and the writer's identification are
832                           printed in all-capital.
833
834       LO type [arg]
835              Specify  options  in  letter  (see  .LT).  This is a list of the
836              standard options:
837
838                     CN   Confidential notation.  Prints `CONFIDENTIAL' on the
839                          second  line  below  the  date  line.   Any argument
840                          replaces `CONFIDENTIAL'.  See also  string  variable
841                          LetCN.
842                     RN   Reference  notation.   Prints `In reference to:' and
843                          the argument two lines below  the  date  line.   See
844                          also string variable LetRN.
845                     AT   Attention.   Prints  `ATTENTION:'  and  the argument
846                          below the inside address.  See also string  variable
847                          LetAT.
848                     SA   Salutation.  Prints `To Whom It May Concern:' or the
849                          argument if  it  was  present.   The  salutation  is
850                          printed  two  lines  below  the inside address.  See
851                          also string variable LetSA.
852                     SJ   Subject line.  Prints the argument as  subject  pre‐
853                          fixed  with  `SUBJECT:'  two  lines below the inside
854                          address, except in letter type `SP', where the  sub‐
855                          ject  is  printed in all-capital without any prefix.
856                          See also string variable LetSJ.
857
858       MC column-size [column-separation]
859              Begin multiple columns.  Return to normal with 1C.   MC  creates
860              as many columns as the current line length permits.  column-size
861              is the width of each column, and column-separation is the  space
862              between two columns.  Default separation is column-size/15.  See
863              also 1C.
864
865       ML mark [text-indent [1]]
866              Marked list start.  The mark argument  is  printed  before  each
867              list  item.   text-indent  sets  the indent and overrides Li.  A
868              third argument prohibits printing of a blank  line  before  each
869              item.
870
871       MT [arg [addressee]]
872              Memorandum  type.   The  argument  arg  is part of a filename in
873              `/usr/share/groff/1.22.2/tmac/mm/*.MT'.  Memorandum types 0 to 5
874              are  supported,  including  type `string' (which gets internally
875              mapped to type 6).  addressee just sets a variable, used in  the
876              AT&T macros.
877
878              arg
879
880                     0   Normal memorandum, no type printed.
881                     1   Memorandum with `MEMORANDUM FOR FILE' printed.
882                     2   Memorandum with `PROGRAMMER'S NOTES' printed.
883                     3   Memorandum with `ENGINEER'S NOTES' printed.
884                     4   Released paper style.
885                     5   External letter style.
886
887              See also COVER/COVEND, a more flexible type of front page.
888
889       MOVE y-pos [x-pos [line-length]]
890              Move  to  a  position,  setting  page offset to x-pos.  If line-
891              length is not given, the difference between current and new page
892              offset  is used.  Use PGFORM without arguments to return to nor‐
893              mal.
894
895       MULB cw1 space1 [cw2 space2 [cw3 ...]]
896              Begin a special multi-column mode.  All columns widths  must  be
897              specified.   The  space  between  the  columns must be specified
898              also.  The last column does not need any space definition.  MULB
899              starts  a  diversion, and MULE ends the diversion and prints the
900              columns.  The unit for the width and space arguments is `n', but
901              MULB  accepts  all  normal unit specifications like `c' and `i'.
902              MULB operates in a separate environment.
903
904       MULN   Begin the next column.  This is the only way to switch the  col‐
905              umn.
906
907       MULE   End the multi-column mode and print the columns.
908
909       nP [type]
910              Print numbered paragraph with header level two.  See .P.
911
912       NCOL   Force printing to the next column.  Don't use this together with
913              the MUL* macros, see 2C.
914
915       NS [arg [1]]
916              Print  different  types  of  notations.   The  argument  selects
917              between  the  predefined type of notations.  If the second argu‐
918              ment is available, then the argument becomes  the  entire  nota‐
919              tion.   If  the argument doesn't select a predefined type, it is
920              printed as `Copy (arg) to'.  It is possible to add more standard
921              notations, see the string variables Letns and Letnsdef.
922
923                     Arg    Notation
924                     none   Copy To
925                     ""     Copy To
926                     1      Copy To (with att.) to
927                     2      Copy To (without att.) to
928                     3      Att.
929                     4      Atts.
930                     5      Enc.
931                     6      Encs.
932                     7      Under separate cover
933                     8      Letter to
934                     9      Memorandum to
935                     10     Copy (with atts.) to
936                     11     Copy (without atts.) to
937                     12     Abstract Only to
938                     13     Complete Memorandum to
939                     14     CC
940
941       ND new-date
942              New  date.   Overrides the current date.  Date is not printed if
943              new-date is an empty string.
944
945       OF [arg]
946              Odd-page footer, a line printed just above  the  normal  footer.
947              See EF and PF.
948
949              This macro defines string EOPof.
950
951       OH [arg]
952              Odd-page  header,  a  line printed just below the normal header.
953              See EH and PH.
954
955              This macro defines string TPoh.
956
957       OP     Make sure that the following text is printed at the  top  of  an
958              odd-numbered  page.   Does not output an empty page if currently
959              at the top of an odd page.
960
961       P [type]
962              Begin new paragraph.  P without argument produces left-justified
963              text, even the first line of the paragraph.  This is the same as
964              setting type to 0.  If the argument is 1, the first line of text
965              following P is indented by the number of spaces in number regis‐
966              ter Pi, by default 5.
967
968              Instead of giving an argument to P it is  possible  to  set  the
969              paragraph type in number register Pt.  Using 0 and 1 is the same
970              as adding that value to P.  A value of 2 indents all paragraphs,
971              except  after headings, lists, and displays (this value can't be
972              used as an argument to P itself).
973
974              The space between two paragraphs is controlled by number  regis‐
975              ter Ps, and is 1 by default (one blank line).
976
977       PGFORM [linelength [pagelength [pageoffset [1]]]]
978              Set  line  length,  page length, and/or page offset.  This macro
979              can be used for special formatting, like letter heads and other.
980              It  is  normally  the  first command in a file, though it is not
981              necessary.  PGFORM can be used without arguments to reset every‐
982              thing after a MOVE call.  A line break is done unless the fourth
983              argument is given.  This can be used to avoid the page number on
984              the first page while setting new width and length.  (It seems as
985              if this macro sometimes doesn't work too well.  Use the  command
986              line arguments to change line length, page length, and page off‐
987              set instead.)
988
989       PGNH   No header is printed on the next page.  Used to get rid  of  the
990              header  in  letters  or other special texts.  This macro must be
991              used before any text to inhibit the page  header  on  the  first
992              page.
993
994       PIC [-L] [-C] [-R] [-I n] filename [width [height]]
995              Include a PostScript file in the document.  The macro depends on
996              mmroff(1) and INITR.  The arguments -L, -C, -R, and -I n  adjust
997              the  picture  or  indent  it.  The optional width and height can
998              also be given to resize the picture.
999
1000       PE     Picture end.  Ends a picture for pic(@MAN1EXT).
1001
1002       PF [arg]
1003              Page footer.  PF sets the line to be printed at  the  bottom  of
1004              each  page.  Empty by default.  See PH for the argument specifi‐
1005              cation.
1006
1007              This macro defines string EOPf.
1008
1009       PH [arg]
1010              Page header, a line printed at the top of each page.  The  argu‐
1011              ment should be specified as
1012
1013                     "'left-part'center-part'right-part'"
1014
1015              where  left-part,  center-part, and right-part are printed left-
1016              justified, centered, and right justified, respectively.   Within
1017              the  argument to PH, the character `%' is changed to the current
1018              page number.  The default argument is
1019
1020                     "''- % -''"
1021
1022              which gives the page number between two dashes.
1023
1024              This macro defines string TPh.
1025
1026       PS     Picture start (from pic).  Begins a picture for pic(1).
1027
1028       PX     Page header user-defined exit.  This macro is called just  after
1029              the printing of the page header in no-space mode.
1030
1031       R      Roman.  Return to roman font, see also I.
1032
1033       RB [roman-text [bold-text [roman-text [...]]]]
1034              Roman-bold.   Even  arguments are printed in roman, odd in bold‐
1035              face.  See I.
1036
1037       RD [prompt [diversion [string]]]
1038              Read from standard input to diversion and/or string.   The  text
1039              is  saved  in  a  diversion named diversion.  Recall the text by
1040              writing the name of the diversion after a dot on an empty  line.
1041              A  string  is also defined if string is given.  Diversion and/or
1042              prompt can be empty ("").
1043
1044       RF     Reference end.  Ends a reference definition and returns to  nor‐
1045              mal processing.  See RS.
1046
1047       RI [roman-text [italic-text [roman-text [...]]]]
1048              Print even arguments in roman, odd in italic.  See I.
1049
1050       RL [text-indent[1]]
1051              Reference list start.  Begins a list where each item is preceded
1052              with an automatically incremented number between  square  brack‐
1053              ets.  text-indent changes the default indentation.
1054
1055       RP [arg1 [arg2]]
1056              Produce  reference  page.  This macro can be used if a reference
1057              page is wanted somewhere in the document.  It is not  needed  if
1058              TC  is  used to produce a table of contents.  The reference page
1059              is then printed automatically.
1060
1061              The reference counter is not reset if arg1 is 1.
1062
1063              arg2 tells RP whether to eject a page or not.
1064
1065              arg2
1066
1067                     0   The reference page is printed on a separate page.
1068                     1   Do not eject page after the list.
1069                     2   Do not eject page before the list.
1070                     3   Do not eject page before and after the list.
1071
1072              The reference items are separated by a blank line.  Setting num‐
1073              ber register Ls to 0 suppresses the line.
1074
1075              The  string  Rp  contains the reference page title and is set to
1076              `REFERENCES' by default.  The  number  register  Rpe  holds  the
1077              default value for the second argument of RP; it is initially set
1078              to 0.
1079
1080       RS [string-name]
1081              Begin an automatically numbered reference definition.   Put  the
1082              string  \*(Rf  where  the reference mark should be and write the
1083              reference between RS/RF at next new  line  after  the  reference
1084              mark.  The reference number is stored in number register :R.  If
1085              string-name is given, a string with that  name  is  defined  and
1086              contains  the  current reference mark.  The string can be refer‐
1087              enced as \*[string-name] later in the text.
1088
1089       S [size [spacing]]
1090              Set point size and vertical spacing.  If any argument  is  equal
1091              to  `P', the previous value is used.  A `C' means current value,
1092              and `D' the default value.  If `+' or `-'  is  used  before  the
1093              value,  the current value is incremented or decremented, respec‐
1094              tively.
1095
1096       SA [arg]
1097              Set right-margin justification.  Justification is turned  on  by
1098              default.   No argument or value `0' turns off justification, and
1099              `1' turns on justification.
1100
1101       SETR refname [string]
1102              Remember the current header and page number as  refname.   Saves
1103              string  if  string is defined.  string is retrieved with .GETST.
1104              See INITR.
1105
1106       SG [arg [1]]
1107              Signature line.  Prints the authors  name(s)  after  the  formal
1108              closing.   The  argument  is  appended  to  the  reference data,
1109              printed at either the first or last author.  The reference  data
1110              is  the  location,  department, and initials specified with .AU.
1111              It is printed at the first author  if  the  second  argument  is
1112              given,  otherwise  at the last.  No reference data is printed if
1113              the author(s) is specified through .WA/.WE.  See section  INTER‐
1114              NALS.
1115
1116       SK [pages]
1117              Skip  pages.   If pages is 0 or omitted, a skip to the next page
1118              occurs unless it is already at the top of a page.  Otherwise  it
1119              skips pages pages.
1120
1121       SM string1 [string2 [string3]]
1122              Make  a  string  smaller.   If string2 is given, string1 is made
1123              smaller and string2 stays  at  normal  size,  concatenated  with
1124              string1.   With three arguments, everything is concatenated, but
1125              only string2 is made smaller.
1126
1127       SP [lines]
1128              Space vertically.  lines can have any scaling factor, like  `3i'
1129              or  `8v'.   Several SP calls in a line only produces the maximum
1130              number of lines, not the sum.  SP  is  ignored  also  until  the
1131              first  text line in a page.  Add \& before a call to SP to avoid
1132              this.
1133
1134       TAB    Reset tabs to every 5n.  Normally used to reset any previous tab
1135              positions.
1136
1137       TB [title [override [flag [refname]]]]
1138              Table title.  The arguments are the same as for EC.  TB uses the
1139              number register Tb as a counter.  The  string  Lt  controls  the
1140              title  of the List of Tables; default value is `LIST OF TABLES'.
1141              The List of Tables is only printed if number register Lt  is  1,
1142              which  is  the  default.  The string Litb contains the word `TA‐
1143              BLE', which is printed before the number.
1144
1145              Special handling of the title occurs if TB is used inside DS/DE,
1146              it is not affected by the format of DS.
1147
1148       TC [slevel [spacing [tlevel [tab [h1 [h2 [h3 [h4 [h5]]]]]]]]]
1149              Table of contents.  This macro is normally used as the last line
1150              of the document.  It generates a table of contents with headings
1151              up  to the level controlled by number register Cl.  Note that Cl
1152              controls the saving of headings, it has nothing to do  with  TC.
1153              Headings  with  a level less than or equal to slevel get spacing
1154              number of lines before them.  Headings with a level less than or
1155              equal  to  tlevel  have  their page numbers right-justified with
1156              dots or spaces separating the text and the page number.   Spaces
1157              are  used  if  tab  is greater than zero, dots otherwise.  Other
1158              headings have the page number directly at the end of the heading
1159              text (ragged-right).
1160
1161              The rest of the arguments is printed, centered, before the table
1162              of contents.
1163
1164              The user-defined macros TX and TY are used if TC is called  with
1165              at most four arguments.  TX is called before the printing of the
1166              string `CONTENTS', and TY is called instead  of  printing  `CON‐
1167              TENTS'.
1168
1169              Equivalent  macros  can  be defined for list of figures, tables,
1170              equations and exhibits by defining TXxx or  TYxx,  where  xx  is
1171              `Fg', `TB', `EC', or `EX', respectively.
1172
1173              String  Ci can be set to control the indentations for each head‐
1174              ing-level.  It must be scaled, like
1175
1176                     .ds Ci .25i .5i .75i 1i 1i
1177
1178              By default, the indentation is controlled by the maximum  length
1179              of headings in each level.
1180
1181              The  string  variables Lifg, Litb, Liex, Liec, and Licon contain
1182              `Figure',  `TABLE',  `Exhibit',  `Equation',   and   `CONTENTS',
1183              respectively.  These can be redefined to other languages.
1184
1185       TE     Table end.  See TS.
1186
1187       TH [N] Table  header.   See TS.  TH ends the header of the table.  This
1188              header is printed again if a page break  occurs.   Argument  `N'
1189              isn't implemented yet.
1190
1191       TL [charging-case-number [filing-case-number]]
1192              Begin  title  of  memorandum.   All  text  up  to the next AU is
1193              included in the title.   charging-case-number  and  filing-case-
1194              number are saved for use in the front page processing.
1195
1196       TM [num1 [num2 [...]]]
1197              Technical  memorandum  numbers used in .MT.  An unlimited number
1198              of arguments may be given.
1199
1200       TP     Top-of-page user-defined macro.  This macro is called instead of
1201              the  normal page header.  It is possible to get complete control
1202              over the header.  Note  that  the  header  and  the  footer  are
1203              printed  in  a  separate environment.  Line length is preserved,
1204              though.  See EOP.
1205
1206              strings available to TP
1207
1208              TPh    argument of PH
1209              TPeh   argument of EH
1210              TPoh   argument of OH
1211
1212       TS [H] Table start.  This is the start  of  a  table  specification  to
1213              tbl(1).   TS ends with TE.  Argument `H' tells mm that the table
1214              has a header.  See TH.
1215
1216       TX     User-defined table of contents exit.  This macro is called  just
1217              before TC prints the word `CONTENTS'.  See TC.
1218
1219       TY     User-defined  table  of  contents  exit.   This  macro is called
1220              instead of printing `CONTENTS'.  See TC.
1221
1222       VERBON [flag [point-size [font]]]
1223              Begin verbatim output using Courier font.  Usually for  printing
1224              programs.   All characters have equal width.  The point size can
1225              be changed with the second  argument.   By  specifying  a  third
1226              argument  it is possible to use another font instead of Courier.
1227              flag controls several special features.  Its value is the sum of
1228              all wanted features.
1229
1230                     Arg   Description
1231                     1     Disable the escape character (\).  This is normally
1232                           turned on during verbose output.
1233                     2     Add an empty line before the verbose text.
1234                     4     Add an empty line after the verbose text.
1235                     8     Print the verbose text with numbered  lines.   This
1236                           adds  four  digit-sized  spaces in the beginning of
1237                           each line.  Finer control  is  available  with  the
1238                           string  variable Verbnm.  It contains all arguments
1239                           to the troff(1) command .nm, normally `1'.
1240                     16    Indent the verbose text  by  `5n'.   This  is  con‐
1241                           trolled by the number-variable Verbin (in units).
1242
1243       VERBOFF
1244              End verbatim output.
1245
1246       VL text-indent [mark-indent [1]]
1247              Variable-item list.  It has no fixed mark, it assumes that every
1248              LI has a mark instead.  text-indent sets the indent to the text,
1249              and mark-indent the distance from the current indentation to the
1250              mark.  A third argument  prohibits  printing  of  a  blank  line
1251              before each item.
1252
1253       VM [-T] [top [bottom]]
1254              Vertical  margin.  Increase the top and bottom margin by top and
1255              bottom, respectively.  If option -T is specified, set those mar‐
1256              gins to top and bottom.  If no argument is given, reset the mar‐
1257              gin to zero, or to the default (`7v 5v') if -T is used.   It  is
1258              highly  recommended  that  macros  TP  and/or EOP are defined if
1259              using -T and setting top and/or bottom margin to less  than  the
1260              default.
1261
1262       WA [writer-name [title]]
1263              Begin specification of the writer and writer's address.  Several
1264              names can be specified with empty  WA/WE  pairs,  but  only  one
1265              address.
1266
1267       WE     End the address specification after .WA.
1268
1269       WC [format1] [format2] [...]
1270              Footnote and display width control.
1271
1272              N     Set  default mode which is equal to using the options -WF,
1273                    -FF, -WD, and FB.
1274              WF    Wide footnotes, wide also in two-column mode.
1275              -WF   Normal footnote width, follow column mode.
1276              FF    All footnotes gets the same width as  the  first  footnote
1277                    encountered.
1278              -FF   Normal footnotes, width follows WF and -WF.
1279              WD    Wide displays, wide also in two-column mode.
1280              -WD   Normal display width, follow column mode.
1281              FB    Floating  displays  generates a line break when printed on
1282                    the current page.
1283              -FB   Floating displays does not generate line break.
1284
1285   Strings used in mm
1286       App    A string containing the word `APPENDIX'.
1287
1288       Apptxt The current appendix text.
1289
1290       EM     Em dash string
1291
1292       H1txt  Updated by .H and .HU to the current heading text.  Also updated
1293              in table of contents & friends.
1294
1295       HF     Font list for headings, `2 2 2 2 2 2 2' by default.  Non-numeric
1296              font names may also be used.
1297
1298       HP     Point size list for headings.  By default, this is `0 0 0 0 0  0
1299              0' which is the same as `10 10 10 10 10 10 10'.
1300
1301       Index  Contains the string `INDEX'.
1302
1303       Indcmd Contains the index command.  Default value is `sort -t\t'.
1304
1305       Lifg   String containing `Figure'.
1306
1307       Litb   String containing `TABLE'.
1308
1309       Liex   String containing `Exhibit'.
1310
1311       Liec   String containing `Equation'.
1312
1313       Licon  String containing `CONTENTS'.
1314
1315       Lf     Contains the string `LIST OF FIGURES'.
1316
1317       Lt     Contains the string `LIST OF TABLES'.
1318
1319       Lx     Contains the string `LIST OF EXHIBITS'.
1320
1321       Le     Contains the string `LIST OF EQUATIONS'.
1322
1323       Letfc  Contains the string `Yours very truly,', used in .FC.
1324
1325       Letapp Contains the string `APPROVED:', used in .AV.
1326
1327       Letdate
1328              Contains the string `Date', used in .AV.
1329
1330       LetCN  Contains the string `CONFIDENTIAL', used in .LO CN.
1331
1332       LetSA  Contains the string `To Whom It May Concern:', used in .LO SA.
1333
1334       LetAT  Contains the string `ATTENTION:', used in .LO AT.
1335
1336       LetSJ  Contains the string `SUBJECT:', used in .LO SJ.
1337
1338       LetRN  Contains the string `In reference to:', used in .LO RN.
1339
1340       Letns  is an array containing the different strings used in .NS.  It is
1341              really a number of string variables prefixed  with  Letns!.   If
1342              the  argument  doesn't  exist,  it  is  included between () with
1343              Letns!copy as a prefix and Letns!to as a  suffix.   Observe  the
1344              space after `Copy' and before `to'.
1345
1346                     Name         Value
1347                     Letns!0      Copy to
1348                     Letns!1      Copy (with att.) to
1349                     Letns!2      Copy (without att.) to
1350                     Letns!3      Att.
1351                     Letns!4      Atts.
1352                     Letns!5      Enc.
1353                     Letns!6      Encs.
1354                     Letns!7      Under separate cover
1355                     Letns!8      Letter to
1356                     Letns!9      Memorandum to
1357                     Letns!10     Copy (with atts.) to
1358                     Letns!11     Copy (without atts.) to
1359                     Letns!12     Abstract Only to
1360                     Letns!13     Complete Memorandum to
1361                     Letns!14     CC
1362                     Letns!copy   Copy \"
1363                     Letns!to     " to
1364
1365       Letnsdef
1366              Define  the  standard notation used when no argument is given to
1367              .NS.  Default is 0.
1368
1369       MO1 - MO12
1370              Strings containing the month names `January' through `December'.
1371
1372       Qrf    String containing `See chapter \\*[Qrfh], page \\n[Qrfp].'.
1373
1374       Rp     Contains the string `REFERENCES'.
1375
1376       Tcst   Contains the current status of the table of contents and list of
1377              figures,  etc.   Empty  outside  of .TC.  Useful in user-defined
1378              macros like .TP.
1379
1380                     Value   Meaning
1381                     co      Table of contents
1382                     fg      List of figures
1383                     tb      List of tables
1384                     ec      List of equations
1385                     ex      List of exhibits
1386                     ap      Appendix
1387
1388       Tm     Contains the string `\(tm', the trade mark symbol.
1389
1390       Verbnm Argument to .nm in the .VERBON command.  Default is 1.
1391
1392   Number variables used in mm
1393       Aph    Print an appendix page for every new appendix   if  this  number
1394              variable  is  non-zero.   No  output  occurs if Aph is zero, but
1395              there is always an appendix entry in the `List of contents'.
1396
1397       Cl     Contents level (in the range 0 to 14).  The contents is saved if
1398              a  heading  level  is  lower  than  or equal to the value of Cl.
1399              Default is 2.
1400
1401       Cp     Eject page between list of table, list of figure, etc.,  if  the
1402              value of Cp is zero.  Default is 0.
1403
1404       D      Debug  flag.  Values greater than zero produce debug information
1405              of increasing verbosity.  A value of 1 gives  information  about
1406              the progress of formatting.  Default is 0.
1407
1408       De     If  set  to  1, eject after floating display is output.  Default
1409              is 0.
1410
1411       Dsp    If defined, it controls the space output before and after static
1412              displays.  Otherwise the value of Lsp is used.
1413
1414       Df     Control  floating  keep output.  This is a number in the range 0
1415              to 5, with a default value of 5.  See .DF.
1416
1417       Ds     If set to 1, use the amount of  space  stored  in  register  Lsp
1418              before and after display.  Default is 1.
1419
1420       Ej     If  set  to  1,  eject  page  before  each  first-level heading.
1421              Default is 0.
1422
1423       Eq     Equation labels are left-adjusted if set to 0 and right-adjusted
1424              if set to 1.  Default is 0.
1425
1426       Fs     Footnote spacing.  Default is 1.
1427
1428       H1 - H7
1429              Heading counters
1430
1431       H1dot  Append  a  dot  after  the  level-one heading number if value is
1432              greater than zero.  Default is 1.
1433
1434       H1h    A copy of number register H1, but it is incremented just  before
1435              the page break.  Useful in user-defined header macros.
1436
1437       Hb     Heading  break  level.   A  number  in the range 0 to 14, with a
1438              default value of 2.  See .H.
1439
1440       Hc     Heading centering level.  A number in the range 0 to 14, with  a
1441              default value value of 0.  See .H.
1442
1443       Hi     Heading  temporary indent.  A number in the range 0 to 2, with a
1444              default value of 1.
1445
1446                     0   no indentation, left margin
1447                     1   indent to the right, similar to `.P 1'
1448                     2   indent to line up with text part of preceding heading
1449
1450       Hps    Heading pre-space level.  If the heading level is less  than  or
1451              equal  to  Hps, two lines precede the section heading instead of
1452              one.  Default is first level only.  The real amount of lines  is
1453              controlled by the variables Hps1 and Hps2.
1454
1455       Hps1   Number  of  lines  preceding  .H if the heading level is greater
1456              than Hps.  Value is in units, default is 0.5.
1457
1458       Hps2   Number of lines preceding .H if the heading level is  less  than
1459              or equal to Hps.  Value is in units, default is 1.
1460
1461       Hs     Heading  space  level.   A  number  in the range 0 to 14, with a
1462              default value of 2.  See .H.
1463
1464       Hss    Number of lines following .H if the heading level is  less  than
1465              or equal to Hs.  Value is in units, default is 1.
1466
1467       Ht     Heading numbering type.
1468
1469                     0   multiple levels (1.1.1, 1.1.2, etc.)
1470                     1   single level
1471
1472              Default is 0.
1473
1474       Hu     Unnumbered heading level.  Default is 2.
1475
1476       Hy     Hyphenation status of text body.
1477
1478                     0   no hyphenation
1479                     1   hyphenation on, set to value 14
1480
1481              Default is 0.
1482
1483       Iso    Set this variable to 1 on the command line to get an ISO-format‐
1484              ted date string (-rIso=1).  Useless inside of a document.
1485
1486       L      Page length, only for command line settings.
1487
1488       Letwam Maximum lines  in  return-address,  used  in  .WA/.WE.   Default
1489              is 14.
1490
1491       Lf, Lt, Lx, Le
1492              Enable  (1) or disable (0) the printing of List of figures, List
1493              of tables, List of exhibits and List of equations, respectively.
1494              Default values are Lf=1, Lt=1, Lx=1, and Le=0.
1495
1496       Li     List indentation, used by .AL.  Default is 6.
1497
1498       Limsp  A  flag  controlling  the  insertion of space between prefix and
1499              mark in automatic lists (.AL).
1500
1501                     0   no space
1502                     1   emit space
1503
1504       Ls     List space threshold.  If current list level is greater than  Ls
1505              no spacing occurs around lists.  Default is 99.
1506
1507       Lsp    The  vertical  space used by an empty line.  The default is 0.5v
1508              in troff mode and 1v in nroff mode.
1509
1510       N      Page numbering style.
1511
1512                     0   normal header for all pages.
1513                     1   header replaces  footer  on  first  page,  header  is
1514                         empty.
1515                     2   page header is removed on the first page.
1516                     3   `section-page' numbering style enabled.
1517                     4   page header is removed on the first page.
1518                     5   `section-page'  and  `section-figure' numbering style
1519                         enabled.
1520
1521              Default is 0.  See also the number registers Sectf and Sectp.
1522
1523       Np     A flag to control whether paragraphs are numbered.
1524
1525                     0   not numbered
1526                     1   numbered in first-level headings.
1527
1528              Default is 0.
1529
1530       O      Page offset, only for command line settings.
1531
1532       Of     Format of figure, table, exhibit, and equation titles.
1533
1534                     0   ". "
1535                     1   " - "
1536
1537              Default is 0.
1538
1539       P      Current page-number, normally the same as `%'  unless  `section-
1540              page' numbering style is enabled.
1541
1542       Pi     Paragraph indentation.  Default is 5.
1543
1544       Pgps   A  flag  to  control whether header and footer point size should
1545              follow the current settings or just change when the  header  and
1546              footer are defined.
1547
1548                     0   Point  size  only changes to the current setting when
1549                         .PH, .PF, .OH, .EH, .OF, or .OE is executed.
1550                     1   Point size changes  after  every  .S.   This  is  the
1551                         default.
1552
1553       Ps     Paragraph spacing.  Default is 1.
1554
1555       Pt     Paragraph type.
1556
1557                     0   left-justified
1558                     1   indented paragraphs
1559                     2   indented paragraphs except after .H, .DE, or .LE.
1560
1561              Default is 0.
1562
1563       Rpe    Set default value for second argument of .RP.  Default is 0.
1564
1565       Sectf  A  flag  controlling  `section-figures' numbering style.  A non-
1566              zero value enables this.  See also register N.
1567
1568       Sectp  A flag controlling `section-page' numbering style.   A  non-zero
1569              value enables this.  See also register N.
1570
1571       Si     Display indentation.  Default is 5.
1572
1573       Verbin Indentation for .VERBON.  Default is 5n.
1574
1575       W      Line length, only for command line settings.
1576
1577       .mgm   Always 1.
1578

INTERNALS

1580       The letter macros are using different submacros depending on the letter
1581       type.  The name of the submacro has the letter type as suffix.   It  is
1582       therefore possible to define other letter types, either in the national
1583       macro-file, or as local additions.  .LT sets the  number  variables  Pt
1584       and Pi to 0 and 5, respectively.  The following strings and macros must
1585       be defined for a new letter type.
1586
1587       let@init_type
1588              This macro is called directly by .LT.  It is  supposed  to  ini‐
1589              tialize variables and other stuff.
1590
1591       let@head_type
1592              This  macro prints the letter head, and is called instead of the
1593              normal  page  header.   It  is  supposed  to  remove  the  alias
1594              let@header, otherwise it is called for all pages.
1595
1596       let@sg_type name title n flag [arg1 [arg2 [...]]]
1597              .SG is calling this macro only for letters; memorandums have its
1598              own processing.  name and title are specified  through  .WA/.WB.
1599              n  is  the  counter,  1-max, and flag is true for the last name.
1600              Any other argument to .SG is appended.
1601
1602       let@fc_type closing
1603              This macro is called by .FC, and has the formal closing  as  the
1604              argument.
1605
1606       .LO is implemented as a general option-macro.  It demands that a string
1607       named Lettype is defined, where type is  the  letter  type.   .LO  then
1608       assigns the argument to the string variable let*lo-type.
1609

AUTHOR

1611       Jörgen Hägg, Lund, Sweden <jh@axis.se>.
1612

FILES

1614       /usr/share/groff/1.22.2/tmac/m.tmac
1615
1616       /usr/share/groff/1.22.2/tmac/mm/*.cov
1617
1618       /usr/share/groff/1.22.2/tmac/mm/*.MT
1619
1620       /usr/share/groff/1.22.2/tmac/mm/locale
1621

SEE ALSO

1623       groff(1), troff(1), tbl(1), pic(1), eqn(1)
1624       groff_mmse(7)
1625
1626
1627
1628Groff Version 1.22.2              9 June 2014                      GROFF_MM(7)
Impressum