]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/groff/doc/meref.me
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / groff / doc / meref.me
1 .\" Copyright (c) 1986 The Regents of the University of California.
2 .\" All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms are permitted
5 .\" provided that the above copyright notice and this paragraph are
6 .\" duplicated in all such forms and that any documentation,
7 .\" advertising materials, and other materials related to such
8 .\" distribution and use acknowledge that the software was developed
9 .\" by the University of California, Berkeley.  The name of the
10 .\" University may not be used to endorse or promote products derived
11 .\" from this software without specific prior written permission.
12 .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
13 .\" IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
14 .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
15 .\"
16 .\"     @(#)ref.me      6.4 (Berkeley) 7/17/89
17 .\"
18 .\" Modified by jjc@jclark.com for groff.
19 .\"UC 7
20 .ll 6.5i
21 .lt 6.5i
22 .\"pn 0
23 .ds MO @VERSION@
24 .de TL                  \" *** title line
25 .lp
26 .di XX
27 ..
28 .ie \n(.g \{\
29 .de DE
30 \?\h'|\\n(DIu'\c\?
31 ..
32 .\}
33 .el \{\
34 .de DE
35 \\\\h'|\\\\n(DIu'\\\\c
36 ..
37 .\}
38 .am DE
39 .br
40 .di
41 .in +\\n(DIu
42 .ti 0
43 .cu 1000
44 .XX
45 .rm XX
46 .cu 0
47 ..
48 .ds G \s-1GROFF\s0
49 .ds N \s-1NROFF\s0
50 .ds T \s-1TROFF\s0
51 .nr DI 1.5i
52 .he '\-ME REFERENCE MANUAL''%'
53 .de NR
54 .b "\en\\$1" "\\$2"
55 ..
56 .de ST
57 .b "\e*\\$1" "\\$2"
58 ..
59 .\"sc
60 .\"eh 'USD:23-%''\-me Reference Manual'
61 .\"oh '\-me Reference Manual''USD:23-%'
62 .+c
63 .ce 20
64 .sz 14
65 .b "\-ME REFERENCE MANUAL"
66 .sz
67 .sp
68 .i "\*G Version \*(MO\(dg"
69 .(f
70 \(dgBased on Berkeley Release 2.31.
71 .)f
72 .sp 2
73 .ul
74 Eric P. Allman*
75 .(f
76 *Author's current address:
77 Britton Lee, Inc.,
78 1919 Addison Suite 105,
79 Berkeley, California 94704.
80 .)f
81 .sp
82 Project INGRES
83 Electronics Research Laboratory
84 University of California, Berkeley
85 Berkeley, California  94720
86 .sp 2
87 .i "Modified for \*G by James Clark"
88 .ce 0
89 .sp 4
90 .pp
91 This document describes
92 in extremely terse form
93 the features
94 of the
95 .b \-me
96 macro package
97 for \*G.
98 Some familiarity is assumed
99 with
100 \*G.
101 Specifically,
102 the reader should understand
103 breaks,
104 fonts,
105 pointsizes,
106 the use and definition of number registers
107 and strings,
108 how to define macros,
109 and scaling factors for ens, points,
110 .b v 's
111 (vertical line spaces),
112 etc.
113 .pp
114 For a more casual introduction
115 to text processing
116 using \*G,
117 refer to the document
118 .ul
119 Writing Papers with \*G using \-me.
120 .pp
121 There are a number of macro parameters
122 that may be adjusted.
123 Fonts may be set to a font number only.
124 Font 0 is no font change;
125 the font of the surrounding text
126 is used instead.
127 Notice that font 0 is a
128 .q pseudo-font ;
129 that is,
130 it is simulated by the macros.
131 This means that although it is legal to set a font register
132 to zero,
133 it is not legal to use the escape character form,
134 such as:
135 .(b
136 \ef0
137 .)b
138 .pp
139 All distances
140 are in basic units,
141 so it is nearly always necessary
142 to use a scaling factor.
143 For example,
144 the request
145 to set the paragraph indent
146 to eight one-en spaces is:
147 .(b
148 \&.nr pi 8n
149 .)b
150 and not
151 .(b
152 \&.nr pi 8
153 .)b
154 which would set the paragraph indent to eight basic units,
155 or about 0.02 inch.
156 Default parameter values are given in brackets
157 in the remainder of this document.
158 .pp
159 Registers and strings
160 of the form
161 .b $ \c
162 .i x
163 may be used in expressions
164 but should not be changed.
165 Macros of the form
166 .b $ \c
167 .i x
168 perform some function
169 (as described)
170 and may be redefined
171 to change this function.
172 This may be a sensitive operation;
173 look at the body of the original macro
174 before changing it.
175 .pp
176 All names in \-me
177 follow a rigid naming convention.
178 The user may define number registers,
179 strings,
180 and macros,
181 provided that s/he
182 uses single character upper case names
183 or double character names
184 consisting of letters and digits,
185 with at least one upper case letter.
186 In no case should special characters
187 be used in user-defined names.
188 Locally defined macros
189 should all be of the form
190 .b .* \c
191 .i X ,
192 where
193 .i X
194 is any letter
195 (upper or lower case)
196 or digit.
197 .pp
198 This documentation applies to \*G version
199 \*(MO
200 of the \-me macros.
201 .sh 1 "Paragraphing"
202 .pp
203 These macros are used
204 to begin paragraphs.
205 The standard paragraph macro
206 is
207 .b .pp ;
208 the others are all variants
209 to be used for special purposes.
210 .pp
211 After the first call to one of the paragraphing macros
212 defined in this section
213 or the
214 .b .sh
215 macro
216 (defined in the next session),
217 the effects of changing parameters
218 which will have a global effect
219 on the format of the page
220 (notably page length and header and footer margins)
221 are not well defined
222 and should be avoided.
223 .TL
224 .b .lp
225 .DE
226 Begin left-justified paragraph.
227 Centering and underlining
228 are turned off if they were on,
229 the font is set to
230 .NR (pf
231 [1]
232 the type size
233 is set to
234 .NR (pp
235 [10p],
236 and a
237 .NR (ps
238 space is inserted
239 before the paragraph
240 [0.35v]
241 The indent is reset
242 to
243 .NR ($i
244 [0]
245 plus
246 .NR (po
247 [0]
248 unless the paragraph
249 is inside a display.
250 (see
251 .b .ba ).
252 At least
253 the first two lines
254 of the paragraph
255 are kept together
256 on a page.
257 .TL
258 .b .pp
259 .DE
260 Like
261 .b .lp ,
262 except that it puts
263 .NR (pi
264 [5n]
265 units of indent.
266 This is the standard paragraph macro.
267 .TL
268 .b .ip
269 .i T
270 .i I
271 .DE
272 Indented paragraph
273 with hanging tag.
274 The body of the following paragraph
275 is indented
276 .i I
277 spaces
278 (or
279 .NR (ii
280 [5n]
281 spaces
282 if
283 .i I
284 is not specified)
285 more than a non-indented paragraph
286 (such as with
287 .b .pp )
288 is.
289 The title
290 .i T
291 is exdented (opposite of indented).
292 The result is a paragraph
293 with an even left edge
294 and
295 .i T
296 printed in the margin.
297 Any spaces in
298 .i T
299 must be unpaddable.
300 If
301 .i T
302 will not fit in the space provided,
303 .b .ip
304 will start a new line.
305 .TL
306 .b .np
307 .DE
308 A variant of .ip which numbers paragraphs.
309 Numbering is reset
310 after a
311 .b .lp ,
312 .b .pp ,
313 or
314 .b .sh .
315 The current paragraph number
316 is in
317 .NR ($p .
318 .TL
319 .b .bu
320 .DE
321 Like
322 .b .np
323 except that paragraphs are marked with bullets (\(bu).
324 Leading space is eliminated to create compact lists.
325 .sh 1 "Section Headings"
326 .pp
327 Numbered sections
328 are similar to paragraphs
329 except that a
330 section number
331 is automatically
332 generated for each one.
333 The section numbers are of the form
334 .b 1.2.3 .
335 The
336 .i depth
337 of the section
338 is the count of numbers
339 (separated by decimal points)
340 in the section number.
341 .pp
342 Unnumbered section headings are similar,
343 except that no number is attached
344 to the heading.
345 .TL
346 .b .sh
347 .i +N
348 .i T
349 .i "a b c d e f"
350 .DE
351 Begin numbered section
352 of depth
353 .i N .
354 If
355 .i N
356 is missing
357 the current depth
358 (maintained in
359 the number register
360 .NR ($0 )
361 is used.
362 The values of
363 the individual parts of the section number
364 are maintained in
365 .NR ($1
366 through
367 .NR ($6 .
368 There is a
369 .NR (ss
370 [1v]
371 space before the section.
372 .i T
373 is printed
374 as a section title
375 in font
376 .NR (sf
377 [8]
378 and size
379 .NR (sp
380 [10p].
381 The
382 .q name
383 of the section may be accessed via
384 .ST ($n .
385 If
386 .NR (si
387 is non-zero,
388 the base indent
389 is set to
390 .NR (si
391 times the section depth,
392 and the section title
393 is exdented.
394 (See
395 .b .ba .)
396 Also,
397 an additional indent of
398 .NR (so
399 [0]
400 is added to the section title
401 (but not to the body of the section).
402 The font is then set
403 to the paragraph font,
404 so that more information may occur
405 on the line
406 with the section number
407 and title.
408 .b .sh
409 insures that there is enough room
410 to print the section head
411 plus the beginning of a paragraph
412 (about 3 lines total).
413 If
414 .i a
415 through
416 .i f
417 are specified,
418 the section number is set to that number
419 rather than incremented automatically.
420 If any of
421 .i a
422 through
423 .i f
424 are a hyphen
425 that number is not reset.
426 If
427 .i T
428 is a single underscore
429 (\c
430 .q _ )
431 then the section depth and numbering is reset,
432 but the base indent is not reset
433 and nothing is printed out.
434 This is useful to automatically
435 coordinate section numbers with
436 chapter numbers.
437 .TL
438 .b .sx
439 .i +N
440 .DE
441 Go to section depth
442 .i N
443 [\c
444 .b \-1 ],
445 but do not print the number
446 and title,
447 and do not increment the section number
448 at level
449 .i N .
450 This has the effect
451 of starting a new paragraph
452 at level
453 .i N .
454 .TL
455 .b .uh
456 .i T
457 .DE
458 Unnumbered section heading.
459 The title
460 .i T
461 is printed
462 with the same rules for spacing,
463 font, etc.,
464 as for
465 .b .sh .
466 .TL
467 .b .$p
468 .i T
469 .i B
470 .i N
471 .DE
472 Print section heading.
473 May be redefined
474 to get fancier headings.
475 .i T
476 is the title passed on the
477 .b .sh
478 or
479 .b .uh
480 line;
481 .i B
482 is the section number for this section,
483 and
484 .i N
485 is the depth of this section.
486 These parameters are not always present;
487 in particular,
488 .b .sh
489 passes all three,
490 .b .uh
491 passes only the first,
492 and
493 .b .sx
494 passes three,
495 but the first two
496 are null strings.
497 Care should be taken if this macro
498 is redefined;
499 it is quite complex and subtle.
500 .TL
501 .b .$0
502 .i T
503 .i B
504 .i N
505 .DE
506 This macro is called automatically
507 after every call to
508 .b .$p .
509 It is normally undefined,
510 but may be used
511 to automatically put
512 every section title
513 into the table of contents
514 or for some similar function.
515 .i T
516 is the section title
517 for the section title which was just printed,
518 .i B
519 is the section number,
520 and
521 .i N
522 is the section depth.
523 .TL
524 .b .$1
525 \-
526 .b .$6
527 .DE
528 Traps called just before printing that depth section.
529 May be defined to
530 (for example)
531 give variable spacing
532 before sections.
533 These macros are called from
534 .b .$p ,
535 so if you redefine that macro
536 you may lose this feature.
537 .sh 1 "Headers and Footers"
538 .ds TP \fI\(aal\|\(aam\^\(aar\^\(aa\fP
539 .pp
540 Headers and footers
541 are put at the top and bottom
542 of every page
543 automatically.
544 They are set in font
545 .NR (tf
546 [3]
547 and size
548 .NR (tp
549 [10p].
550 Each of the definitions
551 apply as of the
552 .i next
553 page.
554 Three-part titles
555 must be quoted
556 if there are two blanks adjacent
557 anywhere in the title
558 or more than eight blanks total.
559 .pp
560 The spacing
561 of headers and footers
562 are controlled by three number registers.
563 .NR (hm
564 [4v]
565 is the distance from the top of the page
566 to the top of the header,
567 .NR (fm
568 [3v]
569 is the distance from the bottom of the page
570 to the bottom of the footer,
571 .NR (tm
572 [7v]
573 is the distance from the top of the page
574 to the top of the text,
575 and
576 .NR (bm
577 [6v]
578 is the distance from the bottom of the page
579 to the bottom of the text
580 (nominal).
581 The macros
582 .b .m1 ,
583 .b .m2 ,
584 .b .m3 ,
585 and
586 .b .m4
587 are also supplied for compatibility
588 with
589 \s-1ROFF\s0 documents.
590 .TL
591 .b .he
592 \*(TP
593 .DE
594 Define three-part header,
595 to be printed on the top
596 of every page.
597 .TL
598 .b .fo
599 \*(TP
600 .DE
601 Define footer,
602 to be printed at the bottom
603 of every page.
604 .TL
605 .b .eh
606 \*(TP
607 .DE
608 Define header,
609 to be printed at the top of every
610 even-numbered page.
611 .TL
612 .b .oh
613 \*(TP
614 .DE
615 Define header,
616 to be printed at the top of every
617 odd-numbered page.
618 .TL
619 .b .ef
620 \*(TP
621 .DE
622 Define footer,
623 to be printed at the bottom
624 of every even-numbered page.
625 .TL
626 .b .of
627 \*(TP
628 .DE
629 Define footer,
630 to be printed at the bottom
631 of every odd-numbered page.
632 .TL
633 .b .hx
634 .DE
635 Suppress headers and footers
636 on the next page.
637 .TL
638 .b .m1
639 .i +N
640 .DE
641 Set the space between the top of the page
642 and the header
643 [4v].
644 .TL
645 .b .m2
646 .i +N
647 .DE
648 Set the space between the header
649 and the first line of text
650 [2v].
651 .TL
652 .b .m3
653 .i +N
654 .DE
655 Set the space
656 between the bottom of the text
657 and the footer
658 [2v].
659 .TL
660 .b .m4
661 .i +N
662 .DE
663 Set the space
664 between the footer
665 and the bottom of the page
666 [4v].
667 .TL
668 .b .ep
669 .DE
670 End this page,
671 but do not begin the next page.
672 Useful for forcing out footnotes,
673 but other than
674 that hardly every used.
675 Must be followed by a
676 .b .bp
677 or the end of input.
678 .TL
679 .b .$h
680 .DE
681 Called at every page
682 to print the header.
683 May be redefined
684 to provide fancy
685 (e.g.,
686 multi-line)
687 headers,
688 but doing so
689 loses the function of the
690 .b .he ,
691 .b .fo ,
692 .b .eh ,
693 .b .oh ,
694 .b .ef ,
695 and
696 .b .of
697 requests,
698 as well as the chapter-style title feature
699 of
700 .b .+c .
701 .TL
702 .b .$f
703 .DE
704 Print footer;
705 same comments apply
706 as in
707 .b .$h .
708 .TL
709 .b .$H
710 .DE
711 A normally undefined macro
712 which is called
713 at the top of each page
714 (after putting out
715 the header,
716 initial saved floating keeps,
717 etc.);
718 in other words,
719 this macro is called immediately before
720 printing text
721 on a page.
722 It can be used for column headings
723 and the like.
724 .sh 1 "Displays"
725 .pp
726 All displays except centered blocks
727 and block quotes
728 are preceded and followed
729 by an extra
730 .NR (bs
731 [same as
732 .NR (ps ]
733 space.
734 Quote spacing is stored in a separate register;
735 centered blocks have no default initial or trailing space.
736 The vertical spacing of all displays except quotes
737 and centered blocks
738 is stored in register
739 .NR ($V
740 instead of
741 .NR ($v .
742 .TL
743 .b .(l
744 .i m
745 .i f
746 .DE
747 Begin list.
748 Lists are single spaced,
749 unfilled text.
750 If
751 .i f
752 is
753 .b F ,
754 the list will be filled.
755 If
756 .i m
757 [\c
758 .b I ]
759 is
760 .b I
761 the list is indented by
762 .NR (bi
763 [4m];
764 if
765 .b M
766 the list is indented to the left margin;
767 if
768 .b L
769 the list is left justified with respect to the text
770 (different from
771 .b M
772 only if the base indent
773 (stored in
774 .NR ($i
775 and set with
776 .b .ba )
777 is not zero);
778 and if
779 .b C
780 the list is centered on a line-by-line basis.
781 The list is set in font
782 .NR (df
783 [0].
784 Must be matched by a
785 .b .)l .
786 This macro is almost like
787 .b .(b
788 except that no attempt is made
789 to keep the display on one page.
790 .TL
791 .b .)l
792 .DE
793 End list.
794 .TL
795 .b .(q
796 .DE
797 Begin major quote.
798 These are single spaced,
799 filled,
800 moved in from the text
801 on both sides
802 by
803 .NR (qi
804 [4n],
805 preceded and followed
806 by
807 .NR (qs
808 [same as
809 .NR (bs ]
810 space,
811 and are set in point size
812 .NR (qp
813 [one point smaller than surrounding text].
814 .TL
815 .b .)q
816 .DE
817 End major quote.
818 .TL
819 .b .(b
820 .i m
821 .i f
822 .DE
823 Begin block.
824 Blocks are a form of
825 .i keep ,
826 where the text of a keep
827 is kept together on one page
828 if possible
829 (keeps are useful
830 for tables and figures
831 which should not be broken
832 over a page).
833 If the block will not fit
834 on the current page
835 a new page is begun,
836 .i unless
837 that would leave more than
838 .NR (bt
839 [0]
840 white space
841 at the bottom of the text.
842 If
843 .NR (bt
844 is zero, the threshold feature
845 is turned off.
846 Blocks are not filled
847 unless
848 .i f
849 is
850 .b F ,
851 when they are filled.
852 The block will be left-justified
853 if
854 .i m
855 is
856 .b L ,
857 indented by
858 .NR (bi
859 [4m]
860 if
861 .i m
862 is
863 .b I
864 or absent,
865 centered
866 (line-for-line)
867 if
868 .i m
869 is
870 .b C ,
871 and left justified to the margin
872 (not to the base indent)
873 if
874 .i m
875 is
876 .b M .
877 The block is set in font
878 .NR (df
879 [0].
880 .TL
881 .b .)b
882 .DE
883 End block.
884 .TL
885 .b .(z
886 .i m
887 .i f
888 .DE
889 Begin floating keep.
890 Like
891 .b .(b
892 except that the keep is
893 .i floated
894 to the bottom of the page
895 or the top of the next page.
896 Therefore,
897 its position relative to the text changes.
898 The floating keep is preceded and followed
899 by
900 .NR (zs
901 [1v]
902 space.
903 Also,
904 it defaults to mode
905 .b M .
906 .TL
907 .b .)z
908 .DE
909 End floating keep.
910 .TL
911 .b .(c
912 .DE
913 Begin centered block.
914 The next keep
915 is centered as a block,
916 rather than on a line-by-line basis
917 as with
918 .b ".(b C" .
919 This call may be nested
920 inside keeps.
921 .TL
922 .b .)c
923 .DE
924 End centered block.
925 .sh 1 Annotations
926 .TL
927 .b .(d
928 .DE
929 Begin delayed text.
930 Everything in the next keep
931 is saved for output
932 later with
933 .b .pd ,
934 in a manner
935 similar to footnotes.
936 .TL
937 .b .)d
938 .i n
939 .DE
940 End delayed text.
941 The delayed text number register
942 .NR ($d
943 and the associated string
944 .ST #
945 are incremented if
946 .ST #
947 has been referenced.
948 .TL
949 .b .pd
950 .DE
951 Print delayed text.
952 Everything diverted via
953 .b .(d
954 is printed and truncated.
955 This might be used
956 at the end of each chapter.
957 .TL
958 .b .(f
959 .DE
960 Begin footnote.
961 The text of the footnote
962 is floated to the bottom
963 of the page
964 and set in font
965 .NR (ff
966 [1]
967 and size
968 .NR (fp
969 [8p].
970 Each entry
971 is preceded by
972 .NR (fs
973 [0.2v]
974 space,
975 is indented
976 .NR (fi
977 [3n]
978 on the first line,
979 and is indented
980 .NR (fu
981 [0]
982 from the right margin.
983 Footnotes line up underneath
984 two column output.
985 If the text of the footnote
986 will not all fit on one page
987 it will be carried over
988 to the next page.
989 .TL
990 .b .)f
991 .i n
992 .DE
993 End footnote.
994 The number register
995 .NR ($f
996 and the associated string
997 .ST *
998 are incremented
999 if they have been referenced.
1000 .TL
1001 .b .$s
1002 .DE
1003 The macro to output the footnote separator.
1004 This macro may be redefined
1005 to give other size lines or other types
1006 of separators.
1007 Currently
1008 it draws a 1.5i line.
1009 .TL
1010 .b .(x
1011 .i x
1012 .DE
1013 Begin index entry.
1014 Index entries are saved in the index
1015 .i x
1016 [\c
1017 .b x ]
1018 until called up with
1019 .b .xp.
1020 Each entry is preceded
1021 by a
1022 .NR (xs
1023 [0.2v]
1024 space.
1025 Each entry is
1026 .q undented
1027 by
1028 .NR (xu
1029 [0.5i];
1030 this register tells how far the page number
1031 extends into the right margin.
1032 .TL
1033 .b .)x
1034 .i P
1035 .i A
1036 .DE
1037 End index entry.
1038 The index entry
1039 is finished with a row of dots
1040 with
1041 .i A
1042 [null]
1043 right justified on the last line
1044 (such as for an author's name),
1045 followed by P
1046 [\c
1047 .NR % ].
1048 If
1049 .i A
1050 is specified,
1051 .i P
1052 must be specified;
1053 .NR %
1054 can be used to print the current page number.
1055 If
1056 .i P
1057 is an underscore,
1058 no page number
1059 and no row of dots
1060 are printed.
1061 .TL
1062 .b .xp
1063 .i x
1064 .DE
1065 Print index
1066 .i x
1067 [\c
1068 .b x ].
1069 The index is formatted in the font, size, and so forth
1070 in effect at the time it is printed,
1071 rather than at the time it is collected.
1072 .sh 1 "Columned Output"
1073 .TL
1074 .b .2c
1075 .i +S
1076 .i N
1077 .DE
1078 Enter two-column mode.
1079 The column separation is set to
1080 .i +S
1081 [4n, 0.5i in ACM mode]
1082 (saved in
1083 .NR ($s ).
1084 The column width,
1085 calculated to fill the single column line length
1086 with both columns,
1087 is stored in
1088 .NR ($l .
1089 The current column
1090 is in
1091 .NR ($c .
1092 You can test register
1093 .NR ($m
1094 [1]
1095 to see if you are in single column
1096 or double column mode.
1097 Actually,
1098 the request enters
1099 .i N
1100 [2]
1101 column output.
1102 .TL
1103 .b .1c
1104 .DE
1105 Revert to single-column mode.
1106 .TL
1107 .b .bc
1108 .DE
1109 Begin column.
1110 This is like
1111 .b .bp
1112 except that it begins a new column
1113 on a new page
1114 only if necessary,
1115 rather than forcing a whole new page
1116 if there is another column left
1117 on the current page.
1118 .sh 1 "Fonts and Sizes"
1119 .TL
1120 .b .sz
1121 .i +P
1122 .DE
1123 The pointsize is set to
1124 .i P
1125 [10p],
1126 and the line spacing is set proportionally.
1127 The line spacing as a percentage of the pointsize expressed in units
1128 is stored in
1129 .NR ($v .
1130 The percentage used internally
1131 by displays and annotations
1132 is stored in
1133 .NR ($V
1134 (although this is not used by
1135 .b .sz ).
1136 This size is
1137 .i not
1138 sticky beyond many macros:
1139 in particular,
1140 .NR (pp
1141 (paragraph pointsize)
1142 modifies the pointsize every time a new paragraph is begun
1143 using the
1144 .b \&.pp ,
1145 .b \&.lp ,
1146 .b \&.ip ,
1147 .b \&.np ,
1148 or
1149 .b \&.bu
1150 macros.
1151 Also,
1152 .NR (fp
1153 (footnote pointsize),
1154 .NR (qp
1155 (quote pointsize),
1156 .NR (sp
1157 (section header pointsize),
1158 and
1159 .NR (tp
1160 (title pointsize)
1161 may modify the pointsize.
1162 .TL
1163 .b .r
1164 .i W
1165 .i X
1166 .DE
1167 Set
1168 .i W
1169 in roman font,
1170 appending
1171 .i X
1172 in the previous font.
1173 To append different font requests,
1174 use
1175 .i X
1176 =
1177 .b \ec .
1178 If no parameters,
1179 change to roman font.
1180 .TL
1181 .b .i
1182 .i W
1183 .i X
1184 .DE
1185 Set
1186 .i W
1187 in italics,
1188 appending
1189 .i X
1190 in the previous font.
1191 If no parameters,
1192 change to italic font.
1193 .TL
1194 .b .b
1195 .i W
1196 .i X
1197 .DE
1198 Set
1199 .i W
1200 in bold font
1201 and append
1202 .i X
1203 in the previous font.
1204 If no parameters,
1205 switch to bold font.
1206 .TL
1207 .b .u
1208 .i W
1209 .i X
1210 .DE
1211 Underline
1212 .i W
1213 and append
1214 .i X .
1215 This is a true underlining,
1216 as opposed to the
1217 .b .ul
1218 request,
1219 which changes to
1220 .q "underline font"
1221 (usually italics in \*G).
1222 It won't work right
1223 if
1224 .i W
1225 is spread or broken (including hyphenated).
1226 In other words,
1227 it is safe in nofill mode only.
1228 .TL
1229 .b .q
1230 .i W
1231 .i X
1232 .DE
1233 Quote
1234 .i W
1235 and append
1236 .i X .
1237 In \*G
1238 this surrounds
1239 .i W
1240 with
1241 .b \*(lq ,
1242 and
1243 .b \*(rq .
1244 .TL
1245 .b .bi
1246 .i W
1247 .i X
1248 .DE
1249 Set
1250 .i W
1251 in bold italics
1252 and append
1253 .i X .
1254 .TL
1255 .b .bx
1256 .i W
1257 .i X
1258 .DE
1259 Sets
1260 .i W
1261 in a box,
1262 with
1263 .i X
1264 appended.
1265 It won't work right
1266 if
1267 .i W
1268 is spread or broken (including hyphenated).
1269 In other words,
1270 it is safe in nofill mode only.
1271 .TL
1272 .b .sm
1273 .i W
1274 .i X
1275 .DE
1276 Sets
1277 .i W
1278 in a smaller pointsize,
1279 with
1280 .i X
1281 appended.
1282 .sh 1 "Roff Support"
1283 .TL
1284 .b .ix
1285 .i +N
1286 .DE
1287 Indent,
1288 no break.
1289 Equivalent to
1290 .b \(aain
1291 .i N .
1292 .TL
1293 .b .bl
1294 .i N
1295 .DE
1296 Leave
1297 .i N
1298 contiguous white space,
1299 on the next page if not enough room
1300 on this page.
1301 Equivalent to a
1302 .b .sp
1303 .i N
1304 inside a block.
1305 .TL
1306 .b .pa
1307 .i +N
1308 .DE
1309 Equivalent to
1310 .b .bp .
1311 .TL
1312 .b .ro
1313 .DE
1314 Set page number
1315 in roman numerals.
1316 Equivalent to
1317 .b ".af % i" .
1318 .TL
1319 .b .ar
1320 .DE
1321 Set page number in Arabic.
1322 Equivalent to
1323 .b ".af % 1" .
1324 .TL
1325 .b .n1
1326 .DE
1327 Number lines in margin from one
1328 on each page.
1329 .TL
1330 .b .n2
1331 .i N
1332 .DE
1333 Number lines from
1334 .i N ,
1335 stop if
1336 .i N
1337 = 0.
1338 .TL
1339 .b .sk
1340 .DE
1341 Leave the next output page blank,
1342 except for headers and footers.
1343 This is used to leave space
1344 for a full-page diagram
1345 which is produced externally
1346 and pasted in later.
1347 To get a partial-page paste-in display,
1348 say
1349 .b .sv \ \c
1350 .i N ,
1351 where
1352 .i N
1353 is the amount of space
1354 to leave;
1355 this space will be output immediately
1356 if there is room,
1357 and will otherwise be output
1358 at the top of the next page.
1359 However, be warned:
1360 if
1361 .i N
1362 is greater than the amount of available space
1363 on an empty page,
1364 no space will ever be output.
1365 .sh 1 "Preprocessor Support"
1366 .TL
1367 .b .EQ
1368 .i m
1369 .i T
1370 .DE
1371 Begin equation.
1372 The equation is centered
1373 if
1374 .i m
1375 is
1376 .b C
1377 or omitted,
1378 indented
1379 .NR (bi
1380 [4m]
1381 if
1382 .i m
1383 is
1384 .b I ,
1385 and left justified if
1386 .i m
1387 is
1388 .b L .
1389 .i T
1390 is a title printed on the right margin
1391 next to the equation.
1392 See
1393 .i "Typesetting Mathematics \- User's Guide"
1394 by Brian W. Kernighan
1395 and Lorinda L. Cherry.
1396 .TL
1397 .b .EN
1398 .i c
1399 .DE
1400 End equation.
1401 If
1402 .i c
1403 is
1404 .b C
1405 the equation must be continued
1406 by immediately following
1407 with another
1408 .b .EQ ,
1409 the text of which
1410 can be centered
1411 along with this one.
1412 Otherwise,
1413 the equation is printed,
1414 always on one page,
1415 with
1416 .NR (es
1417 [0.5v]
1418 space
1419 above and below it.
1420 .TL
1421 .b .TS
1422 .i h
1423 .DE
1424 Table start.
1425 Tables are single spaced
1426 and kept on one page
1427 if possible.
1428 If you have a large table
1429 which will not fit on one page,
1430 use
1431 .i h
1432 =
1433 .b H
1434 and follow the header part
1435 (to be printed on every page of the table)
1436 with a
1437 .b .TH .
1438 See
1439 .i "Tbl \- A Program to Format Tables"
1440 by M. E. Lesk.
1441 .TL
1442 .b .TH
1443 .DE
1444 With
1445 .b ".TS H" ,
1446 ends the header portion of the table.
1447 .TL
1448 .b .TE
1449 .DE
1450 Table end.
1451 Note that this table
1452 does not float,
1453 in fact,
1454 it is not even guaranteed to stay on one page
1455 if you use requests such as
1456 .b .sp
1457 intermixed with the text
1458 of the table.
1459 If you want it to float
1460 (or if you use requests
1461 inside the table),
1462 surround the entire table
1463 (including the
1464 .b .TS
1465 and
1466 .b .TE
1467 requests)
1468 with the requests
1469 .b .(z
1470 and
1471 .b .)z .
1472 .TL
1473 .b .PS
1474 .i h
1475 .i w
1476 .DE
1477 Begin
1478 .i pic
1479 picture.
1480 .i H
1481 is the height and
1482 .i w
1483 is the width,
1484 both in basic units.
1485 .TL
1486 .b .PE
1487 .DE
1488 End picture.
1489 .TL
1490 .b .IS
1491 .DE
1492 Begin
1493 .i ideal
1494 picture.
1495 .TL
1496 .b .IE
1497 .DE
1498 End
1499 .i ideal
1500 picture.
1501 .TL
1502 .b .IF
1503 .DE
1504 End
1505 .i ideal
1506 picture (alternate form).
1507 .TL
1508 .b .GS
1509 .i x
1510 .DE
1511 Begin
1512 .i gremlin
1513 picture.
1514 .i X
1515 can be either
1516 .b C ,
1517 .b L ,
1518 or
1519 .b R
1520 to center, left, or right justify the
1521 whole picture.
1522 Default is centering the image.
1523 .TL
1524 .b .GE
1525 .DE
1526 End
1527 .i gremlin
1528 picture.
1529 .TL
1530 .b .GF
1531 .DE
1532 End
1533 .i gremlin
1534 picture (alternate form).
1535 .sh 1 "Miscellaneous"
1536 .TL
1537 .b .re
1538 .DE
1539 Reset tabs every 0.5i.
1540 .TL
1541 .b .ba
1542 .i +N
1543 .DE
1544 Set the base indent
1545 to
1546 .i +N
1547 [0]
1548 (saved in
1549 .NR ($i ).
1550 All paragraphs,
1551 sections,
1552 and displays
1553 come out indented by this amount.
1554 Titles and footnotes
1555 are unaffected.
1556 The
1557 .b .sh
1558 request performs a
1559 .b .ba
1560 request
1561 if
1562 .NR (si
1563 [0] is not zero,
1564 and sets the base indent to
1565 .NR (si \c
1566 .b * \c
1567 .NR ($0 .
1568 .TL
1569 .b .xl
1570 .i +N
1571 .DE
1572 Set the line length to
1573 .i N
1574 [6.0i].
1575 This differs
1576 from
1577 .b .ll
1578 because it only affects the current environment.
1579 .TL
1580 .b .ll
1581 .i +N
1582 .DE
1583 Set line length in all environments
1584 to
1585 .i N
1586 [6.0i].
1587 This should not be used
1588 after output has begun,
1589 and particularly not in two-column output.
1590 The current line length is stored in
1591 .NR ($l .
1592 .TL
1593 .b .hl
1594 .DE
1595 Draws a horizontal line
1596 the length of the page.
1597 This is useful
1598 inside floating keeps
1599 to differentiate
1600 between the text
1601 and the figure.
1602 .sh 1 "Standard Papers"
1603 .TL
1604 .b .tp
1605 .DE
1606 Begin title page.
1607 Spacing at the top of the page
1608 can occur,
1609 and headers and footers are suppressed.
1610 Also,
1611 the page number
1612 is not incremented
1613 for this page.
1614 .TL
1615 .b .++
1616 .i m
1617 .i H
1618 .DE
1619 This request defines the section of the paper
1620 which we are entering.
1621 The section type is defined by
1622 .i m .
1623 .b C
1624 means that we are entering the chapter portion
1625 of the paper,
1626 .b A
1627 means that we are entering the appendix portion
1628 of the paper,
1629 .b P
1630 means that the material following
1631 should be the preliminary portion
1632 (abstract, table of contents, etc.)
1633 portion of the paper,
1634 .b AB
1635 means that we are entering the abstract
1636 (numbered independently from 1
1637 in Arabic numerals),
1638 and
1639 .b B
1640 means that we are entering the bibliographic
1641 portion at the end of the paper.
1642 Also, the variants
1643 .b RC
1644 and
1645 .b RA
1646 are allowed,
1647 which specify renumbering of pages
1648 from one at the beginning of each
1649 chapter or appendix,
1650 respectively.
1651 The section type is available in register
1652 .NR (_M
1653 [1]; value 1 is equivalent to type
1654 .b C
1655 or
1656 .b RC ,
1657 value 2 represents type
1658 .b A
1659 or
1660 .b RA ,
1661 and values 3 to 5 are type
1662 .b P ,
1663 .b B ,
1664 and
1665 .b AB ,
1666 respectively.
1667 The
1668 .i H
1669 parameter defines the new header.
1670 If there are any spaces in it,
1671 the entire header must be quoted.
1672 If you want the header to have the chapter number
1673 in it,
1674 Use the string
1675 .b "\e\e\e\en(ch" .
1676 For example, to number appendixes
1677 .b A.1
1678 etc.,
1679 type
1680 .b ".++ RA \(aa\(aa\(aa\e\e\e\en(ch.%\(aa" .
1681 Each section
1682 (chapter, appendix, etc.)
1683 should be preceded by the
1684 .b .+c
1685 request.
1686 It should be mentioned
1687 that it is easier when using
1688 \*T to put the front material
1689 at the end of the paper,
1690 so that the table of contents
1691 can be collected and put out;
1692 this material can then be physically
1693 moved to the beginning of the paper.
1694 .TL
1695 .b .+c
1696 .i T
1697 .DE
1698 Begin chapter with title
1699 .i T .
1700 The chapter number
1701 is maintained in
1702 .NR (ch .
1703 This register is incremented
1704 every time
1705 .b .+c
1706 is called with a parameter.
1707 The title and chapter number
1708 are printed by
1709 .b .$c .
1710 The header is moved to the footer
1711 on the first page
1712 of each chapter.
1713 If
1714 .i T
1715 is omitted,
1716 .b .$c
1717 is not called;
1718 this is useful for doing your own
1719 .q "title page"
1720 at the beginning of papers
1721 without a title page proper.
1722 .b .$c
1723 calls
1724 .b .$C
1725 as a hook so that chapter titles can be inserted
1726 into a table of contents automatically.
1727 The footnote numbering is reset to one.
1728 .TL
1729 .b .$c
1730 .i T
1731 .DE
1732 Print chapter number
1733 (from
1734 .NR (ch )
1735 and
1736 .i T .
1737 This macro can be redefined to your liking.
1738 It is defined by default
1739 to be acceptable
1740 for a PhD thesis
1741 at Berkeley.
1742 This macro calls
1743 .b $C ,
1744 which can be defined to make index entries,
1745 or whatever.
1746 .TL
1747 .b .$C
1748 .i K
1749 .i N
1750 .i T
1751 .DE
1752 This macro is called by
1753 .b .$c .
1754 It is normally undefined,
1755 but can be used to automatically insert
1756 index entries,
1757 or whatever.
1758 .i K
1759 is a keyword,
1760 either
1761 .q Chapter
1762 or
1763 .q Appendix
1764 (depending on the
1765 .b .++
1766 mode);
1767 .i N
1768 is the chapter or appendix number,
1769 and
1770 .i T
1771 is the chapter or appendix title.
1772 .sh 1 "Predefined Strings"
1773 .TL
1774 .ST *
1775 .DE
1776 Footnote number, actually
1777 .ST [ \c
1778 .NR ($f \c
1779 .ST ] .
1780 This macro is incremented
1781 after each call to
1782 .b .)f .
1783 .TL
1784 .ST #
1785 .DE
1786 Delayed text number.
1787 Actually
1788 [\c
1789 .NR ($d ].
1790 .TL
1791 .ST {
1792 .DE
1793 Superscript.
1794 This string gives upward movement
1795 and a change to a smaller point size.
1796 Extra space is left above the line
1797 to allow room for the superscript.
1798 .TL
1799 .ST }
1800 .DE
1801 Unsuperscript.
1802 Inverse to
1803 .ST { .
1804 For example,
1805 to produce a superscript
1806 you might type
1807 .b x \c
1808 .ST { \c
1809 .b 2 \c
1810 .ST } ,
1811 which will produce
1812 .b x\*{2\*} .
1813 .TL
1814 .ST <
1815 .DE
1816 Subscript.
1817 Extra space is left below the line
1818 to allow for the subscript.
1819 .TL
1820 .ST >
1821 .DE
1822 Inverse to
1823 .ST < .
1824 .TL
1825 .ST (dw
1826 .DE
1827 The day of the week,
1828 as a word.
1829 .TL
1830 .ST (mo
1831 .DE
1832 The month,
1833 as a word.
1834 .TL
1835 .ST (td
1836 .DE
1837 Today's date,
1838 directly printable.
1839 The date is of the form February 15, 2003.
1840 Other forms of the date can be used
1841 by using
1842 .NR (dy
1843 (the day of the month;
1844 for example, 15),
1845 .ST (mo
1846 (as noted above)
1847 or
1848 .NR (mo
1849 (the same,
1850 but as an ordinal number;
1851 for example, February is 2),
1852 .NR (y4
1853 (the current year),
1854 and
1855 .NR (y2
1856 (the last two digits of the current year).
1857 .TL
1858 .ST (lq
1859 .DE
1860 Left quote marks.
1861 .TL
1862 .ST (rq
1863 .DE
1864 Right quote.
1865 .TL
1866 .ST \-
1867 .DE
1868 .ie \w'\(34'>0 \(34
1869 .el 3/4
1870 em dash.
1871 .sh 1 "Special Characters and Marks"
1872 .pp
1873 There are a number of special characters
1874 and diacritical marks
1875 (such as accents)
1876 available through \-me.
1877 .ta 15 +5 +6
1878 .nf
1879 Name    Usage   Example
1880 Acute accent    \e*\(aa a\e*\(aa        a\*'
1881 Grave accent    \e*\(ga e\e*\(ga        e\*`
1882 Umlaut  \e*:    u\e*:   u\*:
1883 Tilde   \e*~    n\e*~   n\*~
1884 Caret   \e*^    e\e*^   e\*^
1885 Cedilla \e*,    c\e*,   c\*,
1886 Czech   \e*v    e\e*v   e\*v
1887 Circle  \e*o    A\e*o   A\*o
1888 There exists    \e*(qe          \*(qe
1889 For all \e*(qa          \*(qa
1890 .fi
1891 .sp 1i
1892 .b Acknowledgments
1893 .pp
1894 I would like to thank
1895 Bob Epstein,
1896 Bill Joy,
1897 and Larry Rowe
1898 for having the courage
1899 to use the \-me macros
1900 to produce non-trivial papers
1901 during the development stages;
1902 Ricki Blau,
1903 Pamela Humphrey,
1904 and Jim Joyce
1905 for their help with the documentation phase;
1906 peter kessler
1907 for numerous complaints,
1908 most accompanied by fixes;
1909 and the plethora of people who have contributed ideas
1910 and have given support for the project.
1911 .bp
1912 .b Summary
1913 .pp
1914 This alphabetical list summarizes all macros, strings, and number registers
1915 available in the \-me macros.
1916 Selected
1917 .i troff
1918 commands, registers, and functions are included as well;
1919 those listed can generally be used with impunity.
1920 .pp
1921 The columns are the name of the
1922 command, macro, register, or string;
1923 the type of the object,
1924 and the description.
1925 Types are
1926 .b M
1927 for macro or builtin command
1928 (invoked with
1929 .b \&.
1930 or
1931 .b \&\'
1932 in the first input column),
1933 .b S
1934 for a string
1935 (invoked with
1936 .b \e*
1937 or
1938 .b \e*( ),
1939 .b R
1940 for a number register
1941 (invoked with
1942 .b \en
1943 or
1944 .b \en( ),
1945 and
1946 .b F
1947 for a
1948 .i troff
1949 builtin function
1950 (invoked by preceding it with a single backslash).
1951 .pp
1952 Lines marked with \(sc are
1953 .i troff
1954 internal codes.
1955 Lines marked with \(dg or \(dd
1956 may be defined by the user to get special functions;
1957 \(dd indicates that these are defined by default
1958 and changing them may have unexpected side effects.
1959 Lines marked with \(de
1960 are specific to
1961 .i ditroff
1962 (device-independent
1963 .i troff ).
1964 .de $H
1965 .ev 1
1966 .ta \w'\e(space)\(sc\ 'u +\w'TYPE  'u
1967 NAME    TYPE    DESCRIPTION
1968 .ev
1969 ..
1970 .(l
1971 .$H
1972 \e(space)       F\(sc   unpaddable space
1973 \e"     F\(sc   comment (to end of line)
1974 \e*#    S       optional delayed text tag string
1975 \e$\fI\&N\fP    F\(sc   interpolate argument \fI\&N\fP
1976 \en($0  R       section depth
1977 \&.$0   M\(dg   invoked after section title printed
1978 \en($1  R       first section number
1979 \&.$1   M\(dg   invoked before printing depth 1 section
1980 \en($2  R       second section number
1981 \&.$2   M\(dg   invoked before printing depth 2 section
1982 \en($3  R       third section number
1983 \&.$3   M\(dg   invoked before printing depth 3 section
1984 \en($4  R       fourth section number
1985 \&.$4   M\(dg   invoked before printing depth 4 section
1986 \en($5  R       fifth section number
1987 \&.$5   M\(dg   invoked before printing depth 5 section
1988 \en($6  R       sixth section number
1989 \&.$6   M\(dg   invoked before printing depth 6 section
1990 \&.$C   M\(dg   called at beginning of chapter
1991 \&.$H   M\(dg   text header
1992 \en($V  R\(dd   relative vertical spacing in displays
1993 \en($c  R       current column number
1994 \&.$c   M\(dd   print chapter title
1995 \en($d  R       delayed text number
1996 \en($f  R       footnote number
1997 \&.$f   M\(dd   print footer
1998 \&.$h   M\(dd   print header
1999 \en($i  R       paragraph base indent
2000 \en($l  R       column width
2001 \en($m  R       number of columns in effect
2002 \e*($n  S       section name
2003 \en($p  R       numbered paragraph number
2004 \&.$p   M\(dd   print section heading (internal macro)
2005 \en($s  R       column indent
2006 \&.$s   M\(dd   footnote separator (from text)
2007 \en($v  R\(dd   relative vertical spacing in text
2008 \en%    R\(sc   current page number
2009 \e&     F\(sc   zero width character, useful for hiding controls
2010 \e(\fI\&xx\fP   F\(sc   interpolate special character \fI\&xx\fP
2011 \&.(b   M       begin block
2012 \&.(c   M       begin centered block
2013 \&.(d   M       begin delayed text
2014 \&.(f   M       begin footnote
2015 \&.(l   M       begin list
2016 \&.(q   M       begin quote
2017 \&.(x   M       begin index entry
2018 \&.(z   M       begin floating keep
2019 \&.)b   M       end block
2020 \&.)c   M       end centered block
2021 \&.)d   M       end delayed text
2022 \&.)f   M       end footnote
2023 \&.)l   M       end list
2024 \&.)q   M       end quote
2025 \&.)x   M       end index entry
2026 \&.)z   M       end floating keep
2027 \e*\fI\&x\fP    F\(sc   interpolate string \fI\&x\fP
2028 \e*(\fI\&xx\fP  F\(sc   interpolate string \fI\&xx\fP
2029 \e**    S       optional footnote tag string
2030 \&.++   M       set paper section type
2031 \&.+c   M       begin chapter
2032 \e*,    S       cedilla
2033 \e\-    F\(sc   minus sign
2034 \e*\-   S       3/4 em dash
2035 \e0     F\(sc   unpaddable digit-width space
2036 \&.1c   M       revert to single column output
2037 \&.2c   M       begin two column output
2038 \e*:    S       umlaut
2039 \e*<    S       begin subscript
2040 \e*>    S       end subscript
2041 \&.EN   M       end equation
2042 \&.EQ   M       begin equation
2043 \eL\'\fI\&d\fP\'        F\(sc   vertical line drawing function for distance \fI\&d\fP
2044 \&.GE   M\(de   end \fIgremlin\fP picture
2045 \&.GF   M\(de   end \fIgremlin\fP picture (with flyback)
2046 \&.GS   M\(de   start \fIgremlin\fP picture
2047 \&.IE   M\(de   end \fIideal\fP picture
2048 \&.IF   M\(de   end \fIideal\fP picture (with flyback)
2049 \&.IS   M\(de   start \fIideal\fP picture
2050 \&.PE   M\(de   end \fIpic\fP picture
2051 \&.PF   M\(de   end \fIpic\fP picture (with flyback)
2052 \&.PS   M\(de   start \fIpic\fP picture
2053 \&.TE   M       end table
2054 \&.TH   M       end header of table
2055 \&.TS   M       begin table
2056 \e*{    S       begin superscript
2057 \en(\&.$        R\(sc   number of arguments to macro
2058 \en(\&.i        R\(sc   current indent
2059 \en(\&.l        R\(sc   current line length
2060 \en(\&.s        R\(sc   current point size
2061 \e*(\&\'        S       acute accent
2062 \e*(\&\`        S       grave accent
2063 \e(\'   F\(sc   acute accent
2064 \e(\`   F\(sc   grave accent
2065 \e*}    S       end superscript
2066 \e^     F\(sc   1/12 em narrow space
2067 \e*^    S       caret
2068 \&.ad   M\(sc   set text adjustment
2069 \&.af   M\(sc   assign format to register
2070 \&.am   M\(sc   append to macro
2071 \&.ar   M       set page numbers in Arabic
2072 \&.as   M\(sc   append to string
2073 \&.b    M       bold font
2074 \&.ba   M       set base indent
2075 \&.bc   M       begin new column
2076 \&.bi   M       bold italic
2077 \en(bi  R       display (block) indent
2078 \&.bl   M       blank lines (even at top of page)
2079 \en(bm  R       bottom title margin
2080 \&.bp   M\(sc   begin page
2081 \&.br   M\(sc   break (start new line)
2082 \en(bs  R       display (block) pre/post spacing
2083 \en(bt  R       block keep threshold
2084 \&.bx   M       boxed
2085 \ec     F\(sc   continue input
2086 \&.ce   M\(sc   center lines
2087 \en(ch  R       current chapter number
2088 \&.de   M\(sc   define macro
2089 \en(df  R       display font
2090 \&.ds   M\(sc   define string
2091 \en(dw  R\(sc   current day of week
2092 \e*(dw  S       current day of week
2093 \en(dy  R\(sc   day of month
2094 \ee     F\(sc   printable version of \e
2095 \&.ef   M       set footer (even numbered pages only)
2096 \&.eh   M       set header (even numbered pages only)
2097 \&.el   M\(sc   else part of conditional
2098 \&.ep   M       end page
2099 \en(es  R       equation pre/post space
2100 \ef\fI\&f\fP    F\(sc   inline font change to font \fI\&f\fP
2101 \ef(\fI\&ff\fP  F\(sc   inline font change to font \fI\&ff\fP
2102 \&.fc   M\(sc   set field characters
2103 \en(ff  R       footnote font
2104 \&.fi   M\(sc   fill output lines
2105 \en(fi  R       footnote indent (first line only)
2106 \en(fm  R       footer margin
2107 \&.fo   M       set footer
2108 \en(fp  R       footnote pointsize
2109 \en(fs  R       footnote prespace
2110 \en(fu  R       footnote undent (from right margin)
2111 \eh\'\fI\&d\fP\'        F\(sc   local horizontal motion for distance \fI\&d\fP
2112 \&.hc   M\(sc   set hyphenation character
2113 \&.he   M       set header
2114 \&.hl   M       draw horizontal line
2115 \en(hm  R       header margin
2116 \&.hx   M       suppress headers and footers on next page
2117 \&.hy   M\(sc   set hyphenation mode
2118 \&.i    M       italic font
2119 \&.ie   M\(sc   conditional with else
2120 \&.if   M\(sc   conditional
2121 \en(ii  R       indented paragraph indent
2122 \&.in   M\(sc   indent (transient, use .ba for pervasive)
2123 \&.ip   M       begin indented paragraph
2124 \&.ix   M       indent, no break
2125 \el\'\fI\&d\fP\'        F\(sc   horizontal line drawing function for distance \fI\&d\fP
2126 \&.lc   M\(sc   set leader repetition character
2127 \&.ll   M       set line length
2128 \&.lp   M       begin left justified paragraph
2129 \e*(lq  S       left quote marks
2130 \&.ls   M\(sc   set multi-line spacing
2131 \&.m1   M       set space from top of page to header
2132 \&.m2   M       set space from header to text
2133 \&.m3   M       set space from text to footer
2134 \&.m4   M       set space from footer to bottom of page
2135 \&.mc   M\(sc   insert margin character
2136 \&.mk   M\(sc   mark vertical position
2137 \en(mo  R\(sc   month of year
2138 \e*(mo  S       current month
2139 \en\fI\&x\fP    F\(sc   interpolate number register \fI\&x\fP
2140 \en(\fI\&xx\fP  F\(sc   interpolate number register \fI\&xx\fP
2141 \&.n1   M       number lines in margin
2142 \&.n2   M       number lines in margin
2143 \&.na   M\(sc   turn off text adjustment
2144 \&.ne   M\(sc   need vertical space
2145 \&.nf   M\(sc   don't fill output lines
2146 \&.nh   M\(sc   turn off hyphenation
2147 \&.np   M       begin numbered paragraph
2148 \&.nr   M\(sc   set number register
2149 \&.ns   M\(sc   no space mode
2150 \e*o    S       circle (e.g., for Norse A\*o)
2151 \&.of   M       set footer (odd numbered pages only)
2152 \&.oh   M       set header (odd numbered pages only)
2153 \&.pa   M       begin page
2154 \&.pd   M       print delayed text
2155 \en(pf  R       paragraph font
2156 \en(pi  R       paragraph indent
2157 \&.pl   M\(sc   set page length
2158 \&.pn   M\(sc   set next page number
2159 \&.po   M\(sc   page offset
2160 \en(po  R       simulated page offset
2161 \&.pp   M       begin paragraph
2162 \en(pp  R       paragraph pointsize
2163 \en(ps  R       paragraph prespace
2164 \&.q    M       quoted
2165 \e*(qa  S       for all
2166 \e*(qe  S       there exists
2167 \en(qi  R       quote indent (also shortens line)
2168 \en(qp  R       quote pointsize
2169 \en(qs  R       quote pre/post space
2170 \&.r    M       roman font
2171 \&.rb   M       real bold font
2172 \&.re   M       reset tabs
2173 \&.rm   M\(sc   remove macro or string
2174 \&.rn   M\(sc   rename macro or string
2175 \&.ro   M       set page numbers in roman
2176 \e*(rq  S       right quote marks
2177 \&.rr   M\(sc   remove register
2178 \&.rs   M\(sc   restore spacing
2179 \&.rt   M\(sc   return to vertical position
2180 \es\fI\&S\fP    F\(sc   inline size change to size \fI\&S\fP
2181 \en(sf  R       section title font
2182 \&.sh   M       begin numbered section
2183 \en(si  R       relative base indent per section depth
2184 \&.sk   M       skip next page
2185 \&.sm   M       set argument in a smaller pointsize
2186 \&.so   M\(sc   source input file
2187 \en(so  R       additional section title offset
2188 \&.sp   M\(sc   vertical space
2189 \en(sp  R       section title pointsize
2190 \en(ss  R       section prespace
2191 \&.sx   M       change section depth
2192 \&.sz   M       set pointsize and vertical spacing
2193 \&.ta   M\(sc   set tab stops
2194 \&.tc   M\(sc   set tab repetition character
2195 \e*(td  S       today's date
2196 \en(tf  R       title font
2197 \&.ti   M\(sc   temporary indent (next line only)
2198 \&.tl   M\(sc   three part title
2199 \en(tm  R       top title margin
2200 \&.tp   M       begin title page
2201 \en(tp  R       title pointsize
2202 \&.tr   M\(sc   translate
2203 \&.u    M       underlined
2204 \&.uh   M       unnumbered section
2205 \&.ul   M\(sc   underline next line
2206 \ev\'\fI\&d\fP\'        F\(sc   local vertical motion for distance \fI\&d\fP
2207 \e*v    S       inverted `v' for czeck ``e\*v''
2208 \ew\'\fI\&S\fP\'        F\(sc   return width of string \fI\&S\fP
2209 \&.xl   M       set line length (local)
2210 \&.xp   M       print index
2211 \en(xs  R       index entry prespace
2212 \en(xu  R       index undent (from right margin)
2213 \en(y2  R       year (last two digits only)
2214 \en(y4  R       year (all digits)
2215 \en(yr  R\(sc   year minus 1900
2216 \en(zs  R       floating keep pre/post space
2217 \e{     F\(sc   begin conditional group
2218 \e|     F\(sc   1/6 em narrow space
2219 \e}     F\(sc   end conditional group
2220 \e*~    S       tilde
2221 \en(_M  R       section type (as set with .++ macro)
2222 .)l
2223 .rm $H