.\" Copyright (c) 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. [Deleted. See .\" ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change] .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)doc-common 8.1 (Berkeley) 06/08/93 .\" .nr %A 1 .nr %B 1 .nr %D 1 .nr %I 1 .nr %J 1 .nr %N 1 .nr %O 1 .nr %P 1 .nr %Q 1 .nr %R 1 .nr %T 1 .nr %U 1 .nr %V 1 .nr Ac 3 .nr Ad 12n .nr An 12n .nr Ao 12n .nr Ap 2 .nr Aq 12n .nr Ar 12n .nr At 1 .nr Bc 3 .nr Bf 8n .nr Bk 8n .nr Bl 1 .nr Bo 12n .nr Bq 12n .nr Brc 3 .nr Bro 12n .nr Brq 12n .nr Bsx 1 .nr Bt 8n .nr Bx 1 .nr Cd 12n .nr Cm 10n .nr D1 8n .nr Dc 3 .nr Dl 8n .nr Dt 8n .nr Do 12n .nr Dq 12n .nr Ds 6n .nr Dv 12n .nr Dx 1 .nr Ec 3 .nr Ef 8n .nr Ek 8n .nr El 1 .nr Em 10n .nr En 12n .nr Eo 12n .nr Eq 12n .nr Er 17n .nr Es 12n .nr Ev 15n .nr Ex 1 .nr Fa 12n .nr Fc 3 .nr Fd 12n .nr Fl 10n .nr Fn 16n .nr Fo 16n .nr Fr 12n .nr Ft 8n .nr Fx 1 .nr Ic 10n .nr In 12n .nr It 8n .nr Lb 11n .nr Li 16n .nr Lk 6n .nr Lp 8n .nr Me 6n .nr Ms 6n .nr Mt 6n .nr Nd 8n .nr Nm 10n .nr No 12n .nr Ns 2 .nr Nx 1 .nr Oc 3 .nr Oo 10n .nr Op 14n .nr Os 6n .nr Ox 1 .nr Pa 32n .nr Pc 3 .nr Pf 12n .nr Po 12n .nr Pp 8n .nr Pq 12n .nr Qc 3 .nr Ql 16n .nr Qo 12n .nr Qq 12n .nr Rv 1 .nr Sc 3 .nr Sh 8n .nr Sm 8n .nr So 12n .nr Sq 12n .nr Ss 8n .nr St 8n .nr Sx 16n .nr Sy 6n .nr Ta 2 .nr Tn 10n .nr Ud 8n .nr Ux 1 .nr Va 12n .nr Vt 8n .nr Xc 3 .nr Xo 1 .nr Xr 10n .ds after-Ao .ds after-Bo .ds after-Bro .ds after-Do .ds after-Eo .ds after-Fo .ds after-Ns .ds after-Oo .ds after-Po .ds after-Qo .ds after-So .ds after-Xo .nr display-indent 6n .ds soft-space " .ds hard-space \~ .ds tab \t .eo .nr punct. 3 .nr punct, 3 .nr punct: 3 .nr punct; 3 .nr punct( 4 .nr punct) 3 .nr punct[ 4 .nr punct] 3 .nr punct? 3 .nr punct! 3 .ds document-title UNTITLED .ds volume LOCAL .ds section Null .ds volume-operating-system BSD .nr volume-operating-system-ateol 0 .ds volume-ds-1 General Commands Manual .ds volume-ds-2 System Calls Manual .ds volume-ds-3 Library Functions Manual .ds volume-ds-4 Kernel Interfaces Manual .ds volume-ds-5 File Formats Manual .ds volume-ds-6 Games Manual .ds volume-ds-7 Miscellaneous Information Manual .ds volume-ds-8 System Manager's Manual .ds volume-ds-9 Kernel Developer's Manual .ds volume-ds-USD User's Supplementary Documents .ds volume-ds-PS1 Programmer's Supplementary Documents .ds volume-ds-AMD Ancestral Manual Documents .ds volume-ds-SMM System Manager's Manual .ds volume-ds-URM User's Reference Manual .ds volume-ds-PRM Programmer's Manual .ds volume-ds-KM Kernel Manual .ds volume-ds-IND Manual Master Index .ds volume-ds-LOCAL Local Manual .ds volume-ds-CON Contributed Software Manual .als volume-ds-MMI volume-ds-IND .als volume-ds-LOC volume-ds-LOCAL .ds volume-as-alpha alpha .als volume-as-Alpha volume-as-alpha .ds volume-as-acorn26 acorn26 .ds volume-as-acorn32 acorn32 .ds volume-as-algor algor .ds volume-as-amd64 amd64 .ds volume-as-amiga amiga .ds volume-as-arc arc .ds volume-as-arm26 arm26 .ds volume-as-arm32 arm32 .ds volume-as-atari atari .ds volume-as-bebox bebox .ds volume-as-cats cats .ds volume-as-cesfic cesfic .ds volume-as-cobalt cobalt .ds volume-as-dreamcast dreamcast .ds volume-as-evbarm evbarm .ds volume-as-evbmips evbmips .ds volume-as-evbppc evbppc .ds volume-as-evbsh3 evbsh3 .ds volume-as-hp300 hp300 .ds volume-as-hp700 hp700 .ds volume-as-hpcarm hpcarm .ds volume-as-hpcmips hpcmips .ds volume-as-hpcsh hpcsh .ds volume-as-i386 i386 .ds volume-as-luna68k luna68k .ds volume-as-m68k m68k .ds volume-as-mac68k mac68k .ds volume-as-macppc macppc .ds volume-as-mips mips .ds volume-as-mipsco mipsco .ds volume-as-mmeye mmeye .ds volume-as-mvme68k mvme68k .ds volume-as-mvmeppc mvmeppc .ds volume-as-netwinder netwinder .ds volume-as-news68k news68k .ds volume-as-newsmips newsmips .ds volume-as-next68k next68k .ds volume-as-ofppc ofppc .ds volume-as-pc532 pc532 .ds volume-as-playstation2 playstation2 .ds volume-as-pmax pmax .ds volume-as-pmppc pmppc .ds volume-as-powerpc powerpc .ds volume-as-prep prep .ds volume-as-sandpoint sandpoint .ds volume-as-sbmips sbmips .ds volume-as-sgimips sgimips .ds volume-as-sh3 sh3 .ds volume-as-shark shark .ds volume-as-sparc sparc .ds volume-as-sparc64 sparc64 .ds volume-as-sun2 sun2 .ds volume-as-sun3 sun3 .ds volume-as-tahoe tahoe .ds volume-as-vax vax .ds volume-as-x68k x68k .ds volume-as-x86_64 x86_64 .de Dt .ds document-title UNTITLED .ds volume LOCAL .ds section Null .ds command-name .if !"\$1"" \ .ds document-title "\$1 .if !"\$2"" \{\ .ds section \$2 .ie \B\$2 \{\ .if ((\$2 >= 1) & (\$2 <= 9)) \{\ .ie \n[volume-operating-system-ateol] \{\ .ds volume "\*[volume-ds-\$2] \*[volume-operating-system] .if \A\$3 \{\ .if d volume-as-\$3 \ .as volume "/\*[volume-as-\$3] .\}\} .el \{\ .ds volume "\*[volume-operating-system] .if \A\$3 \{\ .if d volume-as-\$3 \ .as volume "/\*[volume-as-\$3] .\} .as volume " \*[volume-ds-\$2] .\}\}\} .el \{\ .ie "\$2"unass" \ .ds volume DRAFT .el \{ .ie "\$2"draft" \ .ds volume DRAFT .el .if "\$2"paper" \ .ds volume UNTITLED .\}\} .if \A\$3 \{\ .if d volume-ds-\$3 \ .ds volume "\*[volume-ds-\$3] .\}\}\} .if !"\$3"" \ .if "\*[volume]"LOCAL" \ .ds volume \$3 .if !\n[cR] \ .if \n[nl] \{\ . setup-header .bp .\} .. .ds default-operating-system BSD .ds operating-system .ds operating-system-ATT-7 7th\~Edition .als operating-system-ATT-7th operating-system-ATT-7 .ds operating-system-ATT-3 System\~III .als operating-system-ATT-III operating-system-ATT-3 .ds operating-system-ATT-V System\~V .ds operating-system-ATT-V.2 System\~V Release\~2 .ds operating-system-ATT-V.3 System\~V Release\~3 .ds operating-system-ATT-V.4 System\~V Release\~4 .ds operating-system-BSD-3 3rd\~Berkeley Distribution .ds operating-system-BSD-4 4th\~Berkeley Distribution .ds operating-system-BSD-4.1 4.1\~Berkeley Distribution .ds operating-system-BSD-4.2 4.2\~Berkeley Distribution .ds operating-system-BSD-4.3 4.3\~Berkeley Distribution .ds operating-system-BSD-4.3T 4.3-Tahoe Berkeley Distribution .ds operating-system-BSD-4.3R 4.3-Reno Berkeley Distribution .als operating-system-BSD-4.3t operating-system-BSD-4.3T .als operating-system-BSD-4.3r operating-system-BSD-4.3R .ds operating-system-BSD-4.4 4.4BSD .ds operating-system-NetBSD-0.8 0.8 .ds operating-system-NetBSD-0.8a 0.8A .ds operating-system-NetBSD-0.9 0.9 .ds operating-system-NetBSD-0.9a 0.9A .ds operating-system-NetBSD-1.0 1.0 .ds operating-system-NetBSD-1.0a 1.0A .ds operating-system-NetBSD-1.1 1.1 .ds operating-system-NetBSD-1.2 1.2 .ds operating-system-NetBSD-1.2a 1.2A .ds operating-system-NetBSD-1.2b 1.2B .ds operating-system-NetBSD-1.2c 1.2C .ds operating-system-NetBSD-1.2d 1.2D .ds operating-system-NetBSD-1.2e 1.2E .ds operating-system-NetBSD-1.3 1.3 .ds operating-system-NetBSD-1.3a 1.3A .ds operating-system-NetBSD-1.4 1.4 .ds operating-system-NetBSD-1.4.1 1.4.1 .ds operating-system-NetBSD-1.4.2 1.4.2 .ds operating-system-NetBSD-1.4.3 1.4.3 .ds operating-system-NetBSD-1.5 1.5 .ds operating-system-NetBSD-1.5.1 1.5.1 .ds operating-system-NetBSD-1.5.2 1.5.2 .ds operating-system-NetBSD-1.5.3 1.5.3 .ds operating-system-NetBSD-1.6 1.6 .ds operating-system-NetBSD-1.6.1 1.6.1 .ds operating-system-NetBSD-1.6.2 1.6.2 .ds operating-system-NetBSD-1.6.3 1.6.3 .ds operating-system-NetBSD-2.0 2.0 .ds operating-system-NetBSD-2.0.1 2.0.1 .ds operating-system-NetBSD-2.0.2 2.0.2 .ds operating-system-NetBSD-2.0.3 2.0.3 .ds operating-system-NetBSD-2.1 2.1 .ds operating-system-NetBSD-3.0 3.0 .ds operating-system-NetBSD-3.0.1 3.0.1 .ds operating-system-NetBSD-3.0.2 3.0.2 .ds operating-system-NetBSD-3.0.3 3.0.3 .ds operating-system-NetBSD-3.1 3.1 .ds operating-system-NetBSD-3.1.1 3.1.1 .ds operating-system-NetBSD-4.0 4.0 .ds operating-system-NetBSD-4.0.1 4.0.1 .ds operating-system-NetBSD-5.0 5.0 .ds operating-system-NetBSD-5.0.1 5.0.1 .ds operating-system-NetBSD-5.0.2 5.0.2 .ds operating-system-NetBSD-5.1 5.1 .ds operating-system-NetBSD-6.0 6.0 .ds operating-system-OpenBSD-2.0 2.0 .ds operating-system-OpenBSD-2.1 2.1 .ds operating-system-OpenBSD-2.2 2.2 .ds operating-system-OpenBSD-2.3 2.3 .ds operating-system-OpenBSD-2.4 2.4 .ds operating-system-OpenBSD-2.5 2.5 .ds operating-system-OpenBSD-2.6 2.6 .ds operating-system-OpenBSD-2.7 2.7 .ds operating-system-OpenBSD-2.8 2.8 .ds operating-system-OpenBSD-2.9 2.9 .ds operating-system-OpenBSD-3.0 3.0 .ds operating-system-OpenBSD-3.1 3.1 .ds operating-system-OpenBSD-3.2 3.2 .ds operating-system-OpenBSD-3.3 3.3 .ds operating-system-OpenBSD-3.4 3.4 .ds operating-system-OpenBSD-3.5 3.5 .ds operating-system-OpenBSD-3.6 3.6 .ds operating-system-OpenBSD-3.7 3.7 .ds operating-system-OpenBSD-3.8 3.8 .ds operating-system-OpenBSD-3.9 3.9 .ds operating-system-OpenBSD-4.0 4.0 .ds operating-system-OpenBSD-4.1 4.1 .ds operating-system-OpenBSD-4.2 4.2 .ds operating-system-OpenBSD-4.3 4.3 .ds operating-system-OpenBSD-4.4 4.4 .ds operating-system-OpenBSD-4.5 4.5 .ds operating-system-OpenBSD-4.6 4.6 .ds operating-system-OpenBSD-4.7 4.7 .ds operating-system-OpenBSD-4.8 4.8 .ds operating-system-OpenBSD-4.9 4.9 .ds operating-system-OpenBSD-5.0 5.0 .ds operating-system-FreeBSD-1.0 1.0 .ds operating-system-FreeBSD-1.1 1.1 .ds operating-system-FreeBSD-1.1.5 1.1.5 .ds operating-system-FreeBSD-1.1.5.1 1.1.5.1 .ds operating-system-FreeBSD-2.0 2.0 .ds operating-system-FreeBSD-2.0.5 2.0.5 .ds operating-system-FreeBSD-2.1 2.1 .ds operating-system-FreeBSD-2.1.5 2.1.5 .ds operating-system-FreeBSD-2.1.6 2.1.6 .ds operating-system-FreeBSD-2.1.7 2.1.7 .ds operating-system-FreeBSD-2.2 2.2 .ds operating-system-FreeBSD-2.2.1 2.2.1 .ds operating-system-FreeBSD-2.2.2 2.2.2 .ds operating-system-FreeBSD-2.2.5 2.2.5 .ds operating-system-FreeBSD-2.2.6 2.2.6 .ds operating-system-FreeBSD-2.2.7 2.2.7 .ds operating-system-FreeBSD-2.2.8 2.2.8 .ds operating-system-FreeBSD-3.0 3.0 .ds operating-system-FreeBSD-3.1 3.1 .ds operating-system-FreeBSD-3.2 3.2 .ds operating-system-FreeBSD-3.3 3.3 .ds operating-system-FreeBSD-3.4 3.4 .ds operating-system-FreeBSD-3.5 3.5 .ds operating-system-FreeBSD-4.0 4.0 .ds operating-system-FreeBSD-4.1 4.1 .ds operating-system-FreeBSD-4.1.1 4.1.1 .ds operating-system-FreeBSD-4.2 4.2 .ds operating-system-FreeBSD-4.3 4.3 .ds operating-system-FreeBSD-4.4 4.4 .ds operating-system-FreeBSD-4.5 4.5 .ds operating-system-FreeBSD-4.6 4.6 .ds operating-system-FreeBSD-4.6.2 4.6.2 .ds operating-system-FreeBSD-4.7 4.7 .ds operating-system-FreeBSD-4.8 4.8 .ds operating-system-FreeBSD-4.9 4.9 .ds operating-system-FreeBSD-4.10 4.10 .ds operating-system-FreeBSD-4.11 4.11 .ds operating-system-FreeBSD-5.0 5.0 .ds operating-system-FreeBSD-5.1 5.1 .ds operating-system-FreeBSD-5.2 5.2 .ds operating-system-FreeBSD-5.2.1 5.2.1 .ds operating-system-FreeBSD-5.3 5.3 .ds operating-system-FreeBSD-5.4 5.4 .ds operating-system-FreeBSD-5.5 5.5 .ds operating-system-FreeBSD-6.0 6.0 .ds operating-system-FreeBSD-6.1 6.1 .ds operating-system-FreeBSD-6.2 6.2 .ds operating-system-FreeBSD-6.3 6.3 .ds operating-system-FreeBSD-6.4 6.4 .ds operating-system-FreeBSD-7.0 7.0 .ds operating-system-FreeBSD-7.1 7.1 .ds operating-system-FreeBSD-7.2 7.2 .ds operating-system-FreeBSD-7.3 7.3 .ds operating-system-FreeBSD-8.0 8.0 .ds operating-system-FreeBSD-8.1 8.1 .ds operating-system-FreeBSD-8.2 8.2 .ds operating-system-FreeBSD-9.0 9.0 .ds operating-system-Darwin-8.0.0 8.0.0 .ds operating-system-Darwin-8.1.0 8.1.0 .ds operating-system-Darwin-8.2.0 8.2.0 .ds operating-system-Darwin-8.3.0 8.3.0 .ds operating-system-Darwin-8.4.0 8.4.0 .ds operating-system-Darwin-8.5.0 8.5.0 .ds operating-system-Darwin-8.6.0 8.6.0 .ds operating-system-Darwin-8.7.0 8.7.0 .ds operating-system-Darwin-8.8.0 8.8.0 .ds operating-system-Darwin-8.9.0 8.9.0 .ds operating-system-Darwin-8.10.0 8.10.0 .ds operating-system-Darwin-8.11.0 8.11.0 .ds operating-system-Darwin-9.0.0 9.0.0 .ds operating-system-Darwin-9.1.0 9.1.0 .ds operating-system-Darwin-9.2.0 9.2.0 .ds operating-system-Darwin-9.3.0 9.3.0 .ds operating-system-Darwin-9.4.0 9.4.0 .ds operating-system-Darwin-9.5.0 9.5.0 .ds operating-system-Darwin-9.6.0 9.6.0 .ds operating-system-DragonFly-1.0 1.0 .ds operating-system-DragonFly-1.1 1.1 .ds operating-system-DragonFly-1.2 1.2 .ds operating-system-DragonFly-1.3 1.3 .ds operating-system-DragonFly-1.4 1.4 .ds operating-system-DragonFly-1.5 1.5 .ds operating-system-DragonFly-1.6 1.6 .ds operating-system-DragonFly-1.8 1.8 .ds operating-system-DragonFly-1.8.1 1.8.1 .ds operating-system-DragonFly-1.10 1.10 .ds operating-system-DragonFly-1.12 1.12 .ds operating-system-DragonFly-1.12.2 1.12.2 .ds operating-system-DragonFly-2.0 2.0 .ds operating-system-DragonFly-2.2 2.2 .ds operating-system-DragonFly-2.4 2.4 .ds operating-system-DragonFly-2.6 2.6 .ds operating-system-DragonFly-2.8 2.8 .ds operating-system-DragonFly-2.9 2.9 .ds operating-system-DragonFly-2.9.1 2.9.1 .ds operating-system-DragonFly-2.10 2.10 .ds operating-system-DragonFly-2.10.1 2.10.1 .ds operating-system-DragonFly-2.11 2.11 .de Os .ds command-name .ie "\$1"" \ .ds operating-system "\*[default-operating-system] .el \{ .ie "\$1"ATT" \{\ .ds operating-system AT&T .if \A\$2 \{\ .ie d operating-system-ATT-\$2 \ .as operating-system " \*[operating-system-ATT-\$2] .el \ .as operating-system " UNIX .\}\} .el \{ .ie "\$1"BSD" \{\ .if \A\$2 \{\ .ie d operating-system-BSD-\$2 \ .ds operating-system "\*[operating-system-BSD-\$2] .el \ .tm mdoc warning: .Os: Unknown BSD version `\$2' (#\n[.c]) .\}\} .el \{ .ie "\$1"FreeBSD" \{\ .ds operating-system FreeBSD .if \A\$2 \{\ .ie d operating-system-FreeBSD-\$2 \ .as operating-system \~\*[operating-system-FreeBSD-\$2] .el \ .tm mdoc warning: .Os: Unknown FreeBSD version `\$2' (#\n[.c]) .\}\} .el \{ .ie "\$1"DragonFly" \{\ .ds operating-system DragonFly .if \A\$2 \{\ .ie d operating-system-DragonFly-\$2 \ .as operating-system \~\*[operating-system-DragonFly-\$2] .el \ .tm mdoc warning: .Os: Unknown DragonFly version `\$2' (#\n[.c]) .\}\} .el \{ .ie "\$1"NetBSD" \{\ .ds operating-system NetBSD .if \A\$2 \{\ .ie d operating-system-NetBSD-\$2 \ .as operating-system \~\*[operating-system-NetBSD-\$2] .el \ .tm mdoc warning: .Os: Unknown NetBSD version `\$2' (#\n[.c]) .\}\} .el \{ .ie "\$1"OpenBSD" \{\ .ds operating-system OpenBSD .if \A\$2 \{\ .ie d operating-system-OpenBSD-\$2 \ .as operating-system \~\*[operating-system-OpenBSD-\$2] .el \ .tm mdoc warning: .Os: Unknown OpenBSD version `\$2' (#\n[.c]) .\}\} .el \{ .ie "\$1"Darwin" \{\ .ds operating-system Darwin .if \A\$2 \{\ .ie d operating-system-Darwin-\$2 \ .as operating-system \~\*[operating-system-Darwin-\$2] .el \ .tm mdoc warning: .Os: Unknown Darwin version `\$2' (#\n[.c]) .\}\} .el \{\ .ds operating-system \$1 .if !"\$2"" \ .as operating-system " \$2 .\}\}\}\}\}\}\}\} .. .ds date-string .ds date-1 January .ds date-2 February .ds date-3 March .ds date-4 April .ds date-5 May .ds date-6 June .ds date-7 July .ds date-8 August .ds date-9 September .ds date-10 October .ds date-11 November .ds date-12 December .de Dd .ds command-name .ie \n[.$] \{\ .ie (\n[.$] == 3) \ .ds date-string \$1\~\$2 \$3 .el \{\ .ds date-string "\*[date-\n[mo]] .as date-string \~\n[dy], \n[year] .\} .\} .el \ .ds date-string Epoch .. .nr hyphen-flags 12 .de header .ev env-dh .setup-page-layout .if !\n[cR] \ .sp \n[header-space]u .nr reg-dh \w'\*[caption-font]\*[header-string]\f[]' .nr reg-dh1 \w'\*[caption-font2]\*[volume]\f[]' .if (\n[reg-dh] + \n[reg-dh1] + \n[reg-dh] >= \n[.lt]) \{\ .while (\n[reg-dh] + \n[reg-dh1] + \n[reg-dh] >= \n[.lt]) \{\ .substring header-string 0 -2 .nr reg-dh \w'\*[caption-font]\*[header-string]\|.\|.\|.\f[]' .\} .as header-string "\|.\|.\|. .\} .tl \*[caption-font]\*[header-string]\f[]\*[caption-font2]\*[volume]\f[]\*[caption-font]\*[header-string]\f[] .ie !\n[cR] \ .sp \n[header-space]u .el \ .sp 1v .ev .ns .. .de footer .ie \n[cR] \ .br .el \{\ .ev caption-enviroment .setup-page-layout .sp \n[footer-space]u .ie \n[D] \{\ .ie o \ .tl %\*[caption-font2]\*[date-string]\f[]\*[caption-font]\*[operating-system]\f[] .el \ .tl \*[caption-font]\*[operating-system]\f[]\*[caption-font2]\*[date-string]\f[]% .\} .el \ .tl \*[caption-font]\*[operating-system]\f[]\*[caption-font2]\*[date-string]\f[]% .bp .ev .\} .. .de check-depth .if \n[list-depth] \{\ .tm mdoc warning: A .Bl directive has no matching .El (#\n[.c]) .nr list-depth 0 .\} .if \n[display-depth] \{\ .tm mdoc warning: A .Bd directive has no matching .Ed (#\n[.c]) .nr display-depth 0 .\} .if \n[fontmode-depth] \{\ .tm mdoc warning: A .Bf directive has no matching .Ef (#\n[.c]) .nr fontmode-depth 0 .\} .. .de end-macro .if \n[cR] \ .pl +3v .fl .check-depth .if \n[cR] \{\ .sp .tl \*[caption-font]\*[operating-system]\f[]\*[caption-font2]\*[date-string]\f[]\*[caption-font]\*[operating-system]\f[] .pl \n[nl]u .\} .. .de paragraph .sp \n[paragraph-space]u .if !\n[cR] \ .ne 2 .ns .. .als Pp paragraph .als Lp paragraph .de LP .tm Not a \-mdoc command: .LP (#\n[.c]) .. .de PP .tm Not a \-mdoc command: .PP (#\n[.c]) .. .de pp .tm Not a \-mdoc command: .pp (#\n[.c]) .. .de SH .tm Not a \-mdoc command: .SH (#\n[.c]) .. .de Nd .nop \[em] \$* .. .nr in-synopsis-section 0 .nr in-library-section 0 .nr in-see-also-section 0 .nr in-files-section 0 .nr in-authors-section 0 .de first-parameter .ds str-dfp "\$1 .. .ds section-name NAME .ds section-synopsis SYNOPSIS .ds section-library LIBRARY .ds section-description DESCRIPTION .ds section-see-also SEE .ds section-files FILES .ds section-authors AUTHORS .de Sh .ie \n[arg-limit] \{\ .ie "\*[macro-name]"Sh" \{\ .nr arg-ptr +1 .ie (\n[arg-limit] >= \n[arg-ptr]) \{\ .nr curr-font \n[.f] .nr curr-size \n[.ps] .nop \*[Sh-font]\c .print-recursive .\} .el \{\ .tm Usage: .Sh section_name ... (#\n[.c]) .reset-args .\}\} .el \{\ .tm Usage: .Sh not callable by other macros (#\n[.c]) .reset-args .\}\} .el \{\ .if !\n[.$] \{\ .tm Usage: .Sh section_name ... (#\n[.c]) .return .\} .ds macro-name Sh .parse-args \$@ .if t \ .ad .first-parameter \$* .ie "\*[str-dfp]"\*[section-name]" \{\ .setup-header .in 0 .\} .el \{\ .nr in-synopsis-section 0 .nr in-library-section 0 .nr in-see-also-section 0 .nr in-files-section 0 .nr in-authors-section 0 .ie "\*[str-dfp]"\*[section-synopsis]" \{\ .if t \ .na .nr in-synopsis-section 1 .nr indent-synopsis 0 .nr indent-synopsis-active 0 .\} .el \{ .ie "\*[str-dfp]"\*[section-library]" \{\ .nr in-library-section 1 .\} .el \{ .ie "\*[str-dfp]"\*[section-description]" \{\ .nr is-func 0 .nr func-count 0 .nr func-args-processed 0 .nr num-func-args 0 .\} .el \{ .ie "\*[str-dfp]"\*[section-see-also]" \{\ .if t \ .na .nr in-see-also-section 1 .\} .el \{ .ie "\*[str-dfp]"\*[section-files]" \ .nr in-files-section 1 .el .if "\*[str-dfp]"\*[section-authors]" \ .nr in-authors-section 1 .\}\}\}\} .in 0 .nr have-author 0 .\} .setup-page-layout .sp .ns .ta T .5i .if !\n[cR] \ .ne 3 .fi .if t \{\ .nr reg-Sh \n[.ss] .nr reg-Sh1 \n[.sss] .ss (\n[.ss] * 5 / 3) (\n[.sss] * 5 / 3) .\} .nr arg-ptr +1 .nr curr-font \n[.f] .nr curr-size \n[.ps] .nop \*[Sh-font]\c .print-recursive .if t \ .ss \n[reg-Sh] \n[reg-Sh1] .in +\n[subheader-indent]u .ns .check-depth .\} .. .de Ss .ie \n[arg-limit] \{\ .ie "\*[macro-name]"Ss" \{\ .nr arg-ptr +1 .ie (\n[arg-limit] >= \n[arg-ptr]) \{\ .nr curr-font \n[.f] .nr curr-size \n[.ps] .nop \*[Sh-font]\c .print-recursive .\} .el \{\ .tm Usage: .Ss subsection_name ... (#\n[.c]) .reset-args .\}\} .el \{\ .tm Usage: .Ss not callable by other macros (#\n[.c]) .reset-args .\}\} .el \{\ .if !\n[.$] \{\ .tm Usage: .Ss subsection_name ... (#\n[.c]) .return .\} .ds macro-name Ss .parse-args \$@ .sp .if !\n[cR] \ .ne 3 .ti -.25i .nr reg-Ss \n[.ss] .nr reg-Ss1 \n[.sss] .ss (\n[.ss] * 5 / 4) (\n[.sss] * 5 / 4) .nr arg-ptr +1 .nr curr-font \n[.f] .nr curr-size \n[.ps] .nop \*[Sh-font]\c .print-recursive .ss \n[reg-Ss] \n[reg-Ss1] .ta T .5i .if !\n[cR] \ .ne 2 .br .ns .check-depth .\} .. .de Rd .tm MDOC GLOBAL REGISTER DUMP .tm macro-name == `\*[macro-name]' .tm arg-limit == \n[arg-limit] .tm num-args == \n[num-args] .tm arg-ptr == \n[arg-ptr] .nr reg-Rd 1 .while (\n[reg-Rd] <= \n[arg-limit]) \{\ .tm arg\n[reg-Rd] == `\*[arg\n[reg-Rd]]' .tm type\n[reg-Rd] == \n[type\n[reg-Rd]] .tm space\n[reg-Rd] == `\*[space\n[reg-Rd]]' .nr reg-Rd +1 .\} .tm curr-font == \n[curr-font] .tm curr-size == \n[curr-size] .tm indent-synopsis == \n[indent-synopsis] .tm indent-synopsis-active == \n[indent-synopsis-active] .tm have-decl == \n[have-decl] .tm have-var == \n[have-var] .tm command-name == `\*[command-name]' .tm quote-left == `\*[quote-left]' .tm quote-right == `\*[quote-right]' .tm nesting-level == \n[nesting-level] .tm in-list == \n[in-list] .tm space == `\*[space]' .tm saved-space == `\*[saved-space]' .tm space-mode == \n[space-mode] .tm have-space == \n[have-space] .tm have-slot == \n[have-slot] .tm keep-type == \n[keep-type] .tm display-depth == \n[display-depth] .tm is-compact == \n[is-compact] .nr reg-Rd 0 .while (\n[reg-Rd] <= \n[display-depth]) \{\ .tm display-type-stack\n[reg-Rd] == `\*[display-type-stack\n[reg-Rd]]' .tm display-indent-stack\n[reg-Rd] == \n[display-indent-stack\n[reg-Rd]] .tm display-ad-stack\n[reg-Rd] == \n[display-ad-stack\n[reg-Rd]] .tm display-fi-stack\n[reg-Rd] == \n[display-fi-stack\n[reg-Rd]] .tm display-ft-stack\n[reg-Rd] == \n[display-ft-stack\n[reg-Rd]] .tm display-ps-stack\n[reg-Rd] == \n[display-ps-stack\n[reg-Rd]] .nr reg-Rd +1 .\} .tm fontmode-depth == \n[fontmode-depth] .nr reg-Rd 1 .while (\n[reg-Rd] <= \n[fontmode-depth]) \{\ .tm fontmode-font-stack\n[reg-Rd] == `\n[fontmode-font-stack\n[reg-Rd]]' .tm fontmode-size-stack\n[reg-Rd] == `\n[fontmode-size-stack\n[reg-Rd]]' .nr reg-Rd +1 .\} .tm list-depth == \n[list-depth] .nr reg-Rd 1 .while (\n[reg-Rd] <= \n[list-depth]) \{\ .tm list-type-stack\n[reg-Rd] == `\*[list-type-stack\n[reg-Rd]]' .tm list-have-indent-stack\n[reg-Rd] == \n[list-have-indent-stack\n[reg-Rd]] .tm list-indent-stack\n[reg-Rd] == \n[list-indent-stack\n[reg-Rd]] .tm compact-list-stack\n[reg-Rd] == \n[compact-list-stack\n[reg-Rd]] .tm tag-prefix-stack\n[reg-Rd] == `\*[tag-prefix-stack\n[reg-Rd]]' .tm tag-width-stack\n[reg-Rd] == `\*[tag-width-stack\n[reg-Rd]]' .tm list-offset-stack\n[reg-Rd] == \n[list-offset-stack\n[reg-Rd]] .tm enum-list-count-stack\n[reg-Rd] == \n[enum-list-count-stack\n[reg-Rd]] .nr reg-Rd +1 .\} .tm saved-Pa-font == `\*[saved-Pa-font]' .tm curr-type == \n[curr-type] .tm curr-arg == `\*[curr-arg]' .tm diag-list-input-line-count == \n[diag-list-input-line-count] .tm num-columns == \n[num-columns] .tm column-indent-width == \n[column-indent-width] .tm is-func == \n[is-func] .tm have-old-func == \n[have-old-func] .tm func-arg-count == \n[func-arg-count] .tm func-arg == `\*[func-arg]' .tm num-func-args == \n[num-func-args] .tm func-args-processed == \n[func-args-processed] .tm have-func == \n[have-func] .tm is-reference == \n[is-reference] .tm reference-count == \n[reference-count] .tm author-count == \n[author-count] .nr reg-Rd 0 .while (\n[reg-Rd] <= \n[author-count]) \{\ .tm author-name\n[reg-Rd] == `\*[author-name\n[reg-Rd]]' .nr reg-Rd +1 .\} .tm book-count == \n[book-count] .tm book-name == `\*[book-name]' .tm date-count == \n[date-count] .tm date == `\*[date]' .tm publisher-count == \n[publisher-count] .tm publisher-name == `\*[publisher-name]' .tm journal-count == \n[journal-count] .tm journal-name == `\*[journal-name]' .tm issue-count == \n[issue-count] .tm issue-name == `\*[issue-name]' .tm optional-count == \n[optional-count] .tm optional-string == `\*[optional-string]' .tm page-number-count == \n[page-number-count] .tm page-number-string == `\*[page-number-string]' .tm corporate-count == \n[corporate-count] .tm corporate-name == `\*[corporate-name]' .tm report-count == \n[report-count] .tm report-name == `\*[report-name]' .tm reference-title-count == \n[reference-title-count] .tm reference-title-name == `\*[reference-title-name]' .tm reference-title-name-for-book == `\*[reference-title-name-for-book]' .tm url-count == \n[url-count] .tm url-name == `\*[url-name]' .tm volume-count == \n[volume-count] .tm volume-name == `\*[volume-name]' .tm have-author == \n[have-author] .tm document-title == `\*[document-title]' .tm volume == `\*[volume]' .tm section == `\*[section]' .tm operating-system == `\*[operating-system]' .tm date-string == `\*[date-string]' .tm header-space == \n[header-space] .tm footer-space == \n[footer-space] .tm display-vertical == \n[display-vertical] .tm header-string == `\*[header-string]' .tm in-synopsis-section == \n[in-synopsis-section] .tm in-library-section == \n[in-library-section] .tm in-see-also-section == \n[in-see-also-section] .tm in-files-section == \n[in-files-section] .tm in-authors-section == \n[in-authors-section] .tm END OF GLOBAL REGISTER DUMP .. .ec