diff options
Diffstat (limited to 'upstream/mageia-cauldron/man7/groff_mm.7')
-rw-r--r-- | upstream/mageia-cauldron/man7/groff_mm.7 | 3995 |
1 files changed, 3995 insertions, 0 deletions
diff --git a/upstream/mageia-cauldron/man7/groff_mm.7 b/upstream/mageia-cauldron/man7/groff_mm.7 new file mode 100644 index 00000000..40a2f932 --- /dev/null +++ b/upstream/mageia-cauldron/man7/groff_mm.7 @@ -0,0 +1,3995 @@ +'\" t +.TH GROFF_MM 7 "17 December 2018" "groff 1.22.4" +.SH NAME +groff_mm \- memorandum macros for GNU roff +. +. +.\" Save and disable compatibility mode (for, e.g., Solaris 10/11). +.do nr groff_mm_C \n[.C] +.cp 0 +. +. +.\" ==================================================================== +.\" Legal Terms +.\" ==================================================================== +.\" +.\" Copyright (C) 1989-2018 Free Software Foundation, Inc. +.\" +.\" Permission is granted to make and distribute verbatim copies of this +.\" manual provided the copyright notice and this permission notice are +.\" preserved on all copies. +.\" +.\" Permission is granted to copy and distribute modified versions of +.\" this manual under the conditions for verbatim copying, provided that +.\" the entire resulting derived work is distributed under the terms of +.\" a permission notice identical to this one. +.\" +.\" Permission is granted to copy and distribute translations of this +.\" manual into another language, under the above conditions for +.\" modified versions, except that this permission notice may be +.\" included in translations approved by the Free Software Foundation +.\" instead of in the original English. +. +. +.\" ==================================================================== +.SH SYNOPSIS +.\" ==================================================================== +. +.SY "groff \-mm" +.RI [ option +\&.\|.\|.\&] +.RI [ file +\&.\|.\|.\&] +.SY "groff \-m mm" +.RI [ option +\&.\|.\|.\&] +.RI [ file +\&.\|.\|.\&] +.YS +. +. +.\" ==================================================================== +.SH DESCRIPTION +.\" ==================================================================== +. +The groff mm macros are intended to be compatible with the DWB mm macros +with the following limitations: +. +.TP +.B \(bu +No Bell Labs localisms are implemented. +. +.TP +.B \(bu +The macros OK and PM are not implemented. +. +.TP +.B \(bu +groff mm does not support cut marks. +. +. +.LP +.B mm +is intended to support easy localization. +. +Use +.B mmse +as an example how to adapt the output format to a national standard. +. +Localized strings are collected in the file +.IR /usr/\:share/\:groff/\:1.22.4/\:tmac/ xx .tmac , +where +.I xx +denotes the two-letter code for the +.IR language , +as defined in the ISO 639 standard. +. +For Swedish, this is \[oq]sv.tmac\[cq] \[en] not \[oq]se\[cq], which +is the ISO 3166 two-letter code for the +.I country +(as used for the output format localization). +. +. +.\"######################################################################## +.LP +A file called +.I locale +or +.RI country _locale +is read after the initialization of the global variables. +. +It is therefore possible to localize the macros with a different company +name and so on. +. +. +.LP +In this manual, square brackets are used to show optional arguments. +. +. +.\" ==================================================================== +.SS "Number registers and strings" +.\" ==================================================================== +. +Many macros can be controlled by number registers and strings. +. +A number register is assigned with the +.B nr +command: +. +.RS +.LP +.BI .nr\ "XXX \fR[\fP\fB\[+-]\fP\fR]\fPn \fR[\fPi\fR]\fP\"" +.RE +. +. +.LP +.I XXX +is the name of the register, +.IR n \~is +the value to be assigned, and +.IR i \~is +the increment value for auto-increment. +. +.IR n \~can +have a plus or minus sign as a prefix if an increment +or decrement of the current value is wanted. +. +(Auto-increment or auto-decrement occurs if the number register is +used with a plus or minus sign, +.BI \[rs]n+[ XXX ] +or +.BI \[rs]n\-[ XXX ]\fR.)\fP +. +. +.LP +Strings are defined with +.BR ds . +. +.RS +.LP +\fB\&.ds\fP \fIYYY string\fP +.RE +. +. +.LP +The string is assigned everything to the end of the line, +even blanks. +. +Initial blanks in +.I string +should be prefixed with a double-quote. +. +(Strings are used in the text as +.BI \[rs]*[ YYY ]\fR.)\fP +. +. +.\" ==================================================================== +.SS "Special formatting of number registers" +.\" ==================================================================== +. +A number register is printed with normal digits if no format has been +given. +. +Set the format with +.BR af : +. +.RS +.LP +.BI .af\ "R c" +.RE +. +. +.LP +.IR R \~is +the name of the register, +.IR c \~is +the format. +. +.RS +.LP +.TS +tab(@); +lb lb +l l. +Form@Sequence +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, .\|.\|. +.TE +.RE +. +. +.\" ==================================================================== +.SS Fonts +.\" ==================================================================== +. +In +.BR mm , +the fonts (or rather, font styles) +.BR R \~(normal), +.BR I \~(italic), +and +.BR B \~(bold) +are hardwired to font positions +.BR 1 , +.BR 2 , +and\~\c +.BR 3 , +respectively. +. +Internally, font positions are used for backwards compatibility. +. +From a practical point of view it doesn't make a big difference +\[en] a different font family can still be selected with a call to the +.B .fam +request or using +.BR groff 's +.B \-f +command-line option. +. +On the other hand, if you want to replace just, say, font +.BR B , +you have to replace the font at position\~2 (with a call to +\[oq].fp\~2\~.\|.\|.\[cq]). +. +. +.\" ==================================================================== +.SS Macros +.\" ==================================================================== +. +.TP +.BI )E\ "level text" +Add heading text +.I text +to the table of contents with +.IR level , +which is either\~0 or in the range 1 to\~7. +. +See also +.BR .H . +. +This macro is used for customized tables of contents. +. +.TP +.BR 1C\ [ 1 ] +Begin one-column processing. +. +A\~\c +.B 1 +as an argument disables the page break. +. +Use wide footnotes, small footnotes may be overprinted. +. +.TP +.B 2C +Begin two-column processing. +. +Splits the page in two columns. +. +It is a special case of +.BR MC . +See also +.BR 1C . +. +.TP +.B AE +Abstract end, see +.BR AS . +. +.TP +.BI AF\ \fR[\fP name-of-firm \fR]\fP +Author's firm, should be called before +.BR AU , +see also +.BR COVER . +. +.TP +.BI AL\ \fR[\fPtype\ \fR[\fPtext-indent\ \fR[\fP1\fR]]]\fP +Start auto-increment list. +. +Items are numbered beginning with one. +. +The +.I type +argument controls the format of numbers. +. +.RS +.IP +.TS +tab(@); +lb lb +l l. +Arg@Description +1@Arabic (the default) +A@Upper-case letters (A\(enZ) +a@Lower-case letters (a\(enz) +I@Upper-case roman +i@Lower-case roman +.TE +.RE +. +.IP +.I text-indent +sets the indentation and overrides +.BR Li . +A third argument prohibits printing of a blank line before each item. +. +.TP +.BI APP\ "name text" +Begin an appendix with name +.IR name . +. +Automatic naming occurs if +.I name +is +.BR \[dq]\[dq] . +. +The appendices start with\~\c +.B A +if automatic naming is used. +. +A new page is ejected, and a header is also produced if the number +variable +.B Aph +is non-zero. +. +This is the default. +. +The appendix always appears in the \[oq]List of contents\[cq] with +correct page numbers. +. +The name \[oq]APPENDIX\[cq] can be changed by setting the string +.B App +to the desired text. +. +The string +.B Apptxt +contains the current appendix text. +. +.TP +.BI APPSK\ "name pages text" +Same as +.BR .APP , +but the page number is incremented with +.IR pages . +. +This is used when diagrams or other non-formatted documents are +included as appendices. +. +.TP +.BI AS\ "\fR[\fParg \fR[\fPindent\fR]]\fP" +Abstract start. +. +Indentation is specified in \[oq]ens\[cq], but scaling is allowed. +. +Argument +.I arg +controls where the abstract is printed. +. +.RS +.TS +tab(@); +lb lb +l lx. +\fBArg@Placement\fP +0@T{ +Abstract is printed on page\~1 and on the cover sheet if used in the +released-paper style (\fBMT 4\fP), +otherwise it is printed on page\~1 without a cover sheet. +T} +1@Abstract is only printed on the cover sheet (\fBMT 4\fP only). +2@T{ +Abstract is printed only on the cover sheet (other than \fBMT 4\fP only). +The cover sheet is printed without a need for \fBCS\fP. +T} +.TE +.RE +. +.IP +An abstract is not printed at all in external letters (\fBMT 5\fP). +. +The +.I indent +parameter controls the indentation of both margins, otherwise normal +text indentation is used. +. +.TP +.BI AST\ \fR[\fPtitle\fR]\fP +Abstract title. +. +Default is \[oq]ABSTRACT\[cq]. +. +Sets the text above the abstract text. +. +.TP +.BI AT\ "title1 \fR[\fPtitle2 \fR[.\|.\|.]]\fP" +Author's title. +. +.B AT +must appear just after each +.BR AU . +. +The title shows up after the name in the signature block. +. +.TP +.BI AU\ "\fR[\fPname \fR[\fPinitials \fR[\fPloc \fR[\fPdept \fR[\fPext \fR[\fProom \fR[\fParg \fR[\fParg \fR[\fParg\fR]]]]]]]]]\fP" +Author information. +. +Specifies the author of the memo or paper, and is printed on the cover +sheet and on other similar places. +.B AU +must not appear before +.BR TL . +. +The author information can contain initials, location, department, +telephone extension, room number or name and up to three extra +arguments. +. +.TP +.BI AV\ \fR[\fPname\ \fR[\fP1\fR]]\fP +Approval signature. +. +Generates an approval line with place for signature and date. +. +The string \[oq]APPROVED:\[cq] can be changed with variable +.BR Letapp ; +it is replaced with an empty lin if there is a second argument. +. +The string \[oq]Date\[cq] can be changed with variable +.BR Letdate . +. +.TP +.BI AVL\ \fR[\fPname\fR]\fP +Letter signature. +. +Generates a line with place for signature. +. +.TP +.BI B\ "\fR[\fPbold-text \fR[\fPprev-font-text \fR[\fPbold \fR[.\|.\|.]]]]\fP" +Begin boldface. +. +No limit on the number of arguments. +. +All arguments are concatenated to one word; the first, third and so on +is printed in boldface. +. +.TP +.B B1 +Begin box (as the ms macro). +. +Draws a box around the text. +. +The text is indented one character, and the right margin is one +character shorter. +. +.TP +.B B2 +End box. +. +Finishes the box started with +.BR B1 . +. +.TP +.B BE +End bottom block, see +.BR BS . +. +.TP +.BI BI\ "\fR[\fPbold-text \fR[\fPitalic-text \fR[\fPbold-text \fR[.\|.\|.]]]]\fP" +Bold-italic. +. +No limit on the number of arguments, +see\~\c +.BR B . +. +.TP +.BI BL\ \fR[\fPtext-indent\ \fR[\fP1\fR]]\fP +Start bullet list. +. +Initializes a list with a bullet and a space in the beginning of each +list item (see +.BR LI ). +. +.I text-indent +overrides the default indentation of the list items set by number register +.BR Pi . +. +A third argument prohibits printing of a blank line before each item. +. +.TP +.BI BR\ "\fR[\fPbold-text \fR[\fProman-text \fR[\fPbold-text \fR[.\|.\|.]]]]\fP" +Bold-roman. +No limit on the number of arguments. +. +.TP +.B BS +Bottom block start. +. +Begins the definition of a text block which is printed at the bottom +of each page. +. +The block ends with +.BR BE . +. +.TP +.BI BVL\ "text-indent \fR[\fPmark-indent\ " \fR[\fP1\fR]]\fP +Start of broken variable-item list. +. +Broken variable-item list has no fixed mark, +it assumes that every +.B LI +has a mark instead. +. +The text always begins at the next line after the mark. +. +.I text-indent +sets the indentation to the text, and +.I mark-indent +the distance from the current indentation to the mark. +. +A third argument prohibits printing of a blank line before each item. +. +.TP +.BI COVER\ \fR[\fParg\fR]\fP +Begin a coversheet definition. +. +It is important that +.B .COVER +appears before any normal text. +. +This macro uses +.I arg +to build the filename +.IR /usr/share/groff/1.22.4/tmac/mm/ arg .cov . +. +Therefore it is possible to create unlimited types of cover sheets. +. +.I ms.cov +is supposed to look like the ms cover sheet. +. +.B .COVER +requires a +.B .COVEND +at the end of the cover definition. +. +Always use this order of the cover macros: +. +.RS +.IP +.nf +\&.COVER +\&.TL +\&.AF +\&.AU +\&.AT +\&.AS +\&.AE +\&.COVEND +.fi +.RE +. +.IP +However, only +.B .TL +and +.B .AU +are required. +. +.TP +.B COVEND +Finish the cover description and print the cover page. +. +It is defined in the cover file. +. +.TP +.B DE +Display end. +. +Ends a block of text or display that begins with +.B DS +or +.BR DF . +. +.TP +.BI DF\ "\fR[\fPformat \fR[\fPfill \fR[\fPrindent\fR]]]\fP" +Begin floating display (no nesting allowed). +. +A floating display is saved in a queue and is printed in the order entered. +.IR Format , +.IR fill , +and +.I rindent +are the same as in +.BR DS . +Floating displays are controlled by the two number registers +.B De +and +.BR Df . +. +.IP +.B De register +. +.RS +.IP +.TS +tab(@); +l lx. +0@T{ +Nothing special, this is the default. +T} +1@T{ +A page eject occurs after each printed display, +giving only one display per page and no text following it. +T} +.TE +.RE +. +.IP +.B Df register +. +.RS +.IP +.TS +tab(@); +l lx. +0@T{ +Displays are printed at the end of each section (when section-page +numbering is active) or at the end of the document. +T} +1@T{ +A new display is printed on the current page if there is enough space, +otherwise it is printed at the end of the document. +T} +2@T{ +One display is printed at the top of each page or column +(in multi-column mode). +T} +3@T{ +Print one display if there is enough space for it, +otherwise it is printed at the top of the next page or column. +T} +4@T{ +Print as many displays as possible in a new page or column. +A page break occurs between each display if +.B De +is not zero. +T} +5@T{ +Fill the current page with displays and the rest beginning at a new page +or column. +(This is the default.) +A page break occurs between each display +if \fBDe\fP is not zero. +T} +.TE +.RE +. +.TP +.BI DL\ \fR[\fPtext-indent\ "\fR[\fP\fB1\fP \fR[\fP\fB1\fP\fR]]]\fP" +Dash list start. +. +Begins a list where each item is printed after a dash. +. +.I text-indent +changes the default indentation of the list items set by number +register +.BR Pi . +. +A second argument prevents an empty line between each list item. +. +See +.BR LI . +. +A third argument prohibits printing of a blank line before each item. +. +.TP +.BI DS\ "\fR[\fPformat \fR[\fPfill \fR[\fPrindent\fR]]]\fP" +Static display start. +. +Begins collection of text until +.BR DE . +. +The text is printed together on the same page, unless it is longer +than the height of the page. +. +.B DS +can be nested arbitrarily. +. +.IP +.B format +. +.RS +.IP +.TS +tab(@); +l lx. +\[dq]\[dq]@No indentation. +none@No indentation. +L@No indentation. +I@T{ +Indent text with the value of number register +.BR Si . +T} +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. +.TE +.RE +. +.IP +The values \[oq]L\[cq], \[oq]I\[cq], \[oq]C\[cq], and \[oq]CB\[cq] can +also be specified as \[oq]0\[cq], \[oq]1\[cq], \[oq]2\[cq], and +\[oq]3\[cq], respectively, for compatibility reasons. +. +.IP +.B fill +. +.RS +.IP +.TS +tab(@); +l l. +\[dq]\[dq]@Line-filling turned off. +none@Line-filling turned off. +N@Line-filling turned off. +F@Line-filling turned on. +.TE +.RE +. +.IP +\[oq]N\[cq] and \[oq]F\[cq] can also be specified as \[oq]0\[cq] and +\[oq]1\[cq], respectively. +. +.IP +By default, an empty line is printed before and after the display. +. +Setting number register +.B Ds +to\~0 prevents this. +. +.I rindent +shortens the line length by that amount. +. +.TP +.BI EC\ "\fR[\fPtitle \fR[\fPoverride \fR[\fPflag \fR[\fPrefname\fR]]]]\fP" +Equation title. +. +Sets a title for an equation. +. +The +.I override +argument changes the numbering. +. +.IP +.B flag +. +.RS +.IP +.TS +tab(@); +l lx. +none@T{ +.I override +is a prefix to the number. +T} +0@T{ +.I override +is a prefix to the number. +T} +1@T{ +.I override +is a suffix to the number. +T} +2@T{ +.I override +replaces the number. +T} +.TE +.RE +. +.IP +.B EC +uses the number register +.B Ec +as a counter. +. +It is possible to use +.B .af +to change the format of the number. +. +If number register +.B Of +is\~1, the format of title uses a dash instead of a dot after the +number. +. +.IP +The string +.B Le +controls the title of the List of Equations; +default is \[oq]LIST OF EQUATIONS\[cq]. +. +The List of Equations is only printed if number register +.B Le +is\~1. +. +The default is\~0. +. +The string +.B Liec +contains the word \[oq]Equation\[cq], which is printed before the +number. +. +If +.I refname +is used, +then the equation number is saved with +.BR .SETR , +and can be retrieved with \[oq]\fB.GETST\fP \fIrefname\fP\[cq]. +. +.IP +Special handling of the title occurs if +.B EC +is used inside +.BR DS / DE ; +it is not affected by the format of +.BR DS . +. +.TP +.BI EF\ \fR[\fParg\fR]\fP +Even-page footer, +printed just above the normal page footer on even pages. +. +See +.BR PF . +. +.IP +This macro defines string +.BR EOPef . +. +.TP +.BI EH\ \fR[\fParg\fR]\fP +Even-page header, +printed just below the normal page header on even pages. +. +See +.BR PH . +. +.IP +This macro defines string +.BR TPeh . +. +.TP +.B EN +Equation end, see +.BR EQ . +. +.TP +.B EOP +End-of-page user-defined macro. +. +This macro is called instead of the normal printing of the footer. +. +The macro is executed in a separate environment, +without any trap active. +. +See +.BR TP . +. +.IP +.B Strings available to EOP +.RS +.TS +tab(@); +l l. +EOPf@argument of \fBPF\fP +EOPef@argument of \fBEF\fP +EOPof@argument of \fBOF\fP +.TE +.RE +. +.TP +.BI EPIC\ "\fR[\fP\fB\-L\fP\fR]\fP width height \fR[\fPname\fR]\fP" +Draw a box with the given +.I width +and +.IR height . +. +It also prints the text +.I name +or a default string if +.I name +is not specified. +. +This is used to include external pictures; +just give the size of the picture. +. +.B \-L +left-adjusts the picture; +the default is to center. +. +See +.BR PIC . +. +.TP +.BI EQ\ \fR[\fPlabel\fR]\fP +Equation start. +. +.BR EQ / EN +are the delimiters for equations written for +.BR eqn (1). +. +.BR EQ / EN +must be inside of a +.BR DS / DE +pair, except if +.B EQ +is used to set options for +.B eqn +only. +. +The +.I label +argument appears at the right margin of the equation, +centered vertically within the +.BR DS / DE +block, +unless number register +.B Eq +is\~1. +. +Then the label appears at the left margin. +. +.IP +If there are multiple +.BR EQ / EN +blocks within a single +.BR DS / DE +pair, +only the last equation label (if any) is printed. +. +.TP +.BI EX\ "\fR[\fPtitle \fR[\fPoverride \fR[\fPflag \fR[\fPrefname\fR]]]]\fP" +Exhibit title. +. +The arguments are the same as for +.BR EC . +. +.B EX +uses the number register +.B Ex +as a counter. +. +The string +.B Lx +controls the title of the List of Exhibits; +default is \[oq]LIST OF EXHIBITS\[cq]. +. +The List of Exhibits is only printed if number register +.B Lx +is\~1, +which is the default. +. +The string +.B Liex +contains the word \[oq]Exhibit\[cq], which is printed before the +number. +. +If +.I refname +is used, the exhibit number is saved with +.BR .SETR , +and can be retrieved with \[oq]\fB.GETST\fP \fIrefname\fP\[cq]. +. +.IP +Special handling of the title occurs if +.B EX +is used inside +.BR DS / DE ; +it is not affected by the format of +.BR DS . +. +.TP +.BI FC\ \fR[\fPclosing\fR]\fP +Print \[oq]Yours\~very\~truly,\[cq] as a formal closing of a letter or +memorandum. +. +The argument replaces the default string. +. +The default is stored in string variable +.BR Letfc . +. +.TP +.BI FD\ \fR[\fParg\ \fR[\fP1\fR]]\fP +Footnote default format. +. +Controls the hyphenation (hyphen), +right margin justification (adjust), +and indentation of footnote text (indent). +. +It can also change the label justification (ljust). +. +.RS +.IP +.TS +tab(@); +lb lb lb lb lb +l l l l l. +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 +.TE +.RE +. +.IP +An argument greater than or equal to 11 is considered as value\~0. +. +Default for +.B mm +is 10. +. +.TP +.B FE +Footnote end. +. +.TP +.BI FG\ "\fR[\fPtitle \fR[\fPoverride \fR[\fPflag \fR[\fPrefname\fR]]]]\fP" +Figure title. +. +The arguments are the same as for +.BR EC . +.B FG +uses the number register +.B Fg +as a counter. +. +The string +.B Lf +controls the title of the List of Figures; +default is \[oq]LIST OF FIGURES\[cq]. +. +The List of Figures is only printed if number register +.B Lf +is\~1, which is the default. +. +The string +.B Lifg +contains the word \[oq]Figure\[cq], which is printed before the +number. +. +If +.I refname +is used, then the figure number is saved with +.BR .SETR , +and can be retrieved with \[oq]\fB.GETST\fP \fIrefname\fP\[cq]. +. +.IP +Special handling of the title occurs if +.B FG +is used inside +.BR DS / DE , +it is not affected by the format of +.BR DS . +. +.TP +.BI FS\ \fR[\fPlabel\fR]\fP +Footnote start. +. +The footnote is ended by +.BR FE . +. +By default, footnotes are automatically numbered; +the number is available in string\~\c +.BR F . +. +Just add +.B \[rs]*F +in the text. +. +By adding +.IR label , +it is possible to have other number or names on the footnotes. +. +Footnotes in displays are now possible. +. +An empty line separates footnotes; +the height of the line is controlled by number register +.BR Fs , +default value is\~1. +. +.TP +.BI GETHN\ "refname \fR[\fPvarname\fR]\fP" +Include the header number where the corresponding \[oq]\fBSETR\fP +\fIrefname\fP\[cq] was placed. +. +This is displayed as \[oq]X.X.X.\[cq] in pass\~1. +. +See +.BR INITR . +. +If +.I varname +is used, +.B GETHN +sets the string variable +.I varname +to the header number. +. +.TP +.BI GETPN\ "refname \fR[\fPvarname\fR]\fP" +Include the page number where the corresponding \[oq]\fBSETR\fP +\fIrefname\fP\[cq] was placed. +. +This is displayed as \[oq]9999\[cq] in pass\~1. +. +See +.BR INITR . +. +If +.I varname +is used, +.B GETPN +sets the stringvariable +.I varname +to the page number. +. +.TP +.BI GETR\ refname +Combine +.B GETHN +and +.B GETPN +with the text \[oq]chapter\[cq] and \[oq],\~page\[cq]. +. +The string +.B Qrf +contains the text for the cross reference: +. +.RS +.IP +\&.ds Qrf See chapter \[rs]\[rs]*[Qrfh], page \[rs]\[rs]*[Qrfp]. +.RE +. +.IP +.B Qrf +may be changed to support other languages. +. +Strings +.B Qrfh +and +.B Qrfp +are set by +.B GETR +and contain the page and header number, respectively. +. +.TP +.BI GETST\ "refname \fR[\fPvarname\fR]\fP" +Include the string saved with the second argument to +.BR .SETR . +. +This is a dummy string in pass\~1. +. +If +.I varname +is used, +.B GETST +sets it to the saved string. +. +See +.BR INITR . +. +.TP +.BI H\ "level \fR[\fPheading-text \fR[\fPheading-suffix\fR]]\fP" +Numbered section heading. +. +Section headers can have a level between 1 and 14; +level\~1 is the top level. +. +The text is given in +.IR heading-text , +and must be surrounded by double quotes if it contains spaces. +. +.I 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 +.B \[rs]*F +in +.IR heading-suffix , +it doesn't work. +. +A manual label must be used, see +.BR FS . +.sp +A call to the paragraph macro\~\c +.B P +directly after\~\c +.B H +is ignored. +. +.BR H \~takes +care of spacing and indentation. +. +.IP +.B Page ejection before heading +. +.RS +.IP +Number register +.B Ej +controls page ejection before the heading. +. +By default, a level-one heading gets two blank lines before it; +higher levels only get one. +. +A new page is ejected before each first-level heading if number +register +.B Ej +is\~1. +. +All levels below or equal the value of +.B Ej +get a new page. +. +Default value for +.B Ej +is\~0. +.RE +. +.IP +.B Heading break level +. +.RS +.IP +A line break occurs after the heading if the heading level is less +or equal to number register +.BR Hb . +. +Default value is\~2. +.RE +. +.IP +.B Heading space level +. +.RS +.IP +A blank line is inserted after the heading if the heading level is +less or equal to number register +.BR Hs . +. +Default value is\~2. +. +.IP +Text follows the heading on the same line if the level is greater than +both +.B Hb +and +.BR Hs . +.RE +. +.IP +.B Post-heading indent +. +.RS +.IP +Indentation of the text after the heading is controlled by number +register +.BR Hi . +. +Default value is\~0. +. +.IP +.B Hi +.TS +tab(@); +l lx. +0@The text is left-justified. +1@T{ +Indentation of the text follows the value of number +register +.B Pt , +see +.BR P . +T} +2@T{ +The text is lined up with the first word of the heading. +T} +.TE +.RE +. +.IP +.B Centered section headings +. +.RS +.IP +All headings whose level is equal or below number register +.B Hc +and also less than or equal to +.B Hb +or +.B Hs +are centered. +.RE +. +.IP +.B Font control of the heading +. +.RS +.IP +The font of each heading level is controlled by string +.BR HF . +. +It contains a font number or font name for each level. +. +Default value is +. +.RS +.IP +.B 2 2 2 2 2 2 2 2 2 2 2 2 2 2 +.RE +. +.IP +(all headings in italic). +. +This could also be written as +. +.RS +.IP +.B I I I I I I I I I I I I I I +.RE +. +.IP +Note that some other implementations use +.B 3\~3\~2\~2\~2\~2\~2 +as the default value. +. +All omitted values are presumed to have value\~1. +.RE +. +.IP +.B Point size control +. +.RS +.IP +String +.B HP +controls the point size of each heading, +in the same way as +.B HF +controls the font. +. +A value of\~0 selects the default point size. +. +Default value is +. +.RS +.IP +.B 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +.RE +. +.IP +Beware that only the point size changes, not the vertical size. +. +The latter can be controlled by the user-specified macros +.B HX +and/or +.BR HZ . +.RE +. +.IP +.B Heading counters +. +.RS +.IP +Fourteen number registers named +.B H1 +up to +.B H14 +contain the counter for each heading level. +. +The values are printed using Arabic numerals; +this can be changed with the macro +.B HM +(see below). +. +All marks are concatenated before printing. +. +To avoid this, +set number register +.B Ht +to\~1. +. +This only prints the current heading counter at each heading. +.RE +. +.IP +.B Automatic table of contents +. +.RS +.IP +All headings whose level is equal or below number register +.B Cl +are saved to be printed in the table of contents. +. +Default value is\~2. +.RE +. +.IP +.B Special control of the heading, user-defined macros +. +.RS +.IP +The following macros can be defined by the user to get a finer control +of vertical spacing, fonts, or other features. +. +Argument +.I level +is the level-argument to\~\c +.BR H , +but\~0 for unnumbered headings (see +.BR HU ). +. +Argument +.I rlevel +is the real level; +it is set to number register +.B Hu +for unnumbered headings. +. +Argument +.I heading-text +is the text argument to +.B H +and +.BR HU . +. +.RS +.TP +.BI HX\ "level rlevel heading-text" +This macro is called just before the printing of the heading. +. +The following registers are available for +.BR HX . +. +Note that +.B HX +may alter +.BR }0 , +.BR }2 , +and +.BR ;3 . +. +.RS +.TP +.BR }0\ (string) +Contains the heading mark plus two spaces if +.I rlevel +is non-zero, +otherwise empty. +. +.TP +.BR ;0\ (register) +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. +. +.TP +.BR }2\ (string) +Contains two spaces if register +.B ;0 +is\~0. +. +It is used to separate the heading from the text. +. +The string is empty if +.B ;0 +is non-zero. +. +.TP +.BR ;3\ (register) +Contains the needed space in units after the heading. +. +Default is 2v. +. +Can be used to change things like numbering +.RB ( }0 ), +vertical spacing +.RB ( }2 ), +and the needed space after the heading. +.RE +. +.TP +.BI HY\ "dlevel rlevel heading-text" +This macro is called after size and font calculations and +might be used to change indentation. +. +.TP +.BI HZ\ "dlevel rlevel heading-text" +This macro is called after the printing of the heading, +just before +.B H +or +.B HU +exits. +. +Can be used to change the page header according to the section heading. +.RE +.RE +. +.TP +.BI HC\ \fR[\fPhyphenation-character\fR]\fP +Set hyphenation character. +. +Default value is \[oq]\[rs]%\[cq]. +. +Resets to the default if called without argument. +. +Hyphenation can be turned off by setting number register +.B Hy +to\~0 at the beginning of the file. +. +.TP +.BI HM\ "\fR[\fParg1 \fR[\fParg2 \fR[.\|.\|.\& [\fParg14\fR]]]]\fP" +Heading mark style. +. +Controls the type of marking for printing of the heading counters. +. +Default is\~1 for all levels. +. +.IP +.B Argument +. +.TS +tab(@); +l l. +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 +\[dq]\[dq]@Arabic numerals. +.TE +. +.TP +.BI HU\ heading-text +Unnumbered section header. +. +.B HU +behaves like +.B H +at the level in number register +.BR Hu . +. +See\~\c +.BR H . +. +.TP +.BI HX\ "dlevel rlevel heading-text" +User-defined heading exit. +. +Called just before printing the header. +. +See\~\c +.BR H . +. +.TP +.BI HY\ "dlevel rlevel heading-text" +User-defined heading exit. +. +Called just before printing the header. +. +See\~\c +.BR H . +. +.TP +.BI HZ\ "dlevel rlevel heading-text" +User-defined heading exit. +. +Called just after printing the header. +. +See\~\c +.BR H . +. +.TP +.BI I\ "\fR[\fPitalic-text \fR[\fPprev-font-text \fR[\fPitalic-text \fR[.\|.\|.]]]]\fP" +Italic. +. +Changes the font to italic if called without arguments. +. +With one argument it sets the word in italic. +. +With two arguments it concatenates them and sets the first +word in italic and the second in the previous font. +. +There is no limit on the number of argument; +all are concatenated. +. +.TP +.BI IA\ "\fR[\fPaddressee-name \fR[\fPtitle\fR]]\fP" +Begin specification of the addressee and addressee's address in +letter style. +. +Several names can be specified with empty +.BR IA / IE -pairs, +but only one address. +. +See +.BR LT . +. +.TP +.BI IB\ "\fR[\fPitalic-text \fR[\fPbold-text \fR[\fPitalic-text \fR[.\|.\|.]]]]\fP" +Italic-bold. +. +Even arguments are printed in italic, odd in boldface. +. +See\~\c +.BR I . +. +.TP +.B IE +End the address specification after +.BR IA . +. +.TP +.BI INITI\ "type filename \fR[\fPmacro\fR]\fP" +Initialize the new index system and set the filename to collect index +lines in with +.BR IND . +. +Argument +.I type +selects the type of index: page number, header marks or both. +. +The default is page numbers. +. +.IP +It is also possible to create a macro that is responsible +for formatting each row; +just add the name of the macro as a third argument. +. +The macro is then called with the index as argument(s). +. +.IP +.B type +. +.IP +.TS +tab(@); +l lx. +N@Page numbers +H@Header marks +B@T{ +Both page numbers and header marks, +separated with a tab character. +T} +.TE +. +.TP +.BI INITR\ filename +Initialize the cross reference macros. +. +Cross references are written to stderr and are supposed to be +redirected into file +.RI filename .qrf . +. +Requires two passes with groff; +this is handled by a separate program called +.BR mmroff (1). +. +This program exists because +.BR groff (1) +by default deactivates the unsafe operations that are required by +.BR INITR . +. +The first pass looks for cross references, +and the second one includes them. +. +.B INITR +can be used several times, +but it is only the first occurrence of +.B INITR +that is active. +. +.IP +See also +.BR SETR , +.BR GETPN , +and +.BR GETHN . +. +.TP +.BI IND\ "arg1 \fR[\fParg2 \fR[.\|.\|.]]\fP" +Write a line in the index file selected by +.B INITI +with all arguments and the page number or header mark separated by tabs. +. +.RS +.IP +.B Examples +. +.IP +arg1\[rs]tpage number +.br +arg1\[rs]targ2\[rs]tpage number +.br +arg1\[rs]theader mark +.br +arg1\[rs]tpage number\[rs]theader mark +.RE +. +.TP +.B INDP +Print the index by running the command specified by string variable +.BR Indcmd , +which has \[oq]sort\ \-t\[rs]t\[cq] as the default value. +. +.B INDP +reads the output from the command to form the index, +by default in two columns (this can be changed by defining +.BR TYIND ). +. +The index is printed with string variable +.B Index +as header, +default is \[oq]INDEX\[cq]. +. +One-column processing is reactivated after the list. +. +.B INDP +calls the user-defined macros +.BR TXIND , +.BR TYIND , +and +.B TZIND +if defined. +. +.B TXIND +is called before printing the string \[oq]INDEX\[cq], +.B TYIND +is called instead of printing \[oq]INDEX\[cq], and +.B TZIND +is called after the printing and should take care of restoring to +normal operation again. +. +.TP +.B ISODATE \fR[\fP0\fR]\fP +Change the predefined date string in +.B DT +to ISO-format, this is, \[oq]YYYY-MM-DD\[cq]. +. +This can also be done by adding +.B \-rIso=1 +on the command line. +. +Reverts to old date format if argument is\~\c +.BR 0 . +. +.TP +.BI IR\ "\fR[\fPitalic-text \fR[\fProman-text \fR[\fPitalic-text \fR[.\|.\|.]]]]\fP" +Italic-roman. +. +Even arguments are printed in italic, odd in roman. +. +See\~\c +.BR I . +. +.TP +.BI LB\ "text-indent mark-indent pad type \fR[\fPmark \fR[\fPLI-space \fR[\fPLB-space\fR]]]\fP" +List-begin macro. +. +This is the common macro used for all lists. +. +.I text-indent +is the number of spaces to indent the text from the current indentation. +. +.IP +.I pad +and +.I mark-indent +control where to put the mark. +. +The mark is placed within the mark area, and +.I mark-indent +sets the number of spaces before this area. +. +By default it is\~0. +. +The mark area ends where the text begins. +. +The start of the text is still controlled by +.IR text-indent . +. +.IP +The mark is left-justified within the mark area if +.I pad +is\~0. +. +If +.I pad +is greater than\~0, +.I mark-indent +is ignored, +and the mark is placed +.I pad +spaces before the text. +. +This right-justifies the mark. +. +.IP +If +.I type +is\~0 the list either has a hanging indentation or, +if argument +.I mark +is given, +the string +.I mark +as a mark. +. +.IP +If +.I type +is greater than\~0 automatic numbering occurs, +using arabic numbers if +.I mark +is empty. +. +.I mark +can then be any of \[oq]1\[cq], \[oq]A\[cq], \[oq]a\[cq], \[oq]I\[cq], +or \[oq]i\[cq]. +. +.IP +.I type +selects one of six possible ways to display the mark. +. +.IP +.B type +. +.RS +.IP +.br +.TS +tab(@); +l l. +1@x. +2@x) +3@(x) +4@[x] +5@<x> +6@{x} +.TE +.RE +. +.IP +Every item in the list gets +.I LI-space +number of blank lines before them. +. +Default is\~1. +. +.IP +.B LB +itself prints +.I LB-space +blank lines. +. +Default is\~0. +. +.TP +.BI LC\ \fR[\fPlist-level\fR]\fP +List-status clear. +. +Terminates all current active lists down to +.IR list-level , +or\~0 if no argument is given. +. +This is used by\~\c +.B H +to clear any active list. +. +.TP +.B LE \fR[\fP1\fR]\fP +List end. +. +Terminates the current list. +.B LE +outputs a blank line if an argument is given. +. +.TP +.BI LI\ \fR[\fPmark\ \fR[\fP1\fR|\fP2\fR]]\fP +List item preceding every item in a list. +. +Without argument, +.B LI +prints the mark determined by the current list type. +. +By giving +.B LI +one argument, it uses that as the mark instead. +. +Two arguments to +.B LI +makes +.I mark +a prefix to the current mark. +. +There is no separating space between the prefix and the mark if the +second argument is \[oq]2\[cq] instead of \[oq]1\[cq]. +. +This behaviour can also be achieved by setting number register +.B Limsp +to zero. +. +A zero length +.I mark +makes a hanging indentation instead. +. +.IP +A blank line is printed before the list item by default. +. +This behaviour can be controlled by number register +.BR Ls . +. +Pre-spacing occurs for each list level less than or equal to +.BR Ls . +. +Default value is 99. +. +There is no nesting limit. +. +.IP +The indentation can be changed through number register +.BR Li . +Default is\~6. +. +.IP +All lists begin with a list initialization macro, +.BR LB . +. +There are, however, seven predefined list types to make lists easier +to use. +. +They all call +.B LB +with different default values. +. +.RS +.IP +.TS +tab(@); +l l. +\fBAL\fP@Automatically Incremented List +\fBML\fP@Marked List +\fBVL\fP@Variable-Item List +\fBBL\fP@Bullet List +\fBDL\fP@Dash List +\fBRL\fP@Reference List +\fBBVL\fP@Broken Variable List. +.TE +.RE +. +.IP +These lists are described at other places in this manual. +. +See also +.BR LB . +. +.TP +.BI LT\ \fR[\fIarg\/\fR]\fI +Format a letter in one of four different styles depending +on the argument. +. +Also see section \[lq]Internals\[rq] below. +. +.RS +.IP +.TS +tab(@); +lb lb +l lx. +Arg@Style +BL@T{ +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. +T} +SB@T{ +Semi-blocked. +Same as blocked, +except that the first line in every paragraph is indented five spaces. +T} +FB@T{ +Full-blocked. +All lines begin at the left margin. +T} +SP@T{ +Simplified. +Almost the same as the full-blocked style. +Subject and the writer's identification are printed in all-capital. +T} +.TE +.RE +. +.TP +.BI LO\ "type \fR[\fParg\fR]\fP" +Specify options in letter (see +.BR .LT ). +. +This is a list of the standard options: +. +.RS +.IP +.TS +tab(@); +l lx. +CN@T{ +Confidential notation. +Prints \[oq]CONFIDENTIAL\[cq] on the second line below the date line. +. +Any argument replaces \[oq]CONFIDENTIAL\[cq]. +. +See also string variable +.BR LetCN . +T} +RN@T{ +Reference notation. +Prints \[oq]In reference to:\[cq] and the argument two lines below the date line. +See also string variable +.BR LetRN . +T} +AT@T{ +Attention. +Prints \[oq]ATTENTION:\[cq] and the argument below the inside address. +See also string variable +.BR LetAT . +T} +SA@T{ +Salutation. +Prints \[cq]To Whom It May Concern:\[cq] or the argument if it was present. +The salutation is printed two lines below the inside address. +See also string variable +.BR LetSA . +T} +SJ@T{ +Subject line. +Prints the argument as subject prefixed with \[oq]SUBJECT:\[cq] +two lines below the inside address, +except in letter type \[oq]SP\[cq], +where the subject is printed in all-capital without any prefix. +See also string variable +.BR LetSJ . +T} +.TE +.RE +. +.TP +.BI MC\ "column-size \fR[\fPcolumn-separation\fR]\fP" +Begin multiple columns. +. +Return to normal with +.BR 1C . +. +.B MC +creates as many columns as the current line length permits. +. +.I column-size +is the width of each column, +and +.I column-separation +is the space between two columns. +. +Default separation is +.IR column-size /15. +. +See also +.BR 1C . +. +.TP +.BI ML\ "mark \fR[\fPtext-indent\ " \fR[\fP1\fR]]\fP +Marked list start. +. +The +.I mark +argument is printed before each list item. +. +.I text-indent +sets the indent and overrides +.BR Li . +. +A third argument prohibits printing of a blank line before each item. +. +.TP +.BI MT\ "\fR[\fParg \fR[\fPaddressee\fR]]\fP" +Memorandum type. +. +The argument +.I arg +is part of a filename in +.IR /usr/share/groff/1.22.4/tmac/mm/ * .MT . +. +Memorandum types 0 to\~5 are supported, including type +\[oq]string\[cq] (which gets internally mapped to type\~6). +. +.I addressee +just sets a variable, used in the AT&T macros. +. +.IP +.B arg +. +.RS +.IP +.TS +tab(@); +l l. +0@Normal memorandum, no type printed. +1@Memorandum with \[oq]MEMORANDUM FOR FILE\[cq] printed. +2@Memorandum with \[oq]PROGRAMMER'S NOTES\[cq] printed. +3@Memorandum with \[oq]ENGINEER'S NOTES\[cq] printed. +4@Released paper style. +5@External letter style. +.TE +.RE +. +.IP +See also +.BR COVER / COVEND , +a more flexible type of front page. +. +.TP +.BI MOVE\ "y-pos \fR[\fPx-pos \fR[\fPline-length\fR]]\fP" +Move to a position, setting page offset to +.IR x-pos . +. +If +.I line-length +is not given, the difference between current and new page offset is +used. +. +Use +.B PGFORM +without arguments to return to normal. +. +.TP +.BI MULB\ "cw1 space1 \fR[\fPcw2 space2 \fR[\fPcw3 \fR.\|.\|.]]\fP" +Begin a special multi-column mode. +. +All columns widths must be specified. +. +The space between the columns must be specified also. +. +The last column does not need any space definition. +. +.B MULB +starts a diversion, and +.B MULE +ends the diversion and prints the columns. +. +The unit for the width and space arguments is \[oq]n\[cq], but +.B MULB +accepts all normal unit specifications like \[oq]c\[cq] and \[oq]i\[cq]. +. +.B MULB +operates in a separate environment. +. +.TP +.B MULN +Begin the next column. +. +This is the only way to switch the column. +. +.TP +.B MULE +End the multi-column mode and print the columns. +. +.TP +.BI nP\ \fR[\fPtype\fR]\fP +Print numbered paragraph with header level two. +. +See +.BR .P . +. +.TP +.B NCOL +Force printing to the next column. +. +Don't use this together with the +.B MUL* +macros, see +.BR 2C . +. +.TP +.BI NS\ \fR[\fParg\ \fR[\fP1\fR]]\fP +Print different types of notations. +. +The argument selects between the predefined type of notations. +. +If the second argument is available, +then the argument becomes the entire notation. +. +If the argument doesn't select a predefined type, +it is printed as \[oq]Copy (\fIarg\/\fP) to\[cq]. +. +It is possible to add more standard notations, +see the string variables +.B Letns +and +.BR Letnsdef . +. +.RS +.IP +.TS +tab(@); +l l. +\fBArg@Notation\fP +\fInone\/\fP@Copy To +\[dq]\[dq]@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 +9@Memorandum to +10@Copy (with atts.\&) to +11@Copy (without atts.\&) to +12@Abstract Only to +13@Complete Memorandum to +14@CC +.TE +.RE +. +.TP +.BI ND\ new-date +New date. +. +Overrides the current date. +. +Date is not printed if +.I new-date +is an empty string. +. +.TP +.BI OF\ \fR[\fParg\fR]\fP +Odd-page footer, a line printed just above the normal footer. +. +See +.B EF +and +.BR PF . +. +.IP +This macro defines string +.BR EOPof . +. +.TP +.BI OH\ \fR[\fParg\fR]\fP +Odd-page header, a line printed just below the normal header. +. +See +.B EH +and +.BR PH . +. +.IP +This macro defines string +.BR TPoh . +. +.TP +.B OP +Make sure that the following text is printed at the top of an +odd-numbered page. +. +Does not output an empty page if currently at the top of an odd page. +. +.TP +.BI P\ \fR[\fPtype\fR]\fP +Begin new paragraph. +. +.BR P \~without +argument produces left\-justified text, +even the first line of the paragraph. +. +This is the same as setting +.I type +to\~0. +. +If the argument is\~1, +the first line of text following\~\c +.B P +is indented by the number of spaces in number register +.BR Pi , +by default\~5. +. +.IP +Instead of giving an argument to\~\c +.B P +it is possible to set the paragraph type in number register +.BR Pt . +. +Using 0 and\~1 is the same as adding that value to +.BR P . +. +A value of\~2 indents all paragraphs, except after headings, lists, +and displays (this value can't be used as an argument to +.B P +itself). +. +.IP +The space between two paragraphs is controlled by number register +.BR Ps , +and is\~1 by default (one blank line). +. +.TP +.BI PGFORM\ "\fR[\fPlinelength \fR[\fPpagelength \fR[\fPpageoffset\ " \fR[\fP1\fR]]]]\fP +Set line length, page length, and/or page offset. +. +This macro can be used for special formatting, +like letter heads and other. +. +It is normally the first command in a file, +though it is not necessary. +. +.B PGFORM +can be used without arguments to reset everything after a +.B MOVE +call. +. +A line break is done unless the fourth argument is given. +. +This can be used to avoid the page number 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 +line length, page length, and page offset instead.) +. +.TP +.B PGNH +No header is printed on the next page. +. +Used to get rid of the header in letters or other special texts. +. +This macro must be used before any text to inhibit the page header +on the first page. +. +.TP +.BI "PIC \fR[\fP\-B\fR] [\fP\-L\fR] [\fP\-C\fR] [\fP\-R\fR] [\fP\-I\ " "n\fR]\fP filename \fR[\fPwidth \fR[\fPheight\fR]]\fP" +Include a PostScript file in the document. +. +The macro depends on +.BR mmroff (1) +and +.BR INITR . +. +The arguments +.BR \-L , +.BR \-C , +.BR \-R , +and +.BI \-I\ n +adjust the picture or indent it. +. +With no flag the picture is adjusted to the left. +. +Adding +.B \-B +draws a box around the picture. +. +The optional +.I width +and +.I height +can also be given to resize the picture. +. +.TP +.B PE +Picture end. +. +Ends a picture for +.BR pic (1). +. +.TP +.BI PF\ \fR[\fParg\fR]\fP +Page footer. +.B PF +sets the line to be printed at the bottom of each page. +. +Empty by default. +. +See +.B PH +for the argument specification. +. +.IP +This macro defines string +.BR EOPf . +. +.TP +.BI PH\ \fR[\fParg\fR]\fP +Page header, a line printed at the top of each page. +. +The argument should be specified as +. +.RS +.IP +.RI \[dq]' left-part ' center-part ' right-part '\[dq] +.RE +. +.IP +where +.IR left-part , +.IR center-part , +and +.I right-part +are printed left-justified, centered, and right justified, respectively. +. +Within the argument to +.BR PH , +the character \[oq]%\[cq] is changed to the current page number. +. +The default argument is +. +.RS +.IP +\[dq]''- % -''\[dq] +.RE +. +.IP +which gives the page number between two dashes. +. +.IP +This macro defines string +.BR TPh . +. +.TP +.B PS +Picture start (from pic). +. +Begins a picture for +.BR pic (1). +. +.TP +.B PX +Page header user-defined exit. +. +This macro is called just after the printing of the page header in +.I no-space +mode. +. +.TP +.B R +Roman. +. +Return to roman font, see also\~\c +.BR I . +. +.TP +.BI RB\ "\fR[\fProman-text \fR[\fPbold-text \fR[\fProman-text \fR[.\|.\|.]]]]\fP" +Roman-bold. +. +Even arguments are printed in roman, odd in boldface. +. +See\~\c +.BR I . +. +.TP +.BI RD\ "\fR[\fPprompt \fR[\fPdiversion \fR[\fPstring\fR]]]\fP" +Read from standard input to diversion and/or string. +. +The text is saved in a diversion named +.IR diversion . +. +Recall the text by writing the name of the diversion after a dot +on an empty line. +. +A string is also defined if +.I string +is given. +. +.I Diversion +and/or +.I prompt +can be empty (\[dq]\[dq]). +. +.TP +.B RF +Reference end. +. +Ends a reference definition and returns to normal processing. +. +See +.BR RS . +. +.TP +.BI RI\ "\fR[\fProman-text \fR[\fPitalic-text \fR[\fProman-text \fR[.\|.\|.]]]]\fP" +Print even arguments in roman, odd in italic. +. +See\~\c +.BR I . +. +.TP +.BI RL\ \fR[\fPtext-indent \fR[\fP1\fR]]\fP +Reference list start. +. +Begins a list where each item is preceded with an automatically +incremented number between square brackets. +. +.I text-indent +changes the default indentation. +. +.TP +.BI RP\ "\fR[\fParg1 \fR[\fParg2\fR]]\fP" +Produce reference page. +. +This macro can be used if a reference page is wanted somewhere in the +document. +. +It is not needed if +.B TC +is used to produce a table of contents. +. +The reference page is then printed automatically. +. +.IP +The reference counter is not reset if +.I arg1 +is\~1. +. +.IP +.I arg2 +tells +.B RP +whether to eject a page or not. +. +.IP +.B arg2 +. +.RS +.IP +.TS +tab(@); +l lx. +0@The reference page is printed on a separate page. +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. +.TE +.RE +. +.IP +The reference items are separated by a blank line. +. +Setting number register +.B Ls +to\~0 suppresses the line. +. +.IP +The string +.B Rp +contains the reference page title and is set to \[oq]REFERENCES\[cq] +by default. +. +The number register +.B Rpe +holds the default value for the second argument of +.BR RP ; +it is initially set to\~0. +. +.TP +.BI RS\ \fR[\fPstring-name\fR]\fP +Begin an automatically numbered reference definition. +. +Put the string +.B \[rs]*(Rf +where the reference mark should be and write the reference between +.BR RS / RF +at next new line after the reference mark. +. +The reference number is stored in number register +.BR :R . +. +If +.I string-name +is given, a string with that name is defined and contains the current +reference mark. +. +The string can be referenced as +.BI \[rs]*[ string-name ] +later in the text. +. +.TP +.BI S\ "\fR[\fPsize \fR[\fPspacing\fR]]\fP" +Set point size and vertical spacing. +. +If any argument is equal to \[oq]P\[cq], the previous value is used. +. +A \[oq]C\[cq] means current value, and \[oq]D\[cq] the default value. +. +If \[oq]+\[cq] or \[oq]\-\[cq] is used before the value, +the current value is incremented or decremented, respectively. +. +.TP +.BI SA\ \fR[\fParg\fR]\fP +Set right-margin justification. +. +Justification is turned on by default. +. +No argument or value \[oq]0\[cq] turns off justification, +and \[oq]1\[cq] turns on justification. +. +.TP +.BI SETR\ "refname \fR[\fPstring\fR]\fP" +Remember the current header and page number as +.IR refname . +. +Saves +.I string +if +.I string +is defined. +. +.I string +is retrieved with +.BR .GETST . +. +See +.BR INITR . +. +.TP +.BI SG\ \fR[\fParg\ \fR[\fP1\fR]]\fP +Signature line. +. +Prints the authors name(s) after the formal closing. +. +The argument is appended to the reference data, printed at either the +first or last author. +. +The reference data is the location, department, and initials specified +with +.BR .AU . +. +It is printed at the first author if the second argument is given, +otherwise at the last. +. +No reference data is printed if the author(s) is specified through +.BR .WA / .WE . +. +See section \[lq]Internals\[rq] below. +. +.TP +.BI SK\ \fR[\fPpages\fR]\fP +Skip pages. +. +If +.I pages +is\~0 or omitted, a skip to the next page occurs unless it is already +at the top of a page. +. +Otherwise it skips +.I pages +pages. +. +.TP +.BI SM\ "string1 \fR[\fPstring2 \fR[\fPstring3\fR]]\fP" +Make a string smaller. +. +If +.I string2 +is given, +.I string1 +is made smaller and +.I string2 +stays at normal size, +concatenated with +.IR string1 . +. +With three arguments, everything is concatenated, but only +.I string2 +is made smaller. +. +.TP +.BI SP\ \fR[\fPlines\fR]\fP +Space vertically. +. +.I lines +can have any scaling factor, like \[oq]3i\[cq] or \[oq]8v\[cq]. +. +Several +.B SP +calls in a line only produces the maximum number of lines, not the sum. +. +.B SP +is ignored also until the first text line in a page. +. +Add +.B \[rs]& +before a call to +.B SP +to avoid this. +. +.TP +.B TAB +Reset tabs to every\ 5n. +. +Normally used to reset any previous tab positions. +. +.TP +.BI TB\ "\fR[\fPtitle \fR[\fPoverride \fR[\fPflag \fR[\fPrefname\fR]]]]\fP" +Table title. +. +The arguments are the same as for +.BR EC . +. +.B TB +uses the number register +.B Tb +as a counter. +. +The string +.B Lt +controls the title of the List of Tables; +default value is \[oq]LIST OF TABLES\[cq]. +. +The List of Tables is only printed if number register +.B Lt +is\~1, which is the default. +. +The string +.B Litb +contains the word \[oq]TABLE\[cq], which is printed before the number. +. +.IP +Special handling of the title occurs if +.B TB +is used inside +.BR DS / DE , +it is not affected by the format of +.BR DS . +. +.TP +.BI TC\ "\fR[\fPslevel \fR[\fPspacing \fR[\fPtlevel \fR[\fPtab \fR[\fPh1 \fR[\fPh2 \fR[\fPh3 \fR[\fPh4 \fR[\fPh5\fR]]]]]]]]]\fP" +Table of contents. +. +This macro is normally used as the last line of the document. +. +It generates a table of contents with headings up to the level +controlled by number register +.BR Cl . +. +Note that +.B Cl +controls the saving of headings, it has nothing to do with +.BR TC . +. +Headings with a level less than or equal to +.I slevel +get +.I spacing +number of lines before them. +. +Headings with a level less than or equal to +.I tlevel +have their page numbers right\-justified with dots or spaces separating +the text and the page number. +. +Spaces are used if +.I tab +is greater than zero, dots otherwise. +. +Other headings have the page number directly at the end of the heading +text +.RI ( ragged-right ). +. +.IP +The rest of the arguments is printed, centered, before the table of +contents. +. +.IP +The user-defined macros +.B TX +and +.B TY +are used if +.B TC +is called with at most four arguments. +. +.B TX +is called before the printing of the string \[oq]CONTENTS\[cq], +and +.B TY +is called instead of printing \[oq]CONTENTS\[cq]. +. +.IP +Equivalent macros can be defined for list of figures, tables, equations +and exhibits by defining +.BI TX xx +or +.BI TY xx\fR,\fP +where +.I xx +is \[oq]Fg\[cq], \[oq]TB\[cq], \[oq]EC\[cq], or \[oq]EX\[cq], +respectively. +. +.IP +String +.B Ci +can be set to control the indentations for each heading-level. +. +It must be scaled, like +. +.RS +.IP +\&.ds Ci .25i .5i .75i 1i 1i +.RE +. +.IP +By default, the indentation is controlled by the maximum length of +headings in each level. +. +.IP +The string variables +.BR Lifg , +.BR Litb , +.BR Liex , +.BR Liec , +and +.B Licon +contain \[oq]Figure\[cq], \[oq]TABLE\[cq], \[oq]Exhibit\[cq], +\[oq]Equation\[cq], and \[oq]CONTENTS\[cq], respectively. +. +These can be redefined to other languages. +. +.TP +.B TE +Table end. +. +See +.BR TS . +. +.TP +.B TH \fR[\fPN\fR]\fP +Table header. +. +See +.BR TS . +. +.B TH +ends the header of the table. +. +This header is printed again if a page break occurs. +. +Argument \[oq]N\[cq] isn't implemented yet. +. +.TP +.BI TL\ "\fR[\fPcharging-case-number \fR[\fPfiling-case-number\fR]]\fP" +Begin title of memorandum. +. +All text up to the next +.B AU +is included in the title. +. +.I charging-case-number +and +.I filing-case-number +are saved for use in the front page processing. +. +.TP +.BI TM\ "\fR[\fPnum1 \fR[\fPnum2 \fR[.\|.\|.]]]\fP" +Technical memorandum numbers used in +.BR .MT . +. +An unlimited number of arguments may be given. +. +.TP +.B 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 the header and the footer are printed in a separate environment. +. +Line length is preserved, though. +. +See +.BR EOP . +. +.IP +.B strings available to TP +.RS +.TS +tab(@); +l l. +TPh@argument of \fBPH\fP +TPeh@argument of \fBEH\fP +TPoh@argument of \fBOH\fP +.TE +.RE +. +.TP +.B TS \fR[\fPH\fR]\fP +Table start. +. +This is the start of a table specification to +.BR tbl (1). +. +.B TS +ends with +.BR TE . +. +Argument \[oq]H\[cq] tells +.B mm +that the table has a header. +. +See +.BR TH . +. +.TP +.B TX +User-defined table of contents exit. +. +This macro is called just before +.B TC +prints the word \[oq]CONTENTS\[cq]. +. +See +.BR TC . +. +.TP +.B TY +User-defined table of contents exit. +. +This macro is called instead of printing \[oq]CONTENTS\[cq]. +. +See +.BR TC . +. +.TP +.BI VERBON\ "\fR[\fPflag \fR[\fPpoint-size \fR[\fPfont\fR]]]\fP" +Begin verbatim output using Courier font. +. +Usually for printing programs. +. +All characters have equal width. +. +The point size can be changed with the second argument. +. +By specifying a third argument it is possible to use another font +instead of Courier. +. +.I flag +controls several special features. +. +Its value is the sum of all wanted features. +. +.RS +.IP +.TS +tab(@); +lb lb +l lx. +Arg@Description +1@T{ +Disable the escape character (\[rs]). +This is normally turned on during verbose output. +T} +2@Add an empty line before the verbose text. +4@Add an empty line after the verbose text. +8@T{ +Print the verbose text with numbered lines. +This adds four digit-sized spaces in the beginning of each line. +Finer control is available with the string variable +.BR Verbnm . +It contains all arguments to the +.BR troff (1) +command +.BR .nm , +normally \[oq]1\[cq]. +T} +16@T{ +Indent the verbose text by \[oq]5n\[cq]. +. +This is controlled by the number-variable +.B Verbin +(in units). +T} +.TE +.RE +. +.TP +.B VERBOFF +End verbatim output. +. +.TP +.BI VL\ "text-indent \fR[\fPmark-indent\ " \fR[\fP1\fR]]\fP +Variable-item list. +. +It has no fixed mark, it assumes that every +.B LI +has a mark instead. +. +.I text-indent +sets the indent to the text, and +.I mark-indent +the distance from the current indentation to the mark. +. +A third argument prohibits printing of a blank line before each item. +. +.TP +.BI "VM \fR[\fP\-T\fR] [\fP" "top \fR[\fPbottom\fR]]\fP" +Vertical margin. +. +Increase the top and bottom margin by +.I top +and +.IR bottom , +respectively. +. +If option +.B \-T +is specified, set those margins to +.I top +and +.IR bottom . +. +If no argument is given, reset the margin to zero, or to the default +(\[oq]7v 5v\[cq]) if +.B \-T +is used. +. +It is highly recommended that macros +.B TP +and/or +.B EOP +are defined if using +.B \-T +and setting top and/or bottom margin to less than the default. +. +.TP +.BI WA\ "\fR[\fPwriter-name \fR[\fPtitle\fR]]\fP" +Begin specification of the writer and writer's address. +. +Several names can be specified with empty +.BR WA / WE +pairs, but only one address. +. +.TP +.B WE +End the address specification after +.BR .WA . +. +.TP +.BI WC\ "\fR[\fPformat1\fR] [\fPformat2\fR] [.\|.\|.]\fP" +Footnote and display width control. +. +.RS +.TS +tab(@); +l lx. +N@T{ +Set default mode which is equal to using the options +.BR \-WF , +.BR \-FF , +.BR \-WD , +and +.BR FB . +T} +WF@T{ +Wide footnotes, wide also in two-column mode. +T} +-WF@Normal footnote width, follow column mode. +FF@T{ +All footnotes gets the same width as the first footnote encountered. +T} +-FF@T{ +Normal footnotes, width follows \fBWF\fP and \fB-WF\fP. +T} +WD@T{ +Wide displays, wide also in two-column mode. +T} +-WD@T{ +Normal display width, follow column mode. +T} +FB@T{ +Floating displays generates a line break when printed on the current +page. +T} +-FB@T{ +Floating displays does not generate line break. +T} +.TE +.RE +. +. +.\" ==================================================================== +.SS "Strings used in mm" +.\" ==================================================================== +. +.TP +.B App +A string containing the word \[oq]APPENDIX\[cq]. +. +.TP +.B Apptxt +The current appendix text. +. +.TP +.B EM +Em dash string +. +.TP +.B H1txt +Updated by +.B .H +and +.B .HU +to the current heading text. +. +Also updated in table of contents & friends. +. +.TP +.B HF +Font list for headings, \[oq]2 2 2 2 2 2 2\[cq] by default. +. +Non-numeric font names may also be used. +. +.TP +.B HP +Point size list for headings. +. +By default, this is \[cq]0 0 0 0 0 0 0\[cq] which is the same as \[oq]10 +10 10 10 10 10 10\[cq]. +. +.TP +.B Index +Contains the string \[oq]INDEX\[cq]. +. +.TP +.B Indcmd +Contains the index command. +. +Default value is \[oq]sort\ \-t\[rs]t\[cq]. +. +.TP +.B Lifg +String containing \[oq]Figure\[cq]. +. +.TP +.B Litb +String containing \[oq]TABLE\[cq]. +. +.TP +.B Liex +String containing \[oq]Exhibit\[cq]. +. +.TP +.B Liec +String containing \[oq]Equation\[cq]. +. +.TP +.B Licon +String containing \[oq]CONTENTS\[cq]. +. +.TP +.B Lf +Contains the string \[oq]LIST OF FIGURES\[cq]. +. +.TP +.B Lt +Contains the string \[oq]LIST OF TABLES\[cq]. +. +.TP +.B Lx +Contains the string \[oq]LIST OF EXHIBITS\[cq]. +. +.TP +.B Le +Contains the string \[oq]LIST OF EQUATIONS\[cq]. +. +.TP +.B Letfc +Contains the string \[oq]Yours very truly,\[cq], +used in +.BR .FC . +. +.TP +.B Letapp +Contains the string \[oq]APPROVED:\[cq], +used in +.BR .AV . +. +.TP +.B Letdate +Contains the string \[oq]Date\[cq], +used in +.BR .AV . +. +.TP +.B LetCN +Contains the string \[oq]CONFIDENTIAL\[cq], +used in +.BR ".LO CN" . +. +.TP +.B LetSA +Contains the string \[oq]To Whom It May Concern:\[cq], +used in +.BR ".LO SA" . +. +.TP +.B LetAT +Contains the string \[oq]ATTENTION:\[cq], +used in +.BR ".LO AT" . +. +.TP +.B LetSJ +Contains the string \[oq]SUBJECT:\[cq], +used in +.BR ".LO SJ" . +. +.TP +.B LetRN +Contains the string \[oq]In reference to:\[cq], +used in +.BR ".LO RN" . +. +.TP +.B Letns +is an array containing the different strings used in +.BR .NS . +. +It is really a number of string variables prefixed with +.BR Letns! . +. +If the argument doesn't exist, it is included between +.B () +with +.B Letns!copy +as a prefix and +.B Letns!to +as a suffix. +. +Observe the space after \[oq]Copy\[cq] and before \[oq]to\[cq]. +. +.RS +.IP +.TS +tab(@); +lb lb +l l. +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!11@Copy (without atts.\&) to +Letns!12@Abstract Only to +Letns!13@Complete Memorandum to +Letns!14@CC +Letns!copy@Copy \fI(with trailing space)\fP +Letns!to@ to \fI(note leading space)\fP +.TE +.RE +. +.TP +.B Letnsdef +Define the standard notation used when no argument is given to +.BR .NS . +. +Default is\~0. +. +.TP +.B "MO1 \(en MO12" +Strings containing the month names \[oq]January\[cq] through +\[oq]December\[cq]. +. +.TP +.B Qrf +String containing \[oq]See chapter \[rs]\[rs]*[Qrfh], page +\[rs]\[rs]n[Qrfp].\[cq]. +. +.TP +.B Rp +Contains the string \[oq]REFERENCES\[cq]. +. +.TP +.B Tcst +Contains the current status of the table of contents and list of +figures, etc. +. +Empty outside of +.BR .TC . +. +Useful in user-defined macros like +.BR .TP . +. +.RS +.IP +.TS +tab(@); +lb lb +l l. +Value@Meaning +co@Table of contents +fg@List of figures +tb@List of tables +ec@List of equations +ex@List of exhibits +ap@Appendix +.TE +.RE +. +.TP +.B Tm +Contains the string \[oq]\[rs](tm\[cq], the trade mark symbol. +. +.TP +.B Verbnm +Argument to +.B .nm +in the +.B .VERBON +command. +. +Default is\~1. +. +. +.\" ==================================================================== +.SS "Number variables used in mm" +.\" ==================================================================== +. +.TP +.B Aph +Print an appendix page for every new appendix if this number variable +is non-zero. +. +No output occurs if +.B Aph +is zero, but there is always an appendix entry in the \[oq]List of +contents\[cq]. +. +.TP +.B Cl +Contents level (in the range 0 to 14). +. +The contents is saved if a heading level is lower than or equal to the +value of +.BR Cl . +. +Default is\~2. +. +.TP +.B Cp +Eject page between list of table, list of figure, etc., if the value of +.B Cp +is zero. +. +Default is\~0. +. +.TP +.B D +Debug flag. +. +Values greater than zero produce debug information of increasing +verbosity. +. +A value of\~1 gives information about the progress of formatting. +. +Default is\~0. +. +.TP +.B De +If set to\~1, eject after floating display is output. +. +Default is\~0. +. +.TP +.B Dsp +If defined, it controls the space output before and after static +displays. +. +Otherwise the value of +.B Lsp +is used. +. +.TP +.B Df +Control floating keep output. +. +This is a number in the range 0 to 5, with a default value of\~5. +. +See +.BR .DF . +. +.TP +.B Ds +If set to\~1, use the amount of space stored in register +.B Lsp +before and after display. +. +Default is\~1. +. +.TP +.B Ej +If set to\~1, eject page before each first-level heading. +. +Default is\~0. +. +.TP +.B Eq +Equation labels are left-adjusted if set to\~0 and right-adjusted if +set to\~1. +. +Default is\~0. +. +.TP +.B Fs +Footnote spacing. +. +Default is\~1. +. +.TP +.B "H1 \(en H7" +Heading counters +. +.TP +.B H1dot +Append a dot after the level-one heading number if value is greater +than zero. +. +Default is\~1. +. +.TP +.B H1h +A copy of number register +.BR H1 , +but it is incremented just before the page break. +. +Useful in user-defined header macros. +. +.TP +.B Hb +Heading break level. +. +A number in the range 0 to 14, with a default value of\~2. +. +See\~\c +.BR .H . +. +.TP +.B Hc +Heading centering level. +. +A number in the range 0 to 14, with a default value value of\~0. +. +See\~\c +.BR .H . +. +.TP +.B Hi +Heading temporary indent. +. +A number in the range 0 to 2, with a default value of\~1. +. +.RS +.IP +.TS +tab(@); +l lx. +0@no indentation, left margin +1@T{ +indent to the right, similar to +.RB \[oq] ".P 1" \[cq] +T} +2@T{ +indent to line up with text part of preceding heading +T} +.TE +.RE +. +.TP +.B Hps +Heading pre-space level. +. +If the heading level is less than or equal to +.BR Hps , +two lines precede the section heading instead of one. +. +Default is first level only. +. +The real amount of lines is controlled by the variables +.B Hps1 +and +.BR Hps2 . +. +.TP +.B Hps1 +Number of lines preceding +.B .H +if the heading level is greater than +.BR Hps . +. +Value is in units, default is 0.5. +. +.TP +.B Hps2 +Number of lines preceding +.B .H +if the heading level is less than or equal to +.BR Hps . +. +Value is in units, default is\~1. +. +.TP +.B Hs +Heading space level. +. +A number in the range 0 to 14, with a default value of\~2. +. +See\~\c +.BR .H . +. +.TP +.B Hss +Number of lines following +.B .H +if the heading level is less than or equal to +.BR Hs . +. +Value is in units, default is\~1. +. +.TP +.B Ht +Heading numbering type. +. +.RS +.IP +.TS +tab(@); +l l. +0@multiple levels (1.1.1, 1.1.2, etc.) +1@single level +.TE +.RE +.IP +Default is\~0. +. +.TP +.B Hu +Unnumbered heading level. +. +Default is\~2. +. +.TP +.B Hy +Hyphenation status of text body. +. +.RS +.IP +.TS +7tab(@); +l l. +0@no hyphenation +1@hyphenation on, set to value\~6 +.TE +.RE +. +.IP +Default is\~0. +. +.TP +.B Iso +Set this variable to\~1 on the command line to get an ISO-formatted +date string (\fB\-rIso=1\fP). +. +Useless inside of a document. +. +.TP +.B L +Page length, only for command-line settings. +. +.TP +.B Letwam +Maximum lines in return-address, used in +.BR .WA / .WE . +. +Default is\~14. +. +.TP +.BR Lf ,\ Lt ,\ Lx ,\ Le +Enable (1) or disable (0) the printing of List of figures, +. +List of tables, List of exhibits and List of equations, respectively. +. +Default values are Lf=1, Lt=1, Lx=1, and Le=0. +. +.TP +.B Li +List indentation, used by +.BR .AL . +. +Default is\~6. +. +.TP +.B Limsp +A flag controlling the insertion of space between prefix and mark in +automatic lists +.RB ( .AL ). +. +.RS +.IP +.TS +tab(@); +l l. +0@no space +1@emit space +.TE +.RE +. +.TP +.B Ls +List space threshold. +. +If current list level is greater than +.B Ls +no spacing occurs around lists. +. +Default is\~99. +. +.TP +.B Lsp +The vertical space used by an empty line. +. +The default is 0.5v in troff mode and 1v in nroff mode. +. +.TP +.B N +Page numbering style. +. +.RS +.IP +.TS +tab(@); +l lx. +0@normal header for all pages. +1@T{ +header replaces footer on first page, header is empty. +T} +2@page header is removed on the first page. +3@\[oq]section-page\[cq] numbering style enabled. +4@page header is removed on the first page. +5@T{ +\[oq]section-page\[cq] and \[oq]section-figure\[cq] numbering style enabled. +T} +.TE +.RE +. +.IP +Default is\~0. +. +See also the number registers +.B Sectf +and +.BR Sectp . +. +.TP +.B Np +A flag to control whether paragraphs are numbered. +. +.RS +.IP +.TS +tab(@); +l l. +0@not numbered +1@numbered in first-level headings. +.TE +.RE +. +.IP +Default is\~0. +. +.TP +.B O +Page offset, only for command-line settings. +. +.TP +.B Of +Format of figure, table, exhibit, and equation titles. +. +.RS +.IP +.TS +tab(@); +l l. +0@\[dq]. \[dq] +1@\[dq] - \[dq] +.TE +.RE +. +.IP +Default is\~0. +. +.TP +.B P +Current page-number, normally the same as \[oq]%\[cq] unless +\[oq]section-page\[cq] numbering style is enabled. +. +.TP +.B Pi +Paragraph indentation. +. +Default is\~5. +. +.TP +.B Pgps +A flag to control whether header and footer point size should follow +the current settings or just change when the header and footer are +defined. +. +.RS +.IP +.TS +tab(@); +l lx. +0@T{ +Point size only changes to the current setting when +.BR .PH , +.BR .PF , +.BR .OH , +.BR .EH , +.BR .OF , +or +.B .OE +is executed. +T} +1@T{ +Point size changes after every +.BR .S . +This is the default. +T} +.TE +.RE +. +.TP +.B Ps +Paragraph spacing. +Default is\~1. +. +.TP +.B Pt +Paragraph type. +. +.RS +.IP +.TS +tab(@); +l lx. +0@left-justified +1@indented paragraphs +2@T{ +indented paragraphs except after +.BR .H , +.BR .DE , +or +.BR .LE . +T} +.TE +.RE +. +.IP +Default is\~0. +. +.TP +.B Rpe +Set default value for second argument of +.BR .RP . +. +Default is\~0. +. +.TP +.B Sectf +A flag controlling \[oq]section-figures\[cq] numbering style. +. +A non-zero value enables this. +. +See also register\~\c +.BR N . +. +.TP +.B Sectp +A flag controlling \[cq]section-page\[cq] numbering style. +. +A non-zero value enables this. +. +See also register\~\c +.BR N . +. +.TP +.B Si +Display indentation. +. +Default is\~5. +. +.TP +.B Verbin +Indentation for +.BR .VERBON . +. +Default is 5n. +. +.TP +.B W +Line length, only for command-line settings. +. +.TP +.B .mgm +Always\~1. +. +. +.\" ==================================================================== +.SH INTERNALS +.\" ==================================================================== +. +The letter macros are using different submacros depending on the +letter type. +. +The name of the submacro has the letter type as suffix. +. +It is therefore possible to define other letter types, either in the +national macro-file, or as local additions. +. +.B .LT +sets the number variables +.B Pt +and +.B Pi +to 0 and\~5, respectively. +. +The following strings and macros must be defined for a new letter type. +. +.TP +.BI let@init_ type +This macro is called directly by +.BR .LT . +. +It is supposed to initialize variables and other stuff. +. +.TP +.BI let@head_ type +This macro prints the letter head, +and is called instead of the normal page header. +. +It is supposed to remove the alias +.BR let@header , +otherwise it is called for all pages. +. +.TP +.BI let@sg_ "type name title n flag \fR[\fParg1 \fR[\fParg2 \fR[.\|.\|.]]]\fP" +.B .SG +is calling this macro only for letters; +memorandums have its own processing. +. +.I name +and +.I title +are specified through +.BR .WA / .WB . +. +.IR n \~is +the counter, 1-max, and +.I flag +is true for the last name. +. +Any other argument to +.B .SG +is appended. +. +.TP +.BI let@fc_ "type closing" +This macro is called by +.BR .FC , +and has the formal closing as the argument. +. +. +.LP +.B .LO +is implemented as a general option-macro. +. +It demands that a string named +.BI Let type +is defined, where +.I type +is the letter type. +. +.B .LO +then assigns the argument to the string variable +.BI let*lo- type\fR.\fP +. +. +.\" ==================================================================== +.\".SH BUGS +.\" ==================================================================== +. +. +.\" ==================================================================== +.SH FILES +.\" ==================================================================== +. +.TP +.I /usr/\:share/\:groff/\:1.22.4/\:tmac/m.tmac +.TP +.IR /usr/share/groff/1.22.4/tmac/mm/ * .cov +.TP +.IR /usr/share/groff/1.22.4/tmac/mm/ * .MT +.TP +.I /usr/share/groff/1.22.4/tmac/mm/locale +. +. +.\" ==================================================================== +.SH AUTHORS +.\" ==================================================================== +The GNU version of the +.I mm +macro package was written by +.MT jh@\:axis.se +J\[:o]rgen H\[:a]gg +.ME +of Lund, Sweden. +. +. +.na +.\" ==================================================================== +.SH "SEE ALSO" +.\" ==================================================================== +. +.BR groff (1), +.BR troff (1), +.BR tbl (1), +.BR pic (1), +.BR eqn (1) +.br +.BR groff_mmse (7) +. +. +.\" Restore compatibility mode (for, e.g., Solaris 10/11). +.cp \n[groff_mm_C] +. +. +.\" Local Variables: +.\" mode: nroff +.\" coding: latin-1 +.\" End: +.\" vim:set filetype=groff: |