3 .\" Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003, 2004
4 .\" Free Software Foundation, Inc.
5 .\" Written by James Clark (jjc@jclark.com)
7 .\" This file is part of groff.
9 .\" groff is free software; you can redistribute it and/or modify it under
10 .\" the terms of the GNU General Public License as published by the Free
11 .\" Software Foundation; either version 2, or (at your option) any later
14 .\" groff is distributed in the hope that it will be useful, but WITHOUT ANY
15 .\" WARRANTY; without even the implied warranty of MERCHANTABILITY or
16 .\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19 .\" You should have received a copy of the GNU General Public License along
20 .\" with groff; see the file COPYING. If not, write to the Free Software
21 .\" Foundation, 51 Franklin St - Fifth Floor, Boston, MA 02110-1301, USA.
23 .\" -rcR=1 => Create a single, very long page instead of multiple pages.
24 .\" Useful for online display. Default in nroff mode.
25 .\" Desactivate with -rcR=0.
26 .\" -rC1 => Number pages continuously, rather than start each at 1.
27 .\" -rD1 => Double-sided printing, ie different odd and even page footers.
28 .\" -rPnnn => Number first page nnn.
29 .\" -rSxx => Use size `xx'pt (either 10, 11, or 12) for document rather
30 .\" than the default size of 10pt.
31 .\" -rXnnn => Number pages after nnn as nnna, nnnb, nnnc, ...
33 .\" The file man.local is loaded at the end. Put local additions there.
34 .\" If you need to add things to TH, use `.am1 TH'.
37 .if !\n(.g .ab These man macros work only with groff.
46 .if (\n[.x]\n[.y] < 118) \
47 . ab You need GNU troff version 1.18 or higher to run this version of man!
52 .\" we must use consecutive page numbers when using postscript to generate
53 .\" html images, and we must not reset the page number at the beginning
54 .\" (the `ps4html' register is automatically added to the command line by
55 .\" the pre-html preprocessor)
74 .\" Default heading font
80 .if '\*[.T]'html' .nr an-html 1
81 .if \n[an-html] .nr C 1
84 .\" we redefine .ne to avoid page breaks if cR is set; instead, the page
85 .\" length is increased to the necessary amount (this is needed for tables)
87 .\" similarly, we redefine .bp if cR is set, adjusting the page length to
88 .\" the current position so that no empty lines are inserted
95 . if (\\n[an-ne] >= \\n[.t]) \
96 . pl +(\\n[an-ne]u - \\n[.t]u + 1v)
108 . nr an-margin \\n[IN]
111 .\" .TH title section extra1 extra2 extra3
113 . if \\n[an-html] \{\
119 . de an-init \" We have to do it like this to get multiple man pages right.
121 . ds an-section "\\$2
123 . ie (\\n[.$] > 3) .ds an-extra2 "\\$4
124 . el .ds an-extra2 \"Sun Release 4.0
125 . ie (\\n[.$] > 4) .ds an-extra3 "\\$5
126 . el .ds an-extra3 \"System Programmer's Manual
132 . nr PS 10z \" default point size
137 . \" use sizes similar to LaTeX
139 . ie (\\n[S] == 11) \{\
146 . if (\\n[S] == 12) \{\
159 .\" We must select an integer indentation value for nroff;
160 .\" see comment in an-do-tag.
167 . nr SN 3n \" the indentation of sub-sub-headings relative to sub-headings
170 . nr an-prevailing-indent \\n[IN]
173 . nr an-no-space-flag 0
182 . wh \\n[FT]u an-p-footer
184 . if (\\n[nl] > 0) \{\
185 . ie \\n[C] .bp (\\n[%] + 1)
191 .\" BSD compatibility macros: .AT and .UC
194 . ds an-extra2 "7th Edition
195 . if "\\$1"3" .ds an-extra2 "7th Edition
196 . if "\\$1"4" .ds an-extra2 "System III
198 . ie "\\$2"" .ds an-extra2 "System V
199 . el .ds an-extra2 "System V Release \\$2
204 . ds an-extra2 "3rd Berkeley Distribution
205 . if "\\$1"3" .ds an-extra2 "3rd Berkeley Distribution
206 . if "\\$1"4" .ds an-extra2 "4th Berkeley Distribution
207 . if "\\$1"5" .ds an-extra2 "4.2 Berkeley Distribution
208 . if "\\$1"6" .ds an-extra2 "4.3 Berkeley Distribution
209 . if "\\$1"7" .ds an-extra2 "4.4 Berkeley Distribution
213 . ta T .5i \" This sets tabs every .5 inches
217 . ie \\n[.$] .nr PD (v;\\$1)
218 . el .nr PD (.4v >? \n[.V])
221 .\" Redefine these to customize the header & footer
224 . tl '\\*[an-title](\\*[an-section])'\\*[an-extra3]'\\*[an-title](\\*[an-section])'
231 . if o .tl '\\*[an-extra2]'\\*[an-extra1]'\\*[an-page-string]'
232 . if e .tl '\\*[an-page-string]'\\*[an-extra1]'\\*[an-extra2]'
235 . tl '\\*[an-extra2]'\\*[an-extra1]'\\*[an-page-string]'
276 . ie \\n[an-html] \{\
283 . if (\\n[%] > \\n[X]) \{\
284 . nr an-page-letter (\\n[%] - \\n[X])
285 . ds an-page-string \\n[X]\\n[an-page-letter]
290 . ds an-page-string "\\*[an-title](\\*[an-section])
292 . ds an-page-string \\n[%]
308 .if \n[cR] .em an-end
314 . nr an-prevailing-indent \\n[IN]
319 . DEVTAG-NH \\n[an-level]
321 . nr an-no-space-flag 1
333 . nr an-prevailing-indent \\n[IN]
338 . nr an-no-space-flag 1
355 . if \\n[.$] \,\\$*\/
373 . if \\n[.$] .nr an-prevailing-indent (n;\\$1)
376 . ll -\\n[an-margin]u
377 . if !\\n[an-div?] .di an-div
382 . if \\n[need_eo_h]>0 .DEVTAG-EO-H
387 . if \\n[an-break-flag] \{\
391 . if \\n[an-no-space-flag] \{\
393 . nr an-no-space-flag 0
395 . if \\n[an-div?] .an-do-tag
403 . ie (\\n[dl] + \\n[an-tag-sep] > \\n[an-prevailing-indent]) \{\
407 . in (\\n[an-margin]u + \\n[an-prevailing-indent]u)
410 . \" In nroff mode, if the indentation value is not an integer multiple
411 . \" of the character cell, it is possible that the following combination
412 . \" of .in and .ti yields a different result as the .in request in
413 . \" the .ie part above.
414 . in (\\n[an-margin]u + \\n[an-prevailing-indent]u)
415 . ti -\\n[an-prevailing-indent]u
419 \\*[an-div]\\h'|\\n[an-prevailing-indent]u'\c
430 . nr an-prevailing-indent \\n[IN]
443 . in (\\n[an-margin]u + \\n[an-prevailing-indent]u)
446 . ie (\\n[.$] - 1) .TP "\\$2"
458 . if \\n[.$] .nr an-prevailing-indent (n;\\$1)
459 . in (\\n[an-margin]u + \\n[an-prevailing-indent]u)
463 .ds an-empty \" this is referenced to avoid looping on eg .RB ( \\ )
467 . ds an-result \&\f[R]\\$1
469 . while (\\n[.$] >= 2) \{\
470 . as an-result \,\f[I]\\$1\f[R]\/\\$2\\*[an-empty]
473 . if \\n[.$] .as an-result \,\f[I]\\$1
481 . ds an-result \&\f[I]\\$1\f[R]
483 . while (\\n[.$] >= 2) \{\
484 . as an-result \/\\$1\f[I]\,\\$2\f[R]
487 . if \\n[.$] .as an-result \/\\$1
495 . ds an-result \&\f[I]\\$1
497 . while (\\n[.$] >= 2) \{\
498 . as an-result \/\f[B]\\$1\f[I]\,\\$2\\*[an-empty]
501 . if \\n[.$] .as an-result \/\f[B]\\$1
509 . ds an-result \&\f[B]\\$1
511 . while (\\n[.$] >= 2) \{\
512 . as an-result \,\f[I]\\$1\f[B]\/\\$2\\*[an-empty]
515 . if \\n[.$] .as an-result \,\f[I]\\$1
523 . while (\\n[.$] >= 2) \{\
524 . as an-result \f[R]\\$1\f[B]\\$2\\*[an-empty]
527 . if \\n[.$] .as an-result \f[R]\\$1
534 . while (\\n[.$] >= 2) \{\
535 . as an-result \f[B]\\$1\f[R]\\$2\\*[an-empty]
538 . if \\n[.$] .as an-result \f[B]\\$1
544 . nr an-saved-margin\\n[an-level] \\n[an-margin]
545 . nr an-saved-prevailing-indent\\n[an-level] \\n[an-prevailing-indent]
546 . ie \\n[.$] .nr an-margin +(n;\\$1)
547 . el .nr an-margin +\\n[an-prevailing-indent]
549 . nr an-prevailing-indent \\n[IN]
554 . ie \\n[.$] .nr an-level ((;\\$1) <? \\n[an-level])
556 . nr an-level (1 >? \\n[an-level])
557 . nr an-margin \\n[an-saved-margin\\n[an-level]]
558 . nr an-prevailing-indent \\n[an-saved-prevailing-indent\\n[an-level]]
576 .\" dummy equation delimiters
587 . tm `R' is a string (producing the registered sign), not a macro.
598 .\" these strings must work in compatibility mode also
601 .ie c\[tm] .ds Tm \(tm
616 .\" Load local modifications.
621 .\" end of an-old.tmac