Initial import of binutils 2.22 on the new vendor branch
[dragonfly.git] / contrib / groff / tmac / groff_man.man
1 .ig
2 Copyright (C) 1999-2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
3 Free Software Foundation, Inc.
4
5 Permission is granted to make and distribute verbatim copies of this
6 manual provided the copyright notice and this permission notice are
7 preserved on all copies.
8
9 Permission is granted to copy and distribute modified versions of this
10 manual under the conditions for verbatim copying, provided that the
11 entire resulting derived work is distributed under the terms of a
12 permission notice identical to this one.
13
14 Permission is granted to copy and distribute translations of this
15 manual into another language, under the above conditions for modified
16 versions, except that this permission notice may be included in
17 translations approved by the Free Software Foundation instead of in
18 the original English.
19 ..
20 .
21 .
22 .TH GROFF_MAN @MAN7EXT@ "@MDATE@" "Groff Version @VERSION@"
23 .
24 .
25 .\" ----------------------------------------------------------------
26 .
27 .SH NAME
28 .
29 groff_man \- groff `man' macros to support generation of man pages
30 .
31 .
32 .\" -----------------------------------------------------------------
33 .
34 .SH SYNOPSIS
35 .
36 .SY "groff\ \-man"
37 .RI [ options
38 .IR .\|.\|.\& ]
39 .RI [ files
40 .IR .\|.\|.\& ]
41 .
42 .SY "groff\ \-m\ man"
43 .RI [ options
44 .IR .\|.\|.\& ]
45 .RI [ files
46 .IR .\|.\|.\& ]
47 .YS
48 .
49 .
50 .\" -----------------------------------------------------------------
51 .
52 .SH DESCRIPTION
53 .
54 The
55 .B man
56 macros used to generate
57 .I man\~pages
58 with
59 .I groff
60 were written by James Clark.
61 .
62 This document provides a brief summary of the use of each macro in that
63 package.
64 .
65 .
66 .\" -----------------------------------------------------------------
67 .
68 .SH OPTIONS
69 .
70 The
71 .B man
72 macros understand the following command line options (which define
73 various registers).
74 .
75 .TP
76 .B \-rcR=1
77 This option (the default if in nroff mode) creates a single, very
78 long page instead of multiple pages.
79 .
80 Say
81 .B \-rcR=0
82 to disable it.
83 .
84 .TP
85 .B \-rC1
86 If more than one manual page is given on the command line, number the
87 pages continuously, rather than starting each at\~1.
88 .
89 .TP
90 .B \-rD1
91 Double-sided printing.
92 .
93 Footers for even and odd pages are formatted differently.
94 .
95 .TP
96 .BI \-rFT= dist
97 Set distance of the footer relative to the bottom of the page if
98 negative or relative to the top if positive.
99 .
100 The default is -0.5i.
101 .
102 .TP
103 .BI \-rHY= flags
104 Set hyphenation flags.
105 .
106 Possible values are 1\~to hyphenate without restrictions, 2\~to not
107 hyphenate the last word on a page, 4\~to not hyphenate the last two
108 characters of a word, and 8\~to not hyphenate the first two characters
109 of a word.
110 .
111 These values are additive; the default is\~14.
112 .
113 .TP
114 .BI \-rIN= width
115 Set body text indentation to
116 .IR width .
117 The default is 7n for
118 .IR nroff ,
119 7.2n for
120 .IR troff .
121 For
122 .IR nroff ,
123 this value should always be an integer multiple of unit `n' to get
124 consistent indentation.
125 .
126 .TP
127 .BI \-rLL= line-length
128 Set line length.
129 .
130 If this option is not given,
131 the line length is set to respect any value set by a prior `.ll' request,
132 (which
133 .I must
134 be in effect when the `.TH' macro is invoked),
135 if this differs from the built\-in default for the formatter;
136 otherwise it defaults to 78n in
137 .I nroff
138 mode and 6.5i in
139 .I troff
140 mode.
141 .
142 .IP
143 Note that the use of a `.ll' request to initialize the line length
144 is supported for backward compatibility with some versions of the
145 .B man
146 program;
147 direct initialization of the `LL' register should
148 .I always
149 be preferred to the use of such a request.
150 In particular, note that a `.ll\ 65n' request does
151 .I not
152 preserve the normal
153 .I nroff
154 default line length,
155 (the
156 .B man
157 default initialization to 78n prevails),
158 whereas,
159 the `-rLL=65n' option, or an equivalent `.nr\ LL\ 65n'
160 request preceding the use of the `TH' macro,
161 .I does
162 set a line length of 65n.
163 .
164 .TP
165 .BI \-rLT= title-length
166 Set title length.
167 .
168 If this option is not given, the title length defaults to the line
169 length.
170 .
171 .TP
172 .BI \-rP nnn
173 Enumeration of pages start with
174 .I nnn
175 rather than with\~1.
176 .
177 .TP
178 .BI \-rS xx
179 Base document font size is
180 .I xx
181 points
182 .RI ( xx
183 can be 10, 11, or\~12) rather than 10\~points.
184 .
185 .TP
186 .BI \-rSN= width
187 Set sub-subheading indentation to
188 .IR width .
189 The default is 3n.
190 .
191 .TP
192 .BI \-rX nnn
193 After page\~\c
194 .IR nnn ,
195 number pages as
196 .IR nnn a,
197 .IR nnn b,
198 .IR nnn c,
199 etc.
200 .
201 For example, the option `\-rX2' produces the following page
202 numbers: 1, 2, 2a, 2b, 2c, etc.
203 .
204 .
205 .\" -----------------------------------------------------------------
206 .
207 .SH USAGE
208 .
209 This section describes the available macros for manual pages.
210 .
211 For further customization, put additional macros and requests into the
212 file
213 .B man.local
214 which is loaded immediately after the
215 .B man
216 package.
217 .
218 .TP
219 .BI .TH " title section \fR[\fPextra1\fR]\fP \fR[\fPextra2\fR]\fP \fR[\fPextra3\fR]"
220 Set the title of the
221 .I man\~page
222 to
223 .I title
224 and the section to
225 .IR section ,
226 which must take on a value between 1 and\~8.
227 .
228 The value
229 .I section
230 may also have a string appended, e.g. `.pm', to indicate a specific
231 subsection of the
232 .IR \%man\~pages .
233 Both
234 .I title
235 and
236 .I section
237 are positioned at the left and right in the header line (with
238 .I section
239 in parentheses immediately appended to
240 .IR title .
241 .I extra1
242 is positioned in the middle of the footer line.
243 .I extra2
244 is positioned at the left in the footer line (or at the left on
245 even pages and at the right on odd pages if double-sided printing is
246 active).
247 .I extra3
248 is centered in the header line.
249 .
250 .IP
251 For HTML output, headers and footers are completely suppressed.
252 .
253 .IP
254 Additionally, this macro starts a new page; the new line number is\~1
255 again (except if the `-rC1' option is given on the command line) --
256 this feature is intended only for formatting multiple
257 .IR \%man\~pages ;
258 a single
259 .I \%man\~page
260 should contain exactly one
261 .B TH
262 macro at the beginning of the file.
263 .
264 .TP
265 .BI .SH " \fR[\fPtext for a heading\fR]\fP"
266 Set up an unnumbered section heading sticking out to the left.
267 .
268 Prints out all the text following
269 .B SH
270 up to the end of the line (or the text in the next input line if there
271 is no argument to
272 .BR SH )
273 in bold face
274 (or the font specified by the string
275 .BR HF ),
276 one size larger than the base document size.
277 .
278 Additionally, the left margin and the indentation for the following
279 text is reset to the default values.
280 .
281 .TP
282 .BI .SS " \fR[\fPtext for a heading\fR]\fP"
283 Set up a secondary, unnumbered section heading.
284 .
285 Prints out all the text following
286 .B SS
287 up to the end of the line (or the text in the next input line if there
288 is no argument to
289 .BR SS )
290 in bold face
291 (or the font specified by the string
292 .BR HF ),
293 at the same size as the base document size.
294 .
295 Additionally, the left margin and the indentation for the following
296 text is reset to the default values.
297 .
298 .TP
299 .BI .TP " \fR[\fPnnn\fR]\fP"
300 Set up an indented paragraph with label.
301 .
302 The indentation is set to
303 .I nnn
304 if that argument is supplied (the default unit is `n' if omitted),
305 otherwise it is set to the previous indentation value specified with
306 .BR TP ,
307 .BR IP ,
308 or
309 .B HP
310 (or to the default value if none of them have been used yet).
311 .
312 .IP
313 The first input line of text following this macro is interpreted as a
314 string to be printed flush-left, as it is appropriate for a label.
315 .
316 It is not interpreted as part of a paragraph, so there is no attempt
317 to fill the first line with text from the following input lines.
318 .
319 Nevertheless, if the label is not as wide as the indentation the
320 paragraph starts at the same line (but indented), continuing on the
321 following lines.
322 .
323 If the label is wider than the indentation the descriptive part of the
324 paragraph begins on the line following the label, entirely indented.
325 .
326 Note that neither font shape nor font size of the label is set to a
327 default value; on the other hand, the rest of the text has default
328 font settings.
329 .
330 .IP
331 The
332 .B TP
333 macro is the macro used for the explanations you are just reading.
334 .
335 .TP
336 .B .TQ
337 The
338 .B TQ
339 macro sets up header continuation for a .TP macro.
340 .
341 With it, you can stack up any number of labels (such as in a
342 glossary, or list of commands) before beginning the indented
343 paragraph.
344 .
345 For an example, look just past the next paragraph.
346 .
347 .IP
348 This macro is not defined on legacy Unix systems running classic
349 troff.
350 .
351 To be certain your page will be portable to those systems,
352 copy its definition from the
353 .B \%an-ext.tmac
354 file of a
355 .BR groff
356 installation.
357 .
358 .TP
359 .B .LP
360 .TQ
361 .B .PP
362 .TQ
363 .B .P
364 These macros are mutual aliases.
365 .
366 Any of them causes a line break at the current position, followed by a
367 vertical space downwards by the amount specified by the
368 .B PD
369 macro.
370 .
371 The font size and shape are reset to the default value (normally 10pt
372 Roman).
373 .
374 Finally, the current left margin and the indentation are restored.
375 .
376 .TP
377 .BI .IP " \fR[\fPdesignator\fR]\fP \fR[\fPnnn\fR]\fP"
378 Set up an indented paragraph, using
379 .I designator
380 as a tag to mark its beginning.
381 .
382 The indentation is set to
383 .I nnn
384 if that argument is supplied (the default unit is `n' if omitted),
385 otherwise it is set to the previous indentation value specified with
386 .BR TP ,
387 .BR IP ,
388 or
389 .B HP
390 (or to the default value if none of them have been used yet).
391 .
392 Font size and face of the paragraph (but not the designator) are reset
393 to its default values.
394 .
395 .IP
396 To start an indented paragraph with a particular indentation but
397 without a designator, use `""' (two doublequotes) as the second
398 argument.
399 .
400 .IP
401 For example, the following paragraphs were all set up with bullets as
402 the designator, using `.IP\ \\(bu\ 4'.
403 .
404 The whole block has been enclosed with `.RS' and `.RE' to set the left
405 margin temporarily to the current indentation value.
406 .
407 .RS
408 .IP \(bu 4
409 .B IP
410 is one of the three macros used in the
411 .B man
412 package to format lists.
413 .
414 .IP \(bu 4
415 .B HP
416 is another.
417 .
418 This macro produces a paragraph with a left hanging indentation.
419 .
420 .IP \(bu 4
421 .B TP
422 is another.
423 .
424 This macro produces an unindented label followed by an indented
425 paragraph.
426 .RE
427 .
428 .TP
429 .BI .HP " \fR[\fPnnn\fR]\fP"
430 Set up a paragraph with hanging left indentation.
431 .
432 The indentation is set to
433 .I nnn
434 if that argument is supplied (the default unit is `n' if omitted),
435 otherwise it is set to the previous indentation value specified with
436 .BR TP ,
437 .BR IP ,
438 or
439 .B HP
440 (or to the default value if none of them have been used yet).
441 .
442 Font size and face are reset to its default values.
443 .
444 The following paragraph illustrates the effect of this macro with
445 hanging indentation set to\~4 (enclosed by
446 .B .RS
447 and
448 .B .RE
449 to set the left margin temporarily to the current indentation):
450 .
451 .RS
452 .HP 4
453 This is a paragraph following an invocation of the
454 .B HP
455 macro.
456 .
457 As you can see, it produces a paragraph where all lines but the first
458 are indented.
459 .
460 .RE
461 .IP
462 Use of this presentation-level macro is deprecated.
463 .
464 While it is universally portable to legacy Unix systems, a hanging
465 indentation cannot be expressed naturally under HTML, and many
466 HTML-based manual viewers simply interpret it as a starter for a
467 normal paragraph.
468 .
469 Thus, any information or distinction you tried to express with the
470 indentation may be lost.
471 .
472 .TP
473 .BI .RS " \fR[\fPnnn\fR]\fP"
474 This macro moves the left margin to the right by the value
475 .I nnn
476 if specified (default unit is `n'); otherwise it is set to the
477 previous indentation value specified with
478 .BR TP ,
479 .BR IP ,
480 or
481 .B HP
482 (or to the default value if none of them have been used yet).
483 .
484 The indentation value is then set to the default.
485 .
486 .IP
487 Calls to the
488 .B RS
489 macro can be nested.
490 .
491 .TP
492 .BI .RE " \fR[\fPnnn\fR]\fP"
493 This macro moves the left margin back to level
494 .IR nnn ,
495 restoring the previous left margin.
496 .
497 If no argument is given, it moves one level back.
498 .
499 The first level (i.e., no call to
500 .B RS
501 yet) has number\~1, and each call to
502 .B RS
503 increases the level by\~1.
504 .
505 .TP
506 .B .EX
507 .TQ
508 .B .EE
509 Example/End Example.
510 .
511 After
512 .BR EX ,
513 filling is disabled and the font is set to constant-width.
514 .
515 This is useful for formatting code, command, and
516 configuration-file examples.
517 .
518 The
519 .B EE
520 macro restores the previous font.
521 .
522 .IP
523 These macros are defined on many (but not all) legacy Unix systems
524 running classic troff.
525 .
526 To be certain your page will be portable to those systems, copy
527 their definitions from the
528 .B \%an-ext.tmac
529 file of a
530 .BR groff
531 installation.
532 .
533 .PP
534 To summarize, the following macros cause a line break with the
535 insertion of vertical space (which amount can be changed with the
536 .B PD
537 macro):
538 .BR SH ,
539 .BR SS ,
540 .BR TP ,
541 .BR TQ ,
542 .B LP
543 .RB ( PP ,
544 .BR P ),
545 .BR IP ,
546 and
547 .BR HP .
548 The macros
549 .BR RS ,
550 .BR RE ,
551 .BR EX ,
552 and
553 .B EE
554 also cause a break but no insertion of vertical space.
555 .
556 .
557 .\" -----------------------------------------------------------------
558 .
559 .SH "MACROS TO SET FONTS"
560 .
561 The standard font is Roman; the default text size is 10\~point.
562 .
563 .TP
564 .BI .SM " \fR[\fPtext\fR]\fP"
565 Causes the text on the same line or the text on the next input line to
566 appear in a font that is one point size smaller than the default font.
567 .
568 .TP
569 .BI .SB " \fR[\fPtext\fR]\fP"
570 Causes the text on the same line or the text on the next input line to
571 appear in boldface font, one point size smaller than the default font.
572 .
573 .TP
574 .BI ".BI " text
575 Causes text on the same line to appear alternately in bold face and
576 italic.
577 .
578 The text must be on the same line as the macro call.
579 .
580 Thus
581 .
582 .RS
583 .IP
584 \&.BI this "word and" that
585 .
586 .PP
587 would cause `this' and `that' to appear in bold face, while `word and'
588 appears in italics.
589 .RE
590 .
591 .TP
592 .BI ".IB " text
593 Causes text to appear alternately in italic and bold face.
594 .
595 The text must be on the same line as the macro call.
596 .
597 .TP
598 .BI ".RI " text
599 Causes text on the same line to appear alternately in roman and
600 italic.
601 .
602 The text must be on the same line as the macro call.
603 .
604 .TP
605 .BI ".IR " text
606 Causes text on the same line to appear alternately in italic and
607 roman.
608 .
609 The text must be on the same line as the macro call.
610 .
611 .TP
612 .BI ".BR " text
613 Causes text on the same line to appear alternately in bold face and
614 roman.
615 .
616 The text must be on the same line as the macro call.
617 .
618 .TP
619 .BI ".RB " text
620 Causes text on the same line to appear alternately in roman and bold
621 face.
622 .
623 The text must be on the same line as the macro call.
624 .
625 .TP
626 .BI .B " \fR[\fPtext\fR]\fP"
627 Causes
628 .I text
629 to appear in bold face.
630 .
631 If no text is present on the line where the macro is called the text
632 of the next input line appears in bold face.
633 .
634 .TP
635 .BI .I " \fR[\fPtext\fR]\fP"
636 Causes
637 .I text
638 to appear in italic.
639 .
640 If no text is present on the line where the macro is called the text
641 of the next input line appears in italic.
642 .
643 .
644 .\" -----------------------------------------------------------------
645 .
646 .SH "MACROS TO DESCRIBE HYPERLINKS AND EMAIL ADDRESSES"
647 .
648 The following macros are not defined on legacy Unix systems
649 running classic troff.
650 .
651 To be certain your page will be portable to those systems, copy
652 their definitions from the
653 .B \%an-ext.tmac
654 file of a
655 .BR groff
656 installation.
657 .
658 .PP
659 Using these macros helps ensure that you get hyperlinks when your
660 manual page is rendered in a browser or other program that is
661 Web-enabled.
662 .
663 .TP
664 .BI .UR " URL"
665 .TQ
666 .BI .UE " \fR[\fPpunctuation\fR]\fP"
667 Wrap a World Wide Web hyperlink.
668 .
669 The argument to
670 .B UR
671 is the URL; thereafter, lines until
672 .B UE
673 are collected and used as the link text.
674 .
675 Any argument to the
676 .B UE
677 macro is pasted to the end of the text.
678 .
679 On a device that is not a browser,
680 .
681 .RS
682 .IP
683 .EX
684 this is a link to
685 \&.UR http://\e:randomsite.org/\e:fubar
686 some random site
687 \&.UE ,
688 given as an example
689 .EE
690 .RE
691 .
692 .IP
693 usually displays like this: \[lq]this is a link to some random
694 site <http://\:randomsite.org/\:fubar>, given as an example\[rq].
695 .
696 .IP
697 The use of
698 .B \e:
699 to insert hyphenless breakpoints is a groff extension and can
700 be omitted.
701 .
702 .TP
703 .BI .MT " address"
704 .TQ
705 .BI .ME " \fR[\fPpunctuation\fR]\fP"
706 Wrap an email address.
707 .
708 The argument of
709 .B MT
710 is the address; text following, until
711 .BR ME ,
712 is a name to be associated with the address.
713 .
714 Any argument to the
715 .B ME
716 macro is pasted to the end of the link text.
717 .
718 On a device that is not a browser,
719 .
720 .RS
721 .IP
722 .EX
723 contact
724 \&.UR fred.foonly@\e:fubar.net
725 Fred Foonly
726 \&.UE
727 for more information
728 .EE
729 .RE
730 .
731 .IP
732 usually displays like this: \[lq]contact Fred Foonly
733 <fred.foonly@\:fubar.net> for more information\[rq].
734 .
735 .IP
736 The use of
737 .B \e:
738 to insert hyphenless breakpoints is a groff extension and can
739 be omitted.
740 .
741 .
742 .\" -----------------------------------------------------------------
743 .
744 .SH "MACROS TO DESCRIBE COMMAND SYNOPSES"
745 .
746 The following macros are not defined on legacy Unix systems
747 running classic troff.
748 .
749 To be certain your page will be portable to those systems, copy their
750 definitions from the
751 .B \%an-ext.tmac
752 file of a
753 .BR groff
754 installation.
755 .
756 .PP
757 These macros are a convenience for authors.
758 They also assist automated translation tools and help browsers in
759 recognizing command synopses and treating them differently from
760 running text.
761 .
762 .TP
763 .BI .SY " command"
764 Begin synopsis.
765 .
766 Takes a single argument, the name of a command.
767 .
768 Text following, until closed by
769 .BR YS ,
770 is set with a hanging indentation with the width of
771 .I command
772 plus a space.
773 .
774 This produces the traditional look of a Unix command synopsis.
775 .
776 .TP
777 .BI .OP " key value"
778 Describe an optional command argument.
779 .
780 The arguments of this macro are set surrounded by option braces
781 in the default Roman font; the first argument is printed with
782 a bold face, while the second argument is typeset as italic.
783 .
784 .TP
785 .B .YS
786 This macro restores normal indentation at the end of a command
787 synopsis.
788 .
789 .PP
790 Here is a real example:
791 .
792 .IP
793 .EX
794 \&.SY groff
795 \&.OP \e-abcegiklpstzCEGNRSUVXZ
796 \&.OP \e-d cs
797 \&.OP \e-f fam
798 \&.OP \e-F dir
799 \&.OP \e-I dir
800 \&.OP \e-K arg
801 \&.OP \e-L arg
802 \&.OP \e-m name
803 \&.OP \e-M dir
804 \&.OP \e-n num
805 \&.OP \e-o list
806 \&.OP \e-P arg
807 \&.OP \e-r cn
808 \&.OP \e-T dev
809 \&.OP \e-w name
810 \&.OP \e-W name
811 \&.RI [ file
812 \&.IR .\e|.\e|. ]
813 \&.YS
814 .EE
815 .
816 .PP
817 produces the following output:
818 .
819 .RS
820 .PP
821 .SY groff
822 .OP \-abcegiklpstzCEGNRSUVXZ
823 .OP \-d cs
824 .OP \-f fam
825 .OP \-F dir
826 .OP \-I dir
827 .OP \-K arg
828 .OP \-L arg
829 .OP \-m name
830 .OP \-M dir
831 .OP \-n num
832 .OP \-o list
833 .OP \-P arg
834 .OP \-r cn
835 .OP \-T dev
836 .OP \-w name
837 .OP \-W name
838 .RI [ file
839 .IR .\|.\|. ]
840 .YS
841 .RE
842 .
843 .PP
844 If necessary, you might use
845 .B br
846 requests to control line breaking.
847 .
848 You can insert plain text as well; this looks like the traditional
849 (unornamented) syntax for a required command argument or filename.
850 .
851 .
852 .\" -----------------------------------------------------------------
853 .
854 .SH "MISCELLANEOUS"
855 .
856 The default indentation is 7.2n in troff mode and 7n in nroff mode
857 except for
858 .B grohtml
859 which ignores indentation.
860 .
861 .TP
862 .B .DT
863 Set tabs every 0.5\~inches.
864 .
865 Since this macro is always called during a
866 .B TH
867 request, it makes sense to call it only if the tab positions have been
868 changed.
869 .
870 .IP
871 Use of this presentation-level macro is deprecated.
872 .
873 It translates poorly to HTML, under which exact whitespace control
874 and tabbing are not readily available.
875 .
876 Thus, information or distinctions that you use
877 .B DT
878 to express are likely to be lost.
879 .
880 If you feel tempted to use it, you should probably be composing a
881 table using
882 .BR @g@tbl (@MAN1DIR@)
883 markup instead.
884 .
885 .TP
886 .BI .PD " \fR[\fPnnn\fR]\fP"
887 Adjust the empty space before a new paragraph or section.
888 .
889 The optional argument gives the amount of space (default unit is `v');
890 without parameter, the value is reset to its default value (1\~line in
891 nroff mode, 0.4v\~otherwise).
892 .
893 This affects the macros
894 .BR SH ,
895 .BR SS ,
896 .BR TP ,
897 .B LP
898 (resp.\&
899 .B PP
900 and
901 .BR P ),
902 .BR IP ,
903 and
904 .BR HP .
905 .
906 .IP
907 Use of this presentation-level macro is deprecated.
908 .
909 It translates poorly to HTML, under which exact control of
910 inter-paragraph spacing is not readily available.
911 .
912 Thus, information or distinctions that you use
913 .B PD
914 to express are likely to be lost.
915 .
916 .TP
917 .BI .AT " \fR[\fPsystem \fR[\fPrelease\fR]]\fP"
918 Alter the footer for use with \f[CR]AT&T\f[]
919 .IR \%man\~pages .
920 This command exists only for compatibility; don't use it.
921 .
922 See the
923 .I groff
924 info manual for more.
925 .
926 .TP
927 .BI .UC " \fR[\fPversion\fR]\fP"
928 Alter the footer for use with \f[CR]BSD\f[]
929 .IR man\~pages .
930 This command exists only for compatibility; don't use it.
931 .
932 See the
933 .I groff
934 info manual for more.
935 .
936 .TP
937 .B .PT
938 Print the header string.
939 .
940 Redefine this macro to get control of the header.
941 .
942 .TP
943 .B .BT
944 Print the footer string.
945 .
946 Redefine this macro to get control of the footer.
947 .
948 .PP
949 The following strings are defined:
950 .
951 .TP
952 .B \e*S
953 Switch back to the default font size.
954 .
955 .TP
956 .B \e*R
957 The `registered' sign.
958 .
959 .TP
960 .B \e*(Tm
961 The `trademark' sign.
962 .
963 .TP
964 .B \e*(lq
965 .TQ
966 .B \e*(rq
967 Left and right quote.
968 .
969 This is equal to `\e(lq' and `\e(rq', respectively.
970 .
971 .TP
972 .B \e*(HF
973 The typeface used to print headings and subheadings.
974 .
975 The default is `B'.
976 .
977 .PP
978 If a preprocessor like
979 .B @g@tbl
980 or
981 .B @g@eqn
982 is needed, it has become usage to make the first line of the
983 .I \%man\~page
984 look like this:
985 .
986 .PP
987 .RS
988 .BI '\e"\  word
989 .RE
990 .
991 .PP
992 Note the single space character after the double quote.
993 .I word
994 consists of letters for the needed preprocessors: `e' for
995 .BR @g@eqn ,
996 `r' for
997 .BR @g@refer ,
998 and `t' for
999 .BR @g@tbl .
1000 Modern implementations of the
1001 .B man
1002 program read this first line and automatically call the right
1003 preprocessor(s).
1004 .
1005 .
1006 .\" -----------------------------------------------------------------
1007 .
1008 .SH "PORTABILITY AND TROFF REQUESTS"
1009 .
1010 Since the
1011 .B man
1012 macros consist of groups of
1013 .I groff
1014 requests, one can, in principle, supplement the functionality of the
1015 .B man
1016 macros with individual
1017 .I groff
1018 requests where necessary.
1019 .
1020 See the
1021 .I groff
1022 info pages for a complete reference of all requests.
1023 .
1024 .PP
1025 Note, however, that using raw troff requests is likely to make your
1026 page render poorly on the (increasingly common) class of viewers that
1027 render it to HTML.
1028 .
1029 Troff requests make implicit assumptions about things like character
1030 and page sizes that may break in an HTML environment; also, many of
1031 these viewers don't interpret the full troff vocabulary, a problem
1032 which can lead to portions of your text being silently dropped.
1033 .
1034 .PP
1035 For portability to modern viewers, it is best to write your page
1036 entirely in the requests described on this page.
1037 .
1038 Further, it is best to completely avoid those we have described as
1039 `presentation-level'
1040 .RB ( HP ,
1041 .BR PD ,
1042 and
1043 .BR DT ).
1044 .
1045 .PP
1046 The macros we have described as extensions
1047 .RB ( .EX / .EE ,
1048 .BR .SY / .OP / .YS ,
1049 .BR .UR / .UE ,
1050 and
1051 .BR .MT / .ME )
1052 should be used with caution, as they may not yet be built in to
1053 some viewer that is important to your audience.
1054 .
1055 If in doubt, copy the implementation onto your page.
1056 .
1057 .
1058 .\" -----------------------------------------------------------------
1059 .
1060 .SH FILES
1061 .
1062 .TP
1063 .B man.tmac
1064 .TQ
1065 .B an.tmac
1066 These are wrapper files to call
1067 .BR andoc.tmac .
1068 .
1069 .TP
1070 .B andoc.tmac
1071 Use this file in case you don't know whether the
1072 .B man
1073 macros or the
1074 .B mdoc
1075 package should be used.
1076 Multiple man pages (in either format) can be handled.
1077 .
1078 .TP
1079 .B an-old.tmac
1080 Most
1081 .B man
1082 macros are contained in this file.
1083 .
1084 .TP
1085 .B an-ext.tmac
1086 The extension macro definitions for
1087 .BR .SY ,
1088 .BR .OP ,
1089 .BR .YS ,
1090 .BR .TQ ,
1091 .BR .EX/.EE ,
1092 .BR .UR/.UE ,
1093 and
1094 .BR .MT/.ME
1095 are contained in this file.
1096 .
1097 It is written in classic troff, and released for free re-use,
1098 and not copylefted; manual page authors concerned about
1099 portability to legacy Unix systems are encouraged to copy these
1100 definitions into their pages, and maintainers of troff
1101 or its workalikes are encouraged to re-use them.
1102 .
1103 .TP
1104 .B man.local
1105 Local changes and customizations should be put into this file.
1106 .
1107 .
1108 .\" -----------------------------------------------------------------
1109 .
1110 .SH "SEE ALSO"
1111 .
1112 .PP
1113 .BR @g@tbl (@MAN1EXT@),
1114 .BR @g@eqn (@MAN1EXT@),
1115 .BR @g@refer (@MAN1EXT@),
1116 .BR man (1),
1117 .BR man (7),
1118 .BR groff_mdoc (7)
1119 .
1120 .
1121 .\" -----------------------------------------------------------------
1122 .
1123 .SH AUTHORS
1124 .
1125 This manual page was originally written for the Debian GNU/Linux
1126 system by
1127 .MT sgk@debian.org
1128 Susan G. Kleinmann
1129 .ME .
1130 .
1131 It was corrected and updated by
1132 .MT wl@gnu.org
1133 Werner Lemberg
1134 .ME .
1135 .
1136 The extension macros were documented (and partly designed) by
1137 .MT esr@thyrsus.com
1138 Eric S. Raymond
1139 .ME ;
1140 he also wrote the portability advice.
1141 .
1142 .\" Local Variables:
1143 .\" mode: nroff
1144 .\" End: