8f5e0ca11a1f6092ba7e42a209f80c5d011d9629
[platform/upstream/groff.git] / tmac / doc-nroff
1 .\" -*- nroff -*-
2 .\"
3 .\" Copyright (c) 1991, 1993
4 .\"     The Regents of the University of California.  All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\" 3. [Deleted.  See
15 .\"     ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change]
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   8.1 (Berkeley) 06/08/93
33 .\"
34 .\"     %beginstrip%
35 .
36 .
37 .eo
38 .
39 .\" use -rD=1 for double-sided printing
40 .
41 .if !r D .nr D 0
42 .
43 .\" use -rcR=0 to have multiple pages instead of a single, very long page
44 .
45 .if !r cR .nr cR 1
46 .
47 .\" the following switch is ignored in nroff mode
48 .
49 .nr S 10
50 .
51 .\" the `doc-xx-font' strings must not be empty!
52 .
53 .ds doc-caption-font \f[R]
54 .ds doc-caption-font2 \f[R]
55 .ds doc-Ad-font \f[I]
56 .ds doc-Ar-font \f[I]
57 .ds doc-Cm-font \f[B]
58 .ds doc-Em-font \f[I]
59 .ds doc-Er-font \f[R]
60 .ds doc-Ev-font \f[R]
61 .ds doc-Fa-font \f[I]
62 .ds doc-Fd-font \f[B]
63 .ds doc-Fl-font \f[B]
64 .ds doc-Fn-font \f[B]
65 .ds doc-Ft-font \f[I]
66 .ds doc-Ic-font \f[B]
67 .ds doc-Li-font \f[R]
68 .ds doc-Me-font \f[B]
69 .ds doc-Nm-font \f[B]
70 .ds doc-No-font \f[R]
71 .ds doc-Pa-font \f[I]
72 .ds doc-Sh-font \f[B]
73 .ds doc-Sy-font \f[B]
74 .ds doc-Sx-font \f[I]
75 .ds doc-Tn-font-shape \f[R]
76 .ds doc-Tn-font-size
77 .ds doc-Va-font \f[I]
78 .ds doc-Xr-font \f[R]
79 .
80 .ds doc-left-parenthesis \f[R](\f[]
81 .ds doc-right-parenthesis \f[R])\f[]
82 .ds lp \f[R](\f[]
83 .ds rp \f[R])\f[]
84 .ds doc-left-bracket \f[R][\f[]
85 .ds doc-right-bracket \f[R]]\f[]
86 .
87 .\" miscellaneous
88 .nr doc-subheader-indent .5i
89 .nr doc-paragraph-space 1v
90 .
91 .ec
92 .nr doc-digit-width \w'\0\0'u
93 .nr doc-fixed-width \w'0'
94 .eo
95 .
96 .
97 .\" NS doc-header-space global register
98 .\" NS   the space between header and body
99 .
100 .nr doc-header-space 0.5i
101 .
102 .
103 .\" NS doc-footer-space global register
104 .\" NS   the space between body and footer
105 .
106 .nr doc-footer-space 0.5i
107 .
108 .
109 .\" NS doc-display-vertical global register
110 .\" NS   vertical space between list elements etc.
111 .
112 .nr doc-display-vertical 0
113 .
114 .
115 .\" NS doc-setup-page-layout macro
116 .\" NS   set up page layout
117 .\" NS
118 .\" NS modifies:
119 .\" NS   doc-display-vertical
120 .
121 .de doc-setup-page-layout
122 .  ie r LL \
123 .    ll \n[LL]u
124 .  el \
125 .    ll 78n
126 .
127 .  ie r LT \
128 .    lt \n[LT]u
129 .  el \
130 .    lt 78n
131 .
132 .  po 0i
133 .
134 .  nr doc-display-vertical 1v
135 .  ad l
136 .  na
137 ..
138 .
139 .
140 .ec
141 .
142 .ds doc-left-singlequote \[oq]
143 .ds doc-right-singlequote \[cq]
144 .
145 .\" the following strings are `official'
146 .ds <= \[<=]
147 .ds >= \[>=]
148 .ds aa \[aa]
149 .ds ga \[ga]
150 .ds q \[dq]
151 .ds Ne \[!=]
152 .ds Le \[<=]
153 .ds Ge \[>=]
154 .ds Lt <
155 .ds Gt >
156 .ds Pm \[+-]
157 .ds Na \f[I]NaN\f[]
158 .ds Ba \f[R]|\f[]
159 .ds Am &
160 .
161 .\" Unicode TTYs have all glyph forms; for other TTY character sets we need
162 .\" character representations which are different from GNU troff's standard
163 .\" forms.
164 .ie '\*[.T]'utf8' \{\
165 .  ds Rq \[rq]
166 .  ds Lq \[lq]
167 .  ds ua \[ua]
168 .  ds Pi \[*p]
169 .  ds If \[if]
170 .\}
171 .el \{\
172 .  ds Rq ''
173 .  ds Lq ``
174 .  ds ua ^
175 .  ds Pi pi
176 .  ds If infinity
177 .\}
178 .
179 .eo
180 .
181 .
182 .\" NS doc-header-string global string
183 .\" NS   the final string used for the manual page header
184 .
185 .ds doc-header-string
186 .
187 .
188 .\" NS doc-setup-header macro
189 .\" NS   install and initialize header and footer support
190 .\" NS
191 .\" NS modifies:
192 .\" NS   doc-header-string
193 .
194 .de doc-setup-header
195 .  ds doc-header-string "\*[doc-document-title]
196 .  if !"\*[doc-section]"Null" \
197 .    as doc-header-string (\*[doc-section])
198 .
199 .  ie \n[cR] \
200 .    doc-header
201 .  el \{\
202 .    wh 0 doc-header
203 .    wh -1.167i doc-footer
204 .  \}
205 .
206 .  e@ doc-end-macro
207 ..
208 .
209 .
210 .\" NS doc-get-width macro
211 .\" NS   computes the width of a string as a multiple of `doc-fixed-width':
212 .\" NS   `.doc-get-width string'
213 .\" NS
214 .\" NS modifies:
215 .\" NS   doc-width
216 .
217 .de doc-get-width
218 .  nr doc-width \w\a\$1\a
219 .  ie (\n[doc-width] >= \n[doc-fixed-width]) \{\
220 .    ie (\n[doc-width] % \n[doc-fixed-width]) \
221 .      nr doc-width ((\n[doc-width] / \n[doc-fixed-width]) + 1)
222 .    el \
223 .      nr doc-width (\n[doc-width] / \n[doc-fixed-width])
224 .  \}
225 .  el \
226 .    nr doc-width 0
227 ..
228 .
229 .
230 .\" NS doc-get-arg-width macro
231 .\" NS   computes the width of an argument as a multiple of
232 .\" NS   `doc-fixed-width': `.doc-get-arg-width arg-index'
233 .\" NS
234 .\" NS modifies:
235 .\" NS   doc-width
236 .
237 .de doc-get-arg-width
238 .  nr doc-width \w\a\*[doc-arg\$1]\a
239 .  ie (\n[doc-width] >= \n[doc-fixed-width]) \{\
240 .    ie (\n[doc-width] % \n[doc-fixed-width]) \
241 .      nr doc-width ((\n[doc-width] / \n[doc-fixed-width]) + 1)
242 .    el \
243 .      nr doc-width (\n[doc-width] / \n[doc-fixed-width])
244 .  \}
245 .  el \
246 .    nr doc-width 0
247 ..
248 .
249 .
250 .\" NS Ql user macro
251 .\" NS   quoted literal define
252 .\" NS
253 .\" NS modifies:
254 .\" NS   doc-macro-name
255 .\" NS   doc-quote-left
256 .\" NS   doc-quote-right
257 .\" NS
258 .\" NS width register `Ql' set in doc-common
259 .
260 .de Ql
261 .  if !\n[doc-arg-limit] \{\
262 .    ie \n[.$] \
263 .      ds doc-macro-name Ql
264 .    el \
265 .      tm Usage: .Ql argument ... (#\n[.c])
266 .  \}
267 .
268 .  ds doc-quote-left "\*[doc-left-singlequote]
269 .  ds doc-quote-right "\*[doc-right-singlequote]
270 .
271 .  doc-enclose-string \$@
272 ..
273 .
274 .
275 .ec
276 .
277 .\" EOF