internal update
[s-roff.git] / tmac / doc-nroff.new
blob558f2e11299e5616d187b1e73e5defa472ecd37e
1 .\" Copyright (c) 1991 The Regents of the University of California.
2 .\" All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. All advertising materials mentioning features or use of this software
13 .\"    must display the following acknowledgement:
14 .\"      This product includes software developed by the University of
15 .\"      California, Berkeley and its contributors.
16 .\" 4. Neither the name of the University nor the names of its contributors
17 .\"    may be used to endorse or promote products derived from this software
18 .\"    without specific prior written permission.
19 .\"
20 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 .\" SUCH DAMAGE.
31 .\"
32 .\"     @(#)doc-nroff 5.6 (Berkeley) 8/5/91
33 .\"
34 .\"     %beginstrip%
37 .eo
39 .\" use -rcR=0 to have multiple pages instead of a single, very long page
41 .if !r cR .nr cR 1
43 .\" the `doc-xx-font' strings must not be empty!
45 .ds doc-caption-font \f[R]
46 .ds doc-caption-font2 \f[R]
47 .ds doc-Ad-font \f[I]
48 .ds doc-Ar-font \f[I]
49 .ds doc-Cm-font \f[B]
50 .ds doc-Em-font \f[I]
51 .ds doc-Er-font \f[R]
52 .ds doc-Ev-font \f[R]
53 .ds doc-Fa-font \f[I]
54 .ds doc-Fd-font \f[B]
55 .ds doc-Fl-font \f[B]
56 .ds doc-Fn-font \f[B]
57 .ds doc-Ft-font \f[I]
58 .ds doc-Ic-font \f[B]
59 .ds doc-Li-font \f[R]
60 .ds doc-Me-font \f[B]
61 .ds doc-Nm-font \f[B]
62 .ds doc-No-font \f[R]
63 .ds doc-Pa-font \f[I]
64 .ds doc-Sh-font \f[B]
65 .ds doc-Sy-font \f[B]
66 .ds doc-Sx-font \f[I]
67 .ds doc-Tn-font-shape \f[R]
68 .ds doc-Tn-font-size
69 .ds doc-Va-font \f[I]
70 .ds doc-Xr-font \f[R]
72 .ds doc-left-parenthesis \f[R](\f[P]
73 .ds doc-right-parenthesis \f[R])\f[P]
74 .ds lp \f[R](\f[P]
75 .ds rp \f[R])\f[P]
76 .ds doc-left-bracket \f[R][\f[P]
77 .ds doc-right-bracket \f[R]]\f[P]
79 .\" miscellaneous
80 .nr doc-subheader-indent .5i
81 .nr doc-paragraph-space 1v
83 .ec
84 .nr doc-digit-width \w'\0\0'u
85 .nr doc-fixed-width \w'0'
86 .eo
89 .\" NS doc-header-space global register
90 .\" NS   the space between header and body
92 .nr doc-header-space 0
95 .\" NS doc-footer-space global register
96 .\" NS   the space between body and footer
98 .nr doc-footer-space 0
101 .\" NS doc-display-vertical global register
102 .\" NS   vertical space between list elements etc.
104 .nr doc-display-vertical 0
107 .\" NS doc-setup-page-layout macro
108 .\" NS   set up page layout
109 .\" NS
110 .\" NS modifies:
111 .\" NS   doc-display-vertical
112 .\" NS   doc-footer-space
113 .\" NS   doc-header-space
115 .de doc-setup-page-layout
116 .  ie \n[cR] \
117 .    nr doc-header-space 0
118 .  el \
119 .    nr doc-header-space .5i
120 .  nr doc-footer-space .5i
122 .  ll 78n
123 .  lt 78n
124 .  po 0i
126 .  nr doc-display-vertical 1v
127 .  ad l
128 .  na
132 .ds <= \&<\&=
133 .ds >= \&>\&=
135 .\" Lq and Rq are `official'
136 .ds Rq ''
137 .ds Lq ``
138 .ds ua ^
139 .ds aa \'
140 .ds ga \`
141 .ds doc-left-singlequote `
142 .ds doc-right-singlequote '
143 .\" q is `official'
144 .ds q \[dq]
146 .\" math stuff -- all macro names are `official'
147 .ds Pi pi
148 .ds Ne !=
149 .ds Le <=
150 .ds Ge >=
151 .ds Lt <
152 .ds Gt >
153 .ds Pm +-
154 .ds If infinity
155 .ds Na \f[I]NaN\f[P]
156 .ds Ba \f[R]|\f[P]
159 .\" NS doc-header-string global string
160 .\" NS   the final string used for the manual page header
162 .ds doc-header-string
165 .\" NS doc-setup-header macro
166 .\" NS   install and initialize header and footer support
167 .\" NS
168 .\" NS modifies:
169 .\" NS   doc-header-string
171 .de doc-setup-header
172 .  nr % 1
173 .  ds doc-header-string "\*[doc-document-title]
174 .  if !"\*[doc-section]"Null" \
175 .    as doc-header-string (\*[doc-section])
177 .  ie \n[cR] \
178 .    doc-header
179 .  el \{\
180 .    wh 0 doc-header
181 .    wh -1.167i doc-footer
182 .  \}
184 .  if ((\n[nl] == 0) : (\n[nl] == -1)) \
185 '    bp
187 .  e@ doc-end-macro
191 .\" NS doc-get-width macro
192 .\" NS   computes the width of a string as a multiple of `doc-fixed-width':
193 .\" NS   `.doc-get-width string'
194 .\" NS
195 .\" NS modifies:
196 .\" NS   doc-width
198 .de doc-get-width
199 .  nr doc-width \w\a\$1\a
200 .  ie (\n[doc-width] >= \n[doc-fixed-width]) \{\
201 .    ie (\n[doc-width] % \n[doc-fixed-width]) \
202 .      nr doc-width ((\n[doc-width] / \n[doc-fixed-width]) + 1)
203 .    el \
204 .      nr doc-width (\n[doc-width] / \n[doc-fixed-width])
205 .  \}
206 .  el \
207 .    nr doc-width 0
211 .\" NS doc-get-arg-width macro
212 .\" NS   computes the width of an argument as a multiple of
213 .\" NS   `doc-fixed-width': `.doc-get-arg-width arg-index'
214 .\" NS
215 .\" NS modifies:
216 .\" NS   doc-width
218 .de doc-get-arg-width
219 .  nr doc-width \w\a\*[doc-arg\$1]\a
220 .  ie (\n[doc-width] >= \n[doc-fixed-width]) \{\
221 .    ie (\n[doc-width] % \n[doc-fixed-width]) \
222 .      nr doc-width ((\n[doc-width] / \n[doc-fixed-width]) + 1)
223 .    el \
224 .      nr doc-width (\n[doc-width] / \n[doc-fixed-width])
225 .  \}
226 .  el \
227 .    nr doc-width 0
231 .\" NS Ql user macro
232 .\" NS   quoted literal define
233 .\" NS
234 .\" NS modifies:
235 .\" NS   doc-macro-name
236 .\" NS   doc-quote-left
237 .\" NS   doc-quote-right
238 .\" NS
239 .\" NS width register `Ql' set in doc-common
241 .de Ql
242 .  if !\n[doc-arg-limit] \{\
243 .    ie \n[.$] \
244 .      ds doc-macro-name Ql
245 .    el \
246 .      tm Usage: .Ql argument ... (#\n[.c])
247 .  \}
249 .  ds doc-quote-left "\*[doc-left-singlequote]
250 .  ds doc-quote-right "\*[doc-right-singlequote]
252 .  doc-enclose-string \$@
258 .\" EOF