groff_mm - groff mm macros


SYNOPSIS

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


DESCRIPTION

       The groff mm macros are intended to be compatible with the
       DWB mm macros with the following limitations:

       ·      no Bell Labs localisms implemented.

       ·      the macros OK and PM is not implemented.

       ·      groff mm does not support cut marks

       mm is intended to be international. Therefore it is possi­
       ble  to  write  short national macrofiles which change all
       english text to the preferred language.  Use  mmse  as  an
       example.

       A file called locale or lang_locale is read after the ini­
       tiation of the global variables. It is therefore  possible
       to localize the macros with companyname and so on.

       In  this  manual  square brackets is used to show optional
       arguments.

       Number registers and strings
       Many macros can be  controlled  by  number  registers  and
       strings.   A  number register is assigned with the nr com­
       mand:
       .nr XXX [+-]n [i]
       XXX is the name of the register, n  is  the  value  to  be
       assigned,  and i is increment value for auto-increment.  n
       can have a plus or minus sign as prefix if an increment or
       decrement  of the current value is wanted. (Auto-increment
       or decrement occurs if the number register is used with  a
       plus or minus sign, \n+[XXX] or \n-[XXX].)

       Strings is defined with ds.
       .ds YYY string
       The  string is assigned everything to the end of the line,
       even blanks.  Initial blanks in string should be  prefixed
       with  a  double-quote.  (Strings  are  used in the text as
       \*[YYY].)

       Special formatting of number registers
       A number register is printed with normal digits if no for­
       mat has been given.  Set the format with af:
       .af R c
       R is the name of the register, c is the format.

       1    0, 1, 2, 3, ...
       001  000, 001, 002, 003, ...
       i    0, i, ii, iii, iv, ...
       I    0, I, II, III, IV, ...
       a    0, a, b, c, ..., z, aa, ab, ...
       A    0, A, B, C, ..., Z, AA, AB, ...

       Macros:

       )E level text
              Adds  text  (heading-text) to the table of contents
              with level either 0 or between 1-7.  See  also  .H.
              This  macro  is  used  for customized table of con­
              tents.

       1C [1] Begin one column processing. An 1 as argument  dis­
              ables  the  page-break.   Use wide footnotes, small
              footnotes may be overprinted.

       2C     Begin two column processing. Splits the page in two
              columns. It is a special case of MC. See also 1C.

       AE     Abstract end, see AS.

       AF [name of firm]
              Authors  firm, should be called before AU, see also
              COVER.

       AL [type [text-indent [1]]]
              Start autoincrement list. Items are numbered begin­
              ning  on  one.  The type argument controls the type
              of numbers.
              Arg  Description
              1    Arabic (the default)
              A    Upper-case letters (A-Z)
              a    Lower-case letters (a-z)
              I    Upper-case roman
              i    Lower-case roman
              Text-indent sets the indent and  overrides  Li.   A
              third  argument  will  prohibit printing of a blank
              line before each item.

       APP name text
              Begin an appendix with name name. Automatic  naming
              occurs  if name is "". The appendixes starts with A
              if auto is used.  An new page  is  ejected,  and  a
              header  is also produced if the number variable Aph
              is non-zero. This is  the  default.   The  appendix
              always  appear  in the 'List of contents' with cor­
              rect pagenumber. The name APPENDIX can  be  changed
              by setting the string App to the desired text.  The
              string Apptxt contains the current appendix text.

              Same as .APP, but the pagenr  is  incremented  with
              pages.   This  is  used when diagrams or other non-
              formatted documents are included as appendixes.

       AS [arg [indent]]
              Abstract start. Indent is specified in  'ens',  but
              scaling  is  allowed.   Argument arg controls where
              the abstract is printed.
              Arg  Placement
              0    Abstract will be printed on page 1 and on  the
                   cover  sheet  if  used  in  the released-paper
                   style (MT 4), otherwise it will be printed  on
                   page 1 without a cover sheet.
              1    Abstract  will  only  be  printed on the cover
                   sheet (MT 4 only).
              2    Abstract will be printed  only  on  the  cover
                   sheet (other than MT 4 only).  The cover sheet
                   is printed without need for CS.
              Abstract is not printed at all in external  letters
              (MT  5).   The  indent  controls the indentation of
              both margins, otherwise will normal text indent  be
              used.

       AST [title]
              Abstract title. Default is ABSTRACT.  Sets the text
              above the abstract text.

       AT title1 [title2 ...]
              Authors title. AT must appear just after  each  AU.
              The title will show up after the name in the signa­
              ture block.

       AU [name [initials [loc [dept [ext [room [arg [arg
              [arg]]]]]]]]]
              Author  information,  specifies  the  author of the
              memo or paper, and will be  printed  on  the  cover
              sheet  and  on  other  similar places.  AU must not
              appear before TL. The author information  can  con­
              tain   initials,  location,  department,  telephone
              extension, room number or  name  and  up  to  three
              extra arguments.

       AV [name [1]]
              Approval signature, generates an approval line with
              place for signature and date. The string  APPROVED:
              can be changed with variable Letapp, and the string
              Date in Letdate.

       AVL [name]
              Letter signature, generates a line with  place  for
              signature.

              Begin  boldface.   No  limit on the number of argu­
              ments.  All arguments will be concatenated  to  one
              word, the first, third and so on will be printed in
              boldface.

       B1     Begin box (as the ms macro).  Draws  a  box  around
              the  text. The text will be indented one character,
              and the right margin will be one character shorter.

       B2     End box. Finish the box started by B1.

       BE     End bottom block, see BS.

       BI [bold-text [italic-text [bold-text [...]]]]
              Bold-italic.   No limit on the number of arguments,
              see B.

       BL [text-indent [1]]
              Start bullet list, initialize a list with a  bullet
              and a space in the beginning of each list item (see
              LI).  Text-indent overrides the default indentation
              of  the  list  items  set by number register Pi.  A
              third argument will prohibit printing  of  a  blank
              line before each item.

       BR [bold-text [roman-text [bold-text [...]]]]
              Bold-roman.  No limit on the number of arguments.

       BS     Bottom block start. Begins the definition of a text
              block which is printed at the bottom of each  page.
              Block ends with BE.

       BVL text-indent [mark-indent [1]]
              Start  of  broken variable-item list.  Broken vari­
              able-item list has no fixed mark, it  assumes  that
              every  LI has a mark instead.  The text will always
              begin at the next line after the mark.  Text-indent
              sets  the  indent  to the text, and mark-indent the
              distance from the current indent to  the  mark.   A
              third  argument  will  prohibit printing of a blank
              line before each item.

       COVER [arg]
              COVER begins a coversheet definition. It is  impor­
              tant  that  .COVER  appears before any normal text.
              .COVER   uses   arg   to   build    the    filename
              /usr/share/groff/1.17.2/tmac/mm/arg.cov.  Therefore
              it is possible to create unlimited types of  cover­
              sheets.   ms.cov  is  supposed  to look like the ms
              coversheet.  .COVER requires a .COVEND at  the  end
              of  the  coverdefinition.  Always use this order of
              the covermacros:
              .COVER

              .AF
              .AU
              .AT
              .AS
              .AE
              .COVEND
              However, only .TL and .AU are required.

       COVEND This finish the cover description  and  prints  the
              cover-page.  It is defined in the cover file.

       DE     Display  end.  Ends  a block of text, display, that
              begins with DS or DF.

       DF [format [fill [rindent]]]
              Begin floating display  (no  nesting  allowed).   A
              floating display is saved in a queue and is printed
              in the order entered. Format, fill and  rindent  is
              the  same  as  in  DS.   Floating displays are con­
              trolled by the two number registers De and Df.

              De register
              0    Nothing special, this is the default.
              1    A page eject will  occur  after  each  printed
                   display,  giving only one display per page and
                   no text following it.

              Df register
              0    Displays are printed at the end of  each  sec­
                   tion  (when  section-page numbering is active)
                   or at the end of the document.
              1    A new display will be printed on  the  current
                   page  if  there  is enough space, otherwise it
                   will be printed at the end of the document.
              2    One display will be printed at the top of each
                   page or column (in multi-column mode).
              3    Print one display if there is enough space for
                   it, otherwise it will be printed at the top of
                   the next page or column.
              4    Print  as many displays that will fit in a new
                   page or  column.   A  page  break  will  occur
                   between each display if De is not zero.
              5    Fill  the  current  page with displays and the
                   rest beginning at a new page or column.  (This
                   is  the  default.)   A  page  break will occur
                   between each display if De is not zero.

       DL [text-indent [1 [1]]]
              Dash list start. Begins a list where each  item  is
              printed  after  a  dash.  Text-indent  changes  the
              default indentation of the list items set by number
              register  Pi.  A second argument prevents the empty
              line between each list item to be printed. See  LI.

              line before each item.

       DS [format [fill [rindent]]]
              Static display start.  Begins  collection  of  text
              until DE.  The text is printed together on the same
              page, unless it is longer than the  height  of  the
              page.   DS can be nested to a unlimited depth (rea­
              sonably :-).

              format
              ""   No indentation.
              none No indentation.
              L    No indentation.
              I    Indent text with the value of number  register
                   Si.
              C    Center each line
              CB   Center the whole display as a block.
              R    Right adjust the lines.
              RB   Right adjust the whole display as a block

              L,  I, C and CB can also be specified as 0, 1, 2 or
              3 for compatibility reasons. (Don't use it. :-)

              fill
              ""   Line-filling turned off.
              none Line-filling turned off.
              N    Line-filling turned off.
              F    Line-filling turned on.

              N and F can also be specified as 0 or 1.  An  empty
              line  will normally be printed before and after the
              display. Setting number register Ds to 0 will  pre­
              vent  this.   Rindent  shortens  the line length by
              that amount.

       EC [title [override [flag [refname]]]]
              Equation title.  Sets a title for an equation.  The
              override argument change the numbering.

              flag
              none override is a prefix to the number.
              0    override is a prefix to the number.
              1    override is a suffix to the number.
              2    override replaces the number.
              EC  uses  the number register Ec as counter.  It is
              possible to use .af to change  the  format  of  the
              number.   If number register Of is 1, then the for­
              mat of title will use a dash instead of a dot after
              the number.
              The  string  Le  controls  the title of the List of
              Equations, default is LIST OF EQUATIONS.  The  List
              of  Equations will only be printed if number regis­
              ter Le is 1, default 0.  The string  Liec  contains

              ber.  If refname is used, then the equation  number
              is  saved  with  .SETR,  and  can be retrieved with
              .GETST refname.
              Special handling of the title will occur if  EC  is
              used  inside  DS/DE, it will not be affected by the
              format of DS.

       EF [arg]
              Even-page footer, printed  just  above  the  normal
              page footer on even pages, see PF.

       EH [arg]
              Even-page  header,  printed  just  below the normal
              page header on even pages, see PH.

       EN     Equation end, see EQ.

       EOP    End of page user-defined macro. This macro will  be
              called  instead  of  the  normal  printing  of  the
              footer. The macro will be executed  in  a  separate
              environment, without any trap active. See TP.

              Strings available to EOP
              EOPf Argument from PF.
              EOPefArgument from EF.
              EOPofArgument from OF.

       EPIC width height [name]
              EPIC  draws  a box with the given width and height,
              it will also print  the  text  name  or  a  default
              string  if name is not specified..  This is used to
              include external pictures, just give  the  size  of
              the picture.  See PIC

       EQ [label]
              Equation start.  EQ/EN are the delimiters for equa­
              tions written for eqn.   EQ/EN  must  be  inside  a
              DS/DE-pair,  except  when  EQ  is  only used to set
              options in eqn.  The label will appear at the right
              margin  of  the equation, unless number register Eq
              is 1. Then the label will appear at the  left  mar­
              gin.

       EX [title [override [flag [refname]]]]
              Exhibit  title,  arguments  are the same as for EC.
              EX uses the number register  Ex  as  counter.   The
              string  Lx  controls  the  title  of  the  List  of
              Exhibits, default is LIST OF EXHIBITS.  The List of
              Exhibits will only be printed if number register Lx
              is 1, default 1.  The string Liex contains the word
              Exhibit,  which  is  printed before the number.  If
              refname is used, then the exhibit number  is  saved
              with  .SETR,  and  can  be  retrieved  with  .GETST

              Special handling of the title will occur if  EX  is
              used  inside  DS/DE, it will not be affected by the
              format of DS.

       FC [closing]
              Prints Yours very truly, as a formal closing  of  a
              letter  or  memorandum.  The  argument replaces the
              defualt string.  The default is  stored  in  string
              variable Letfc.

       FD [arg [1]]
              Footnote  default format.  Controls the hyphenation
              (hyphen),  right  margin  justification   (adjust),
              indentation  of footnote text (indent). It can also
              change the label justification (ljust).

              arg  hyphen  adjust  indent  ljust
              0    no      yes     yes     left
              1    yes     yes     yes     left
              2    no      no      yes     left
              3    yes     no      yes     left
              4    no      yes     no      left
              5    yes     yes     no      left
              6    no      no      no      left
              7    yes     no      no      left
              8    no      yes     yes     right
              9    yes     yes     yes     right
              10   no      no      yes     right
              11   yes     no      yes     right

              Argument greater than or equal to 11 is  considered
              as arg 0.  Default for mm is 10.

       FE     Footnote end.

       FG [title [override [flag [refname]]]]
              Figure title, arguments are the same as for EC.  FG
              uses the number register Fg as counter.  The string
              Lf  controls  the  title  of  the  List of Figures,
              default is LIST OF FIGURES.  The  List  of  Figures
              will  only  be  printed if number register Lf is 1,
              default 1.  The string Lifg contains the word  Fig­
              ure, wich is printed before the number.  If refname
              is used, then  the  figure  number  is  saved  with
              .SETR, and can be retrieved with .GETST refname.
              Special  handling  of the title will occur if FG is
              used inside DS/DE, it will not be affected  by  the
              format of DS.

       FS [label]
              Footnote start.  The footnote is ended by FE. Foot­
              notes is normally automatically numbered, the  num­
              ber  is available in string F.  Just add \*F in the

              number  or  names  on  the footnotes.  Footnotes in
              displays is now possible.  An empty line  separates
              footnotes,  the height of the line is controlled by
              number register Fs, default value is 1.

       GETHN refname [varname]
              Includes the headernumber where  the  corresponding
              SETR  refname was placed. Will be X.X.X. in pass 1.
              See INITR.  If varname  is  used,  GETHN  sets  the
              stringvariable varname to the headernumber.

       GETPN refname [varname]
              Includes  the  pagenumber  where  the corresponding
              SETR refname was placed. Will be 9999  in  pass  1.
              See  INITR.   If  varname  is  used, GETPN sets the
              stringvariable varname to the pagenumber.

       GETR refname
              Combines GETHN and GETPN with  the  text  'chapter'
              and ', page'.  The string Qrf contains the text for
              reference:
                   .ds Qrf See chapter \\*[Qrfh], page \\*[Qrfp].
              Qrf  may  be  changed  to  support other languages.
              Strings Qrfh and Qrfp are set by GETR and  contains
              the page and headernumber.

       GETST refname [varname]
              Includes  the string saved with the second argument
              to .SETR.  Will be dummystring in pass 1.  If  var­
              name is used, GETST sets the stringvariable varname
              to the saved string. See INITR.

       H level [heading-text [heading-suffix]]
              Numbered section heading.  Section headers can have
              a  level between 1 and 7, level 1 is the top level.
              The text is given in heading-text, and must be sur­
              rounded  by  double  quotes  if it contains spaces.
              Heading-suffix is added to the header in  the  text
              but  not in the table of contents. This is normally
              used for footnote marks and similar  things.  Don't
              use  \*F in heading-suffix, it won't work. A manual
              label must be used, see FS.

              An eventual paragraph, P, directly after H will  be
              ignored,  H  is taking care of spacing and indenta­
              tion.

              Page ejection before heading
              Number register Ej controls  page  ejection  before
              the  heading.   Normally,  a level one heading gets
              two blank lines before it, higher levels gets  only
              one.  A new page is ejected before each first-level
              heading if number register Ej  is  1.   All  levels

              Default value for Ej is 0.

              Heading break level
              A line break occurs after the heading if the  head­
              ing  level  is less or equal to number register Hb.
              Default value 2.

              Heading space level
              A blank line is inserted after the heading  if  the
              heading  level  is less or equal to number register
              Hs.  Default value 2.

              Text will follow the heading on the  same  line  if
              the level is greater than both Hb and Hs.

              Post-heading indent
              Indentation  of  the text after the heading is con­
              trolled by number register Hi, default value 0.

              Hi
              0    The text will be left-justified.
              1    Indentation of the text will follow the  value
                   of number register Pt, see P.
              2    The  text will be lined up with the first word
                   of the heading.

              Centered section headings
              All headings whose level is equal or  below  number
              register Hc and also less than or equal to Hb or Hs
              is centerered.

              Font control of the heading
              The font of each heading  level  is  controlled  by
              string  HF.   It  contains a fontnumber or fontname
              for each level. Default is 2 2 2 2 2 2 2 (all head­
              ings   in   italic).   Could  also  be  written  as
              I I I I I I I.  All omitted values are presumed  to
              be a 1.

              Point size control.
              String  HP  controls the pointsize of each heading,
              in the same way as HF controls the font.   A  value
              of 0 selects the default point size.  Default value
              is 0 0 0 0 0 0 0. Beware that only the  point  size
              changes,  not  the vertical size.  That can be con­
              trolled by the user specified macro HX and/or HZ.

              Heading counters
              Seven number registers, named H1 thru  H7  contains
              the counter for each heading level.  The values are
              printed using arabic numerals, this can be  changed
              with  the macro HM (see below).  All marks are con­
              catenated  before  printing.  To  avoid  this,  set

              current heading counter at each heading.

              Automatic table of contents
              All headings whose level is equal or  below  number
              register  Cl is saved to be printed in the table of
              contents. Default value is 2.

              Special  control  of  the   heading,   user-defined
              macros.
              These  macros  can  be defined by the user to get a
              finer control of vertical spacing, fonts  or  other
              features.   Argument level is the level-argument to
              H, but 0 for unnumbered headings (see  HU).   Argu­
              ment  rlevel is the real level, it is set to number
              register  Hu  for  unnumbered  headings.   Argument
              heading-text is the text argument to H and HU.

              HX level rlevel heading-text
              HX  is called just before the printing of the head­
              ing.  The following register is available  for  HX.
              HX may alter }0, }2 and ;3.
              string }0
                   Contains  the  heading mark plus two spaces if
                   rlevel is non-zero, otherwise empty.
              register ;0
                   Contains the position of the  text  after  the
                   heading.   0 means that the text should follow
                   the heading on the same line, 1 means  that  a
                   line  break should occur before the text and 2
                   means that a blank line  should  separate  the
                   heading and the text.
              string }2
                   Contains two spaces if register ;0 is 0. It is
                   used to separate the heading  from  the  text.
                   The string is empty if ;0 is non-zero.
              register ;3
                   Contains  the  needed space in units after the
                   heading.  Default is 2v.

                   Can be used to change  things  like  numbering
                   (}0),  vertical  spacing  (}2)  and the needed
                   space after the heading.

              HY dlevel rlevel heading-text
              HY is called after size and font  calculations  and
              might be used to change indentation.

              HZ dlevel rlevel heading-text
              HZ  is  called  after  the printing of the heading,
              just before H or HU exits.  Could be used to change
              the page header according to the section heading.

              Set  hyphenation  character.   Default value is \%.
              Resets to the default if called  without  argument.
              Hyphenation  can  be  turned  off by setting number
              register Hy to 0 in the beginning of the file.

       HM [arg1 [arg2 [... [arg7]]]]
              Heading mark style.  Controls the type  of  marking
              for printing of the heading counters.  Default is 1
              for all levels.

              Argument
              1    Arabic numerals.
              0001 Arabic numerals with leading  zeroes,  one  or
                   more.
              A    Upper-case alphabetic
              a    Lower-case alphabetic
              I    Upper-case roman numerals
              i    lower-case roman numerals
              emptyArabic numerals.

       HU heading-text
              Unnumbered  section  header.  HU behavies like H at
              the level in number register Hu.  See H.

       HX dlevel rlevel heading-text
              Userdefined  heading  exit.   Called  just   before
              printing the header.  See H.

       HY dlevel rlevel heading-text
              Userdefined   heading  exit.   Called  just  before
              printing the header.  See H.

       HZ dlevel rlevel heading-text
              Userdefined heading exit.  Called just after print­
              ing the header.  See H.

       I [italic-text [prev-font-text [italic-text [...]]]]
              Italic.  Changes the font to italic if called with­
              out arguments.  With one argument it will  set  the
              word in italic.  With two argument it will concate­
              nate them and set the first word in italic and  the
              second  in the previous font.  There is no limit on
              the number of argument, all will be concatenated.

       IA [addressee-name [title]]
              Begins   specification   of   the   addressee   and
              addressee's address in letter style.  Several names
              can be specified with empty IA/IE-pairs,  but  only
              one address.  See LT.

       IB [italic-text [bold-text [italic-text [...]]]]
              Italic-bold.   Even arguments is printed in italic,
              odd in boldface.  See I.


       INITI type filename [macro]
              Initialize the new index system, sets the  filename
              to  collect  index lines in with IND. Argument type
              selects the type  of  index,  page  number,  header
              marks or both.  The default is N.

              It  is  also  possible  to  create  a macro that is
              responsible for formatting each row. Add  the  name
              of  the  macro  as  argument  3.  The macro will be
              called with the index as argument(s).

              type
              N    Page numbers
              H    Header marks
              B    Both page numbers and header marks, tab  sepa­
                   rated

       INITR filename
              Initialize  the  refencemacros.  References will be
              written to filename.tmp and filename.qrf.  Requires
              two  passes with groff.  The first looks for refer­
              ences and the second includes them.  INITR  can  be
              used several times, but it is only the first occur­
              rence of INITR that is active.  Option -U might  be
              needed  if  unsafe-errors  occur.   See  also SETR,
              GETPN and GETHN.

       IND arg1 [arg2 [...]]
              IND writes a line in the  index  file  selected  by
              INITI  with  all  arguments  and the page number or
              header mark separated by tabs.
                   Examples
                   arg1\tpage number
                   arg1\targ2\tpage number
                   arg1\theader mark
                   arg1\tpage number\theader mark

       INDP   INDP prints the index by running the command speci­
              fied by string variable Indcmd, normally sort -t\t.
              INDP reads the output from the command to form  the
              index,  normally  in two columns (can be changed by
              defining TYIND).  The index is printed with  string
              variable  Index  as  header, default is INDEX. One-
              column processing is returned after the list.  INDP
              will  call the user-defined macros TXIND, TYIND and
              TZIND if defined.  TXIND is called before  printing
              INDEX,  TYIND  is called instead of printing INDEX.
              TZIND is called after the printing and should  take
              care of restoring to normal operation again.

       ISODATE [0]
              ISODATE changes the predefined date string in DT to

              adding -rIso=1 on the command line.  Reverts to old
              date format if argument is 0.

       IR [italic-text [roman-text [italic-text [...]]]]
              Italic-roman.  Even arguments is printed in italic,
              odd in roman.  See I.

       LB text-indent mark-indent pad type [mark [LI-space [LB-
              space]]]
              List begin macro.  This is the  common  macro  used
              for all lists.  Text-indent is the number of spaces
              to indent the text from the current indent.

              Pad and mark-indent controls where to put the mark.
              The  mark is placed within the mark area, and mark-
              indent sets the number of spaces before this  area.
              It  is  normally  0.   The mark area ends where the
              text begins. The start of the text  is  still  con­
              trolled by text-indent.

              The  mark is left justified whitin the mark area if
              pad is 0.  If pad is greater  than  0,  then  mark-
              indent  is  ignored,  and  the  mark  is placed pad
              spaces before the text.  This  will  right  justify
              the mark.

              If  type  is  0 the list will have either a hanging
              indent or, if argument mark is  given,  the  string
              mark as mark.

              If  type is greater than 0 automatic numbering will
              occur, arabic if mark is empty. Mark  can  then  be
              any of 1, A, a, I or i.

              Type  selects  one  of six possible ways to display
              the mark.
              type
               1    x.
               2    x)
               3    (x)
               4    [x]
               5    <x>
               6    {x}

              Every item in the list will get LI-space number  of
              blank lines before them. Default is 1.

              LB  itself will print LB-space blank lines. Default
              is 0.

       LC [list-level]
              List-status clear.  Terminates all  current  active
              lists  down  to  list-level, or 0 if no argmuent is


       LE [1] List end.  Terminate the current list. LE outputs a
              blank line if an argument is given.

       LI [mark [1]]
              List item precedes every item in  a  list.  Without
              argument  LI  will print the mark determined by the
              current list type. By giving LI  one  argument,  it
              will  use  that as the mark instead.  Two arguments
              to LI will make mark a prefix to the current  mark.
              There  will be no separating space between the pre­
              fix and the  mark  if  the  second  argument  is  2
              instead  of 1.  This behaviour can also be achieved
              by setting number register Limsp to zero.   A  zero
              length mark will make a hanging indent instead.

              A  blank  line  is normally printed before the list
              item. This behaviour can be  controlled  by  number
              register  Ls. Pre-spacing will occur for each list-
              level less than or equal to Ls.  Default  value  is
              99. (Nesting of lists is unlimited. :-)

              The indentation can be changed thru number register
              Li.  Default is 6.

              All lists begins with a list initialization  macro,
              LB.  There are, however, seven predefined listtypes
              to make lists easier to use. They all call LB  with
              different default values.
              AL   Automatically Incremented List
              ML   Marked List
              VL   Variable-Item List
              BL   Bullet List
              DL   Dash List
              RL   Reference List
              BVL  Broken Varable List.
              These  lists  are described at other places in this
              manual. See also LB.

       LT [arg]
              Formats a letter in one of  four  different  styles
              depending on the argument.  See also INTERNALS.
              Arg  Style
              BL   Blocked.  Date  line, return address, writer's
                   address and closing begins at  the  center  of
                   the  line.  All  other lines begin at the left
                   margin.
              SB   Semi-blocked. Same as blocked, except that the
                   first line in every paragraph is indented five
                   spaces.
              FB   Full-blocked. All lines begin at the left mar­
                   gin.
              SP

                   blocked style. Subject and the writer's  iden­
                   tification are printed in all-capital.

       LO type [arg]
              Specify  options  in  letter  (see .LT).  This is a
              list of the standard options:
              CN   Confidential notation. Prints CONFIDENTIAL  on
                   the second line below the date line. Any argu­
                   ment replaces CONFIDENTIAL.  See  also  string
                   variable LetCN.
              RN   Reference  notation.  Prints  In reference to:
                   and the argument  two  lines  below  the  date
                   line.  See also string variable LetRN.
              AT   Attention.  Prints ATTENTION: and the argument
                   below the inside  address.   See  also  string
                   variable LetAT.
              SA   Salutation.  Prints To Whom It May Concern: or
                   the argument if it was present. The salutation
                   is printed two lines below the inside address.
                   See also string variable LetSA.
              SJ   Subject line. Prints the argument  as  subject
                   prefixed  with  SUBJECT:  two  lines below the
                   inside address,  except  in  letter  type  SP.
                   Then  the  subject  is  printed in all-captial
                   without any prefix.  See also string  variable
                   LetSJ.

       MC column-size [column-separation]
              Begin  multiple  columns. Return to normal with 1C.
              MC will create as many columns as the current  line
              length  permits.   Column-size is the width of each
              column, and column-separation is the space  between
              two  columns.  Default  separation  is  the column-
              size/15.  See also 1C.

       ML mark [text-indent [1]]
              Marked  list  start.  The  mark  argument  will  be
              printed  before  each  list item.  Text-indent sets
              the indent and overrides Li.  A third argument will
              prohibit printing of a blank line before each item.

       MT [arg [addressee]]
              Memorandum type.  The arg is part of a filename  in
              /usr/share/groff/1.17.2/tmac/mm/*.MT.    Memorandum
              type 0 thru 5 are  supported,  including  "string".
              Addressee  just  sets  a variable, used in the AT&T
              macros.
              arg
              0    Normal memorandum, no type printed
              1    Memorandum with MEMORANDUM FOR FILE printed
              2    Memorandum with PROGRAMMER'S NOTES printed
              3    Memorandum with ENGINEER'S NOTES printed
              4

              5    External letter style
              See also COVER/COVEND,  a  more  flexible  type  of
              front page.

       MOVE y-pos [x-pos [line-length]]
              Move  to  a  position, pageoffset set to x-pos.  If
              line-length is not given,  the  difference  between
              current  and  new  pageoffset  is used.  Use PGFORM
              without arguments to return to normal.

       MULB cw1 space1 [cw2 space2 [cw3 ...]]
              Begin a special multi-column  mode.  Every  columns
              width  must  be  specified.  Also the space between
              the columns must be specified. The last column does
              not need any space-definition. MULB starts a diver­
              sion and MULE ends the  diversion  and  prints  the
              columns.   The unit for width and space is 'n', but
              MULB accepts all normal unitspecifications like 'c'
              and  'i'.  MULB operates in a separate environment.

       MULN   Begin the next column. This  is  the  only  way  to
              switch column.

       MULE   End the multi-column mode and print the columns.

       nP [type]
              Print numbered paragraph with header level two. See
              .P.

       NCOL   Force printing to the next column, don't  use  this
              together with the MUL* macros, see 2C.

       NS [arg [1]]
              Prints  different  types of notations. The argument
              selects between the predefined type  of  notations.
              If the second argument is available, then the argu­
              ment becomes the entire notation.  If the  argument
              doesn't exist in the predefined, it will be printed
              as Copy (arg) to.  It is possible to add more stan­
              dard  notations,  see the string variable Letns and
              Letnsdef.
              Arg  Notation
              none Copy To
              ""   Copy To
              1    Copy To (with att.) to
              2    Copy To (without att.) to
              3    Att.
              4    Atts.
              5    Enc.
              6    Encs.
              7    Under separate cover
              8    Letter to

              10   Copy (with atts.) to
              11   Copy (without atts.) to
              12   Abstract Only to
              13   Complete Memorandum to
              14   CC

       ND new-date
              New date. Override the current date.  Date  is  not
              printed if new-date is an empty string.

       OF [arg]
              Odd-page footer, a line printed just above the nor­
              mal footer.  See EF and PF.

       OH [arg]
              Odd-page header, a line printed just below the nor­
              mal header.  See EH and PH.

       OP     Make sure that the following text is printed at the
              top of an odd-numbered page.  Will  not  output  an
              empty  page if currently at the top of an odd page.

       P [type]
              Begin new paragraph.  P without argument will  pro­
              duce  left  justified  text, even the first line of
              the paragraph. This is the same as setting type  to
              0.  If  the  argument  is 1, then the first line of
              text following P will be indented by the number  of
              spaces in number register Pi, normally 5.

              Instead of giving 1 as argument to P it is possible
              to set the paragraph type in  number  register  Pt.
              Using 0 and 1 will be the same as adding that value
              to P.  A value of 2  will  indent  all  paragraphs,
              except after headings, lists and displays.

              The  space  between two paragraphs is controlled by
              number register Ps, and is 1 by default (one  blank
              line).

       PGFORM [linelength [pagelength [pageoffset [1]]]]
              Sets   linelength,  pagelength  and/or  pageoffset.
              This macro can be used for special formatting, like
              letterheads  and  other.   It is normally the first
              command in  a  file,  though  it's  not  necessary.
              PGFORM  can  be  used  without  arguments  to reset
              everything after a  MOVE.   A  line-break  is  done
              unless  the  fourth argument is given.  This can be
              used to avoid the  pagenumber  on  the  first  page
              while  setting  new width and length.  (It seems as
              if this macro sometimes doesn't work too well.  Use
              the  command  line  arguments to change linelength,
              pagelength and pageoffset instead. Sorry.)

              rid  of  the  header  in  letters  or other special
              texts.  This macro must be used before any text  to
              inhibit the pageheader on the first page.

       PIC [-L] [-C] [-R] [-I n] filename [width [height]]
              PIC  includes  a  Postscript  file in the document.
              The macro depends on mmroff and INITR.  -L, -C,  -R
              and  -I  n  adjusts  the picture or indents it. The
              optionally width and height can also  be  given  to
              resize the picture.

       PE     Picture  end.  Ends a picture for pic, see the man­
              ual for pic.

       PF [arg]
              Page footer.  PF sets the line to be printed at the
              bottom  of  each  page.  Normally empty. See PH for
              the argument specification.

       PH [arg]
              Page header, a line printed  at  the  top  of  each
              page.   The argument should be specified as "'left-
              part'center-part'right-part'", where left-, center-
              and  right-part is printed left-justified, centered
              and right justified. The character % is changed  to
              the current page number. The default page-header is
              "''- % -''", the page number between two dashes.

       PS     Picture start (from pic). Begins a picture for pic,
              see the manual.

       PX     Page-header  user-defined  exit.  PX is called just
              after the printing of the page header  in  no-space
              mode.

       R      Roman.  Return to roman font, see also I.

       RB [roman-text [bold-text [roman-text [...]]]]
              Roman-bold.   Even  arguments  is printed in roman,
              odd in boldface.  See I.

       RD [prompt [diversion [string]]]
              Read  from  standard  input  to  diversion   and/or
              string.   The  text  will  be  saved in a diversion
              named diversion.  Recall the text  by  writing  the
              name of the diversion after a dot on an empty line.
              A string will also be defined if string  is  given.
              Diversion and/or prompt can be empty ("").

       RF     Reference  end.  Ends  a  reference  definition and
              returns to normal processing. See RS.

              Even arguments are printed in roman, odd in italic.
              See I.

       RL [text-indent [1]]
              Reference  list  start.   Begins  a list where each
              item is preceded with a  automatically  incremented
              number   between   square   brackets.   Text-indent
              changes the default indentation.

       RP [arg1 [arg2]]
              Produce reference page.  RP can be used if a refer­
              ence  page  is wanted somewhere in the document. It
              is not needed if TC is used to produce a  table  of
              content.  The  reference  page will then be printed
              automatically.

              The reference counter will not be reset if arg1  is
              1.

              Arg2 tells RP whether to eject a page or not.
              Arg2
              0    The  reference page will be printed on a sepa­
                   rate page.  This is the default.
              1    Do not eject page after the list.
              2    Do not eject page before the list.
              3    Do not eject page before and after the list.
              The reference items will be separated  by  a  blank
              line.   Setting  number  register Ls to 0 will sup­
              press the line.

              The string Rp contains the reference page title and
              is normally set to REFERENCES.

       RS [string-name]
              RS begins an automatically numbered reference defi­
              nition.  Put the string \*(Rf where  the  reference
              mark  should  be  and  write  the reference between
              RS/RF at next new line after  the  reference  mark.
              The  reference  number is stored in number register
              :R.  If string-name is given, a  string  with  that
              name will be defined and contain the current refer­
              ence  mark.   The  string  can  be  referenced   as
              \*[string-name] later in the text.

       S [size [spacing]]
              Set  point  size and vertical spacing. If any argu­
              ment is equal 'P', then the previous value is used.
              A  'C'  means current value, and 'D' default value.
              If '+' or '-' is used before the value, then incre­
              ment  or  decrement  of  the  current value will be
              done.

              Set right-margin justification.   Justification  is
              normally  turned  on.  No argumenent or 0 turns off
              justification, a 1 turns on justification.

       SETR refname [string]
              Remember the current header and page-number as ref­
              name.  Saves string if string is defined. string is
              retrieved with .GETST.  See INITR.

       SG [arg [1]]
              Signature line. Prints the  authors  name(s)  after
              the  formal closing.  The argument will be appended
              to the reference data, printed at either the  first
              or last author. The reference data is the location,
              department and initials  specified  with  .AU.   It
              will  be  printed at the first author if the second
              argument is given, otherwise at the last.  No  ref­
              erence  data  will  be  printed if the author(s) is
              specifed thru .WA/.WE.  See INTERNALS.

       SK [pages]
              Skip pages.  If pages is 0 or omitted,  a  skip  to
              the  next  page  will occur unless it is already at
              the top of a page.  Otherwise it  will  skip  pages
              pages.

       SM string1 [string2 [string3]]
              Make  a  string  smaller.   If  string2  is  given,
              string1 will be smaller and  string2  normal,  con­
              catenated with string1. With three argument, all is
              concatenated, but only string2 is made smaller.

       SP [lines]
              Space vertically. lines can have any scalingfactor,
              like  3i or 8v. Several SP in a line will only pro­
              duce the maximum number of lines, not the  sum.  SP
              will  also be ignored until the first textline in a
              page. Add a \& before SP to avoid this.

       TAB    reset tabs to every 5n. Normally used to reset  any
              previous tabpositions.

       TB [title [override [flag [refname]]]]
              Table  title, arguments are the same as for EC.  TB
              uses the number register Tb as counter.  The string
              Lt  controls  the  title  of  the  List  of Tables,
              default is LIST OF TABLES.  The List of Tables will
              only be printed if number register Lt is 1, default
              1.  The string Litb contains the word  TABLE,  wich
              is printed before the number.
              Special  handling  of the title will occur if TB is
              used inside DS/DE, it will not be affected  by  the
              format of DS.

              [h5]]]]]]]]]
              Table of contents.  This macro is normally used  at
              the  last  line  of  the  document.  It generates a
              table of contents with headings  up  to  the  level
              controlled by number register Cl. Note that Cl con­
              trols the saving of headings, it has nothing to  do
              with TC.  Headings with level less than or equal to
              slevel will get  spacing  number  of  lines  before
              them.   Headings  with  level less than or equal to
              tlevel will have their page numbers right justified
              with  dots  or  spaces  separating the text and the
              page number. Spaces is used if tab is greater  than
              zero, otherwise dots.  Other headings will have the
              page number directly at the end of the heading text
              (ragged right).

              The  rest  of  the  arguments will be printed, cen­
              tered, before the table of contents.

              The user-defined macros TX and TY are used if TC is
              called  with  at  most four arguments. TX is called
              before the printing of CONTENTS, and TY  is  called
              instead of printing CONTENTS.

              Equivalent  macros  can be defined for list of fig­
              ures, tables, equations and  excibits  by  defining
              TXxx or TYxx, where xx is Fg, TB, EC or EX.

              String  Ci  can  be set to control the indentations
              for each heading-level.  It must  be  scaled,  like
              .ds Ci .25i .5i .75i 1i 1i.    The  indentation  is
              normally controlled by the maxlength of headings in
              each level.

              All  texts  can  be  redefined, new stringvariables
              Lifg, Litb, Liex, Liec and Licon contain  "Figure",
              "TABLE",   "Exhibit",  "Equation"  and  "CONTENTS".
              These can be redefined to other languages.

       TE     Table end. See TS.

       TH [N] Table header. See TS.  TH ends the  header  of  the
              table. This header will be printed again if a page-
              break occurs.  Argument N isn't implemented yet.

       TL [charging-case number(s) [filing-case number(s)]]
              Begin title of memorandum.  All text up to the next
              AU  is included in the title.  Charging-case number
              and filing-case are saved for use in the front page
              processing.

       TM [num1 [num2 [...]]]
              Technical  memorandumnumbers used in .MT. Unlimited


       TP     Top of page  user-defined  macro.   This  macro  is
              called  instead  of  the  normal page header. It is
              possible to get complete control over  the  header.
              Note  that  header and footer is printed in a sepa­
              rate environment.  Linelength is preserved  though.

       TS [H] Table  start. This is the start of a table specifi­
              cation to tbl. See separate  manual  for  tbl.   TS
              ends  with  TE.  Argument H tells mm that the table
              has a header. See TH.

       TX     Userdefined table of contents exit.  This macro  is
              called  just  before  TC  prints the word CONTENTS.
              See TC.

       TY     Userdefined table of contents exit (no "CONTENTS").
              This  macro is called instead of printing CONTENTS.
              See TC.

       VERBON [flag [pointsize [font]]]
              Begin verbatim output using courier font.   Usually
              for  printing  programs.   All  character has equal
              width.  The pointsize can be changed with the  sec­
              ond argument. By specifying the font-argument it is
              possible to use another font  instead  of  courier.
              flag  controls  several  special features.  It con­
              tains the sum of all wanted features.
              ValueDescription
              1    Disable the escape-character (\). This is nor­
                   mally turned on during verbose output.
              2    Add an empty line before the verbose text.
              4    Add an empty line after the verbose text.
              8    Print  the  verbose  text with numbered lines.
                   This adds four digitsized spaces in the begin­
                   ning  of each line. Finer control is available
                   with the string-variable Verbnm.  It  contains
                   all  arguments  to the troff-command .nm, nor­
                   mally '1'.
              16   Indent the verbose text with five 'n':s.  This
                   is  controlled  by  the number-variable Verbin
                   (in units).

       VERBOFF
              End verbatim output.

       VL text-indent [mark-indent [1]]
              Variable-item list has no fixed  mark,  it  assumes
              that  every  LI  have  a mark instead.  Text-indent
              sets the indent to the text,  and  mark-indent  the
              distance  from  the  current indent to the mark.  A
              third argument will prohibit printing  of  a  blank
              line before each item.

              Vertical margin.

       WA [writer-name [title]]
              Begins  specification  of  the  writer and writer's
              address.  Several names can be specified with empty
              WA/WE-pairs, but only one address.

       WE     Ends the address-specification after .WA.

       WC [format]
              Footnote and display width control.
              N    Set default mode, -WF, -FF, -WD and FB.
              WF   Wide  footnotes, wide also in two-column mode.
              -WF  Normal footnote width, follow column mode.
              FF   All footnotes gets the same width as the first
                   footnote encountered.
              -FF  Normal footnotes, width follows WF and -WF.
              WD   Wide displays, wide also in two-column mode.
              -WD  Normal display width, follow column mode.
              FB   Floating  displays generates a line break when
                   printed on the current page.
              -FB  Floating  displays  does  not  generate   line
                   break.

       Strings used in mm:

       App    A string containing the word "APPENDIX".

       Apptxt

       The current appendix text.
              EM Em dash string

       H1txt  Will  be updated by .H and .HU to the current head­
              ing text.  Also updated  in  table  of  contents  &
              friends.

       HF     Fontlist  for  headings,  normally "2 2 2 2 2 2 2".
              Nonnumeric fontnames may also be used.

       HP     Pointsize list for headings. Normally "0 0 0 0 0  0
              0" which is the same as "10 10 10 10 10 10 10".

       Index

       Contains INDEX.
              Indcmd

              Lifg String containing Figure.

       Litb   String containing TABLE.

       Liex   String containing Exhibit.

       Liec   String containing Equation.

       Licon  String containing CONTENTS.

       Lf     Contains "LIST OF FIGURES".

       Lt     Contains "LIST OF TABLES".

       Lx     Contains "LIST OF EXHIBITS".

       Le     Contains "LIST OF EQUATIONS".

       Letfc  Contains "Yours very truly,", used in .FC.

       Letapp Contains "APPROVED:", used in .AV.

       Letdate
              Contains "Date", used in .AV.

       LetCN  Contains "CONFIDENTIAL", used in .LO CN.

       LetSA  Contains "To Whom It May Concern:", used in .LO SA.

       LetAT  Contains "ATTENTION:", used in .LO AT.

       LetSJ  Contains "SUBJECT:", used in .LO SJ.

       LetRN  Contains "In reference to:", used in .LO RN.

       Letns  is an array containing the different  strings  used
              in  .NS.   It is really a number of stringvariables
              prefixed with  Letns!.   If  the  argument  doesn't
              exist,   it   will  be  included  between  ()  with
              Letns!copy  as  prefix  and  Letns!to  as   suffix.
              Observe the space after copy and before to.
              Name           Value
              Letns!0        Copy to
              Letns!1        Copy (with att.) to
              Letns!2        Copy (without att.) to
              Letns!3        Att.
              Letns!4        Atts.
              Letns!5        Enc.
              Letns!6        Encs.
              Letns!7        Under separate cover
              Letns!8        Letter to
              Letns!9        Memorandum to
              Letns!10       Copy (with atts.) to

              Letns!12       Abstract Only to
              Letns!13       Complete Memorandum to
              Letns!14       CC
              Letns!copy     Copy "
              Letns!to       " to

       Letnsdef
              Defines the standard-notation used when no argument
              is given to .NS. Default is 0.

       MO1 - MO12
              Strings containing January thru December.

       Qrf    String  containing  "See  chapter  \\*[Qrfh],  page
              \\n[Qrfp].".

       Rp     Contains "REFERENCES".

       Tcst   Contains  current  status  of table of contents and
              list of XXXX.  Empty outside .TC.  Useful in  user-
              defined macros like .TP.
              Value          Meaning
              co             Table of contents
              fg             List of figures
              tb             List of tables
              ec             List of equations
              ex             List of exhibits
              ap             Appendix

       Tm     Contains \(tm, trade mark.

       Verbnm Argument to .nm in .VERBON, default: 1.

       Number variables used in mm:

       Aph    Print  an  appendix-page  for every new appendix if
              this numbervariable is non-zero.   No  output  will
              occur  if  Aph is zero, but there will always be an
              appendix-entry in the 'List of contents'.

       Cl     Contents level [0:7],  contents  saved  if  heading
              level <= Cl, default 2.

       Cp     Eject page between LIST OF XXXX if Cp == 0, default
              0.

       D      Debugflag, values >0  produces  varying  degree  of
              debug.  A  value  of  1 gives information about the
              progress of formatting, default 0.

       De     Eject  after  floating  display  is  output  [0:1],
              default 0.

              displays if defined. Otherwise is the value of  Lsp
              used.

       Df     Floating keep output [0:5], default 5.

       Ds     Lsp  space  before and after display if == 1 [0:1],
              default 1.

       Ej     Eject page, default 0.

       Eq     Equation lable adjust 0=left, 1=right. Default 0.

       Fs     Footnote spacing, default 1.

       H1-H7  Heading counters

       H1dot  Append a dot after the level one heading number  if
              > 0. Default is 1.

       H1h

       Copy of number register H1, but it is incremented
              just  before the page break. Useful in user defined
              header  macros.   Hb  Heading  break  level  [0:7],
              default 2.

       Hc     Heading centering level, [0:7]. Default 0.

       Hi     Heading temporary indent [0:2], default 1.
              0 -> 0 indent, left margin
              1 -> indent to right , like .P 1
              2 -> indent  to line up with text part of preceding
              heading

       Hps    Numbervariable with the heading pre-space level. If
              the  heading-level  is  less  than or equal to Hps,
              then two lines will  precede  the  section  heading
              instead  of  one. Default is first level only.  The
              real amount of lines is controlled by the variables
              Hps1 and Hps2.

       Hps1   This  is  the number of lines preceding .H when the
              heading-level is greater  than  Hps.  Value  is  in
              units, normally 0.5.

       Hps2   This  is  the number of lines preceding .H when the
              heading-level is less than or equal to  Hps.  Value
              is in units, normally 1.

       Hs     Heading space level [0:7], default 2.

       Hss    This  is  the  number of lines that follows .H when
              the heading-level is less  than  or  equal  to  Hs.


       Ht     Heading  numbering  type, default 0.  0 -> multiple
              (1.1.1 ...)
              1 -> single

       Hu     Unnumbered heading level, default 2.

       Hy     Hyphenation in body, default 1.
              0 -> no hyphenation
              1 -> hyphenation 14 on

       Iso    Set this variable to 1 on the command line  to  get
              ISO-formatted   date   string.   (-rIso=1)  Useless
              inside a document.

       Letwam Max  lines  in  return-address,  used  in  .WA/.WE.
              Default 14.

       Lf, Lt, Lx, Le
              Enables (1) or disables (0) the printing of List of
              figures, List of tables, List of exhibits and  List
              of equations.  Default: Lf=1, Lt=1, Lx=1, Le=0.

       Li     List indent, used by .AL, default 6.

       Limsp  Flag for space between prefix and mark in automatic
              lists (.AL).
              0 == no space
              1 == space

       Ls     List space, if current listlevel > Ls then no spac­
              ing will occur around lists.  Default 99.

       Lsp    The size of an empty line. Normally 0.5v, but it is
              1v if n is set (.nroff).

       N      Numbering style [0:5], default 0.
              0 == (default) normal header for all pages.
              1 == header replaces footer on first  page,  header
              is empty.
              2 == page header is removed on the first page.
              3 == "section-page" numbering enabled.
              4 == page header is removed on the first page.
              5 == "section-page"  and "section-figure" numbering
              enabled.  See also the  number-register  Sectf  and
              Sectp.

       Np     Numbered paragraphs, default 0.
              0 == not numbered
              1 == numbered in first level headings.

       Of     Format   of  figure,table,exhibit,equation  titles,
              default 0.

              1 = " - "

       P      Current page-number, normally the same as %  unless
              "section-page" numbering is enabled.

       Pi     paragraph indent, default 5.

       Pgps   Controls whether header and footer pointsize should
              follow the current setting or just change when  the
              header and footer is defined.
              ValueDescription
              0    Pointsize will only change to the current set­
                   ting when .PH, .PF, .OH, .EH, .OF  or  .OE  is
                   executed.
              1    Pointsize  will change after every .S. This is
                   the default.

       Ps     paragraph spacing, default 1.

       Pt     Paragraph type, default 0.
              0 == left-justified
              1 == indented .P
              2 == indented .P except after .H, .DE or .LE.

       Sectf  Flag  controlling  "section-figures".  A   non-zero
              value enables this.  See also register N.

       Sectp  Flag controlling "section-page-numbers". A non-zero
              value enables this.  See also register N.

       Si     Display indent, default 5.

       Verbin Indent for .VERBON, default 5n.

       .mgm   Always 1.


INTERNALS

       The letter macros is using different  submacros  depending
       on  the letter type. The name of the submacro has the let­
       ter type as suffix. It is  therefore  possible  to  define
       other  letter types, either in the national macro-file, or
       as local additions.  .LT will set the number variables  Pt
       and  Pi to 0 and 5.  The following strings and macros must
       be defined for a new letter type:

       let@init_type
              This macro is called directly by .LT.  It  is  sup­
              posed to initialize variables and other stuff.

       let@head_type
              This  macro  prints  the letter head, and is called
              instead of the normal page header. It  is  supposed

              be called for all pages.

       let@sg_type name title n flag [arg1 [arg2 [...]]]
              .SG is calling this macro only for  letters,  memo­
              randums  has  its own processing. name and title is
              specified thru .WA/.WB. n is  the  counter,  1-max,
              and flag is true for the last name. Any other argu­
              ment to .SG is appended.

       let@fc_type closing
              This macro is called by .FC,  and  has  the  formal
              closing as argument.

       .LO  is implemented as a general option-macro. .LO demands
       that a string named Lettype is defined, where type is  the
       letter  type.   .LO  will  then assign the argument to the
       string variable let*lo-type.


AUTHOR

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


FILES

       /usr/share/groff/1.17.2/tmac/tmac.m

       /usr/share/groff/1.17.2/tmac/mm/*.cov

       /usr/share/groff/1.17.2/tmac/mm/*.MT

       /usr/share/groff/1.17.2/tmac/mm/locale


SEE ALSO

       groff(1), troff(1), tbl(1), pic(1), eqn(1)
       mm(7) mmse(7)


Man(1) output converted with man2html