3 .\" Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003
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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, 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.
44 .if (\n[.x]\n[.y] < 118) \
45 . ab You need GNU troff version 1.18 or higher to run this version of man!
50 .\" we must use consecutive page numbers when using postscript to generate
51 .\" html images, and we must not reset the page number at the beginning
52 .\" (the `ps4html' register is automatically added to the command line by
53 .\" the pre-html preprocessor)
70 .\" Default heading font
76 .if '\*[.T]'html' .nr an-html 1
77 .if \n[an-html] .nr C 1
80 .\" we redefine .ne to avoid page breaks if cR is set; instead, the page
81 .\" length is increased to the necessary amount (this is needed for tables)
83 .\" similarly, we redefine .bp if cR is set, adjusting the page length to
84 .\" the current position so that no empty lines are inserted
91 . if (\\n[an-ne] >= \\n[.t]) \
92 . pl +(\\n[an-ne]u - \\n[.t]u + 1v)
104 . nr an-margin \\n[IN]
107 .\" .TH title section extra1 extra2 extra3
109 . if \\n[an-html] \{\
114 . de an-init \" We have to do it like this to get multiple man pages right.
116 . ds an-section "\\$2
118 . ie (\\n[.$] > 3) .ds an-extra2 "\\$4
119 . el .ds an-extra2 \"Sun Release 4.0
120 . ie (\\n[.$] > 4) .ds an-extra3 "\\$5
121 . el .ds an-extra3 \"System Programmer's Manual
127 . nr PS 10z \" default point size
132 . \" use sizes similar to LaTeX
134 . ie (\\n[S] == 11) \{\
141 . if (\\n[S] == 12) \{\
154 .\" We must select an integer indentation value for nroff;
155 .\" see comment in an-do-tag.
162 . nr SN 3n \" the indentation of sub-sub-headings relative to sub-headings
165 . nr an-prevailing-indent \\n[IN]
168 . nr an-no-space-flag 0
177 . wh \\n[FT]u an-p-footer
179 . if (\\n[nl] > 0) \{\
180 . ie \\n[C] .bp (\\n[%] + 1)
186 .\" BSD compatibility macros: .AT and .UC
189 . ds an-extra2 "7th Edition
190 . if "\\$1"3" .ds an-extra2 "7th Edition
191 . if "\\$1"4" .ds an-extra2 "System III
193 . ie "\\$2"" .ds an-extra2 "System V
194 . el .ds an-extra2 "System V Release \\$2
199 . ds an-extra2 "3rd Berkeley Distribution
200 . if "\\$1"3" .ds an-extra2 "3rd Berkeley Distribution
201 . if "\\$1"4" .ds an-extra2 "4th Berkeley Distribution
202 . if "\\$1"5" .ds an-extra2 "4.2 Berkeley Distribution
203 . if "\\$1"6" .ds an-extra2 "4.3 Berkeley Distribution
204 . if "\\$1"7" .ds an-extra2 "4.4 Berkeley Distribution
208 . ta T .5i \" This sets tabs every .5 inches
212 . ie \\n[.$] .nr PD (v;\\$1)
213 . el .nr PD (.4v >? \n[.V])
216 .\" Redefine these to customize the header & footer
219 . tl '\\*[an-title](\\*[an-section])'\\*[an-extra3]'\\*[an-title](\\*[an-section])'
226 . if o .tl '\\*[an-extra2]'\\*[an-extra1]'\\*[an-page-string]'
227 . if e .tl '\\*[an-page-string]'\\*[an-extra1]'\\*[an-extra2]'
230 . tl '\\*[an-extra2]'\\*[an-extra1]'\\*[an-page-string]'
271 . ie \\n[an-html] \{\
278 . if (\\n[%] > \\n[X]) \{\
279 . nr an-page-letter (\\n[%] - \\n[X])
280 . ds an-page-string \\n[X]\\n[an-page-letter]
285 . ds an-page-string "\\*[an-title](\\*[an-section])
287 . ds an-page-string \\n[%]
303 .if \n[cR] .em an-end
309 . nr an-prevailing-indent \\n[IN]
313 . HTML-TAG-NS ".NH \\n[an-level]"
315 . nr an-no-space-flag 1
327 . nr an-prevailing-indent \\n[IN]
332 . nr an-no-space-flag 1
349 . if \\n[.$] \,\\$*\/
367 . if \\n[.$] .nr an-prevailing-indent (n;\\$1)
370 . ll -\\n[an-margin]u
371 . if !\\n[an-div?] .di an-div
379 . if \\n[an-break-flag] \{\
383 . if \\n[an-no-space-flag] \{\
385 . nr an-no-space-flag 0
387 . if \\n[an-div?] .an-do-tag
395 . ie (\\n[dl] + \\n[an-tag-sep] > \\n[an-prevailing-indent]) \{\
399 . in (\\n[an-margin]u + \\n[an-prevailing-indent]u)
402 . \" In nroff mode, if the indentation value is not an integer multiple
403 . \" of the character cell, it is possible that the following combination
404 . \" of .in and .ti yields a different result as the .in request in
405 . \" the .ie part above.
406 . in (\\n[an-margin]u + \\n[an-prevailing-indent]u)
407 . ti -\\n[an-prevailing-indent]u
410 . HTML-TAG-NS ".col 1"
411 \\*[an-div]\\h'|\\n[an-prevailing-indent]u'\c
412 . HTML-TAG-NS ".col 2"
422 . nr an-prevailing-indent \\n[IN]
435 . in (\\n[an-margin]u + \\n[an-prevailing-indent]u)
438 . ie (\\n[.$] - 1) .TP "\\$2"
450 . if \\n[.$] .nr an-prevailing-indent (n;\\$1)
451 . in (\\n[an-margin]u + \\n[an-prevailing-indent]u)
455 .ds an-empty \" this is referenced to avoid looping on eg .RB ( \\ )
459 . ds an-result \&\\$1
461 . while (\\n[.$] >= 2) \{\
462 . as an-result \,\f[I]\\$1\f[R]\/\\$2\\*[an-empty]
465 . if \\n[.$] .as an-result \,\f[I]\\$1\f[R]
472 . ds an-result \&\f[I]\\$1\f[R]
474 . while (\\n[.$] >= 2) \{\
475 . as an-result \/\\$1\f[I]\,\\$2\f[R]
478 . if \\n[.$] .as an-result \/\\$1
485 . ds an-result \&\f[I]\\$1
487 . while (\\n[.$] >= 2) \{\
488 . as an-result \/\f[B]\\$1\f[I]\,\\$2\\*[an-empty]
491 . if \\n[.$] .as an-result \/\f[B]\\$1
499 . ds an-result \&\f[B]\\$1
501 . while (\\n[.$] >= 2) \{\
502 . as an-result \,\f[I]\\$1\f[B]\/\\$2\\*[an-empty]
505 . if \\n[.$] .as an-result \,\f[I]\\$1
513 . while (\\n[.$] >= 2) \{\
514 . as an-result \f[R]\\$1\f[B]\\$2\\*[an-empty]
517 . if \\n[.$] .as an-result \f[R]\\$1
524 . while (\\n[.$] >= 2) \{\
525 . as an-result \f[B]\\$1\f[R]\\$2\\*[an-empty]
528 . if \\n[.$] .as an-result \f[B]\\$1
534 . nr an-saved-margin\\n[an-level] \\n[an-margin]
535 . nr an-saved-prevailing-indent\\n[an-level] \\n[an-prevailing-indent]
536 . ie \\n[.$] .nr an-margin +(n;\\$1)
537 . el .nr an-margin +\\n[an-prevailing-indent]
539 . nr an-prevailing-indent \\n[IN]
544 . ie \\n[.$] .nr an-level ((;\\$1) <? \\n[an-level])
546 . nr an-level (1 >? \\n[an-level])
547 . nr an-margin \\n[an-saved-margin\\n[an-level]]
548 . nr an-prevailing-indent \\n[an-saved-prevailing-indent\\n[an-level]]
566 .\" dummy equation delimiters
577 . tm `R' is a string (producing the registered sign), not a macro.
588 .\" these strings must work in compatibility mode also
591 .ie c\[tm] .ds Tm \(tm
606 .\" Load local modifications.
611 .\" end of an-old.tmac