internal update
[s-roff.git] / tmac / doc-common.new
blob1ccc8d63ff7d3cc6ba743baa7154af2689baa9ad
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-common 5.7 (Berkeley) 8/5/91
33 .\"
34 .\"     %beginstrip%
36 .eo
39 .\" Macro Identifiers.  For each user macro a corresponding register with
40 .\" the same name must exist.  Its value must not be zero.
42 .nr %A 1
43 .nr %B 1\" ?
44 .nr %D 1\" ?
45 .nr %J 1
46 .nr %N 1
47 .nr %O 1
48 .nr %P 1\" ?
49 .nr %Q 1\" ?
50 .nr %R 1
51 .nr %T 1
52 .nr %V 1
53 .nr Ac 3
54 .nr Ad 12n
55 .nr An 12n
56 .nr Ao 12n
57 .nr Ap 2
58 .nr Aq 12n
59 .nr Ar 12n
60 .nr At 8n\" ?
61 .nr Bc 3
62 .nr Bf 8n\" ?
63 .nr Bk 8n\" ?
64 .nr Bl 1
65 .nr Bo 12n
66 .nr Bq 12n
67 .nr Brc 3
68 .nr Bro 12n
69 .nr Brq 12n
70 .nr Bsx 6n\" ?
71 .nr Bt 8n\" ?
72 .nr Bx 12n
73 .nr Cd 12n
74 .nr Cm 10n
75 .nr D1 8n\" ?
76 .nr Dc 3
77 .nr Dl 8n\" ?
78 .nr Dt 8n\" ?
79 .nr Do 10n
80 .nr Dq 12n
81 .nr Dv 12n
82 .nr Ec 3
83 .nr Ef 8n\" ?
84 .nr Ek 8n\" ?
85 .nr El 1
86 .nr Em 10n
87 .nr En 12n
88 .nr Eo 12n
89 .nr Eq 12n
90 .nr Er 12n
91 .nr Es 12n
92 .nr Ev 15n
93 .nr Ex 10n
94 .nr Fa 12n
95 .nr Fc 3
96 .nr Fd 12n\" ?
97 .nr Fl 10n
98 .nr Fn 16n
99 .nr Fo 16n
100 .nr Fr 12n\" ?
101 .nr Ft 8n\" ?
102 .nr Fx 12n\" ?
103 .nr Hf 8n\" ?
104 .nr Ic 10n
105 .nr In 12n\" ?
106 .nr It 8n\" ?
107 .nr Lb 6n\" ?
108 .nr Ld 4n
109 .nr Li 16n
110 .nr Lk 6n\" ?
111 .nr Lp 8n\" ?
112 .nr Me 6n
113 .nr Ms 6n
114 .nr Mt 6n\" ?
115 .nr Nd 8n\" ?
116 .nr Nm 10n
117 .nr No 12n
118 .nr Ns 2
119 .nr Nx 12n\" ?
120 .nr Oc 3
121 .nr Oo 10n
122 .nr Op 14n
123 .nr Or 6n\" ?
124 .nr Os 6n\" ?
125 .nr Ot 8n\" ?
126 .nr Ox 12n\" ?
127 .nr Pa 32n
128 .nr Pc 3
129 .nr Pf 12n
130 .nr Po 12n
131 .nr Pp 8n\" ?
132 .nr Pq 12n
133 .nr Qc 3
134 .nr Ql 16n
135 .nr Qo 12n
136 .nr Qq 12n
137 .nr Rv 1
138 .nr Sc 3
139 .nr Sf 8n\" ?
140 .nr Sh 8n\" ?
141 .nr Sm 8n\" ?
142 .nr So 12n
143 .nr Sq 12n
144 .nr Ss 8n\" ?
145 .nr St 8n\" ?
146 .nr Sx 16n
147 .nr Sy 6n
148 .nr Ta 2
149 .nr Tn 10n
150 .nr Ud 8n\" ?
151 .nr Ux 10n
152 .nr Va 12n
153 .nr Vt 8n\" ?
154 .nr Xc 3
155 .nr Xo 1
156 .nr Xr 10n
159 .nr doc-display-indent 6n
162 .\" space strings
164 .ds doc-soft-space " \"
165 .ds doc-hard-space \~
168 .\" punctuation values (suffix=3, prefix = 4)
170 .nr doc-punct. 3
171 .nr doc-punct, 3
172 .nr doc-punct: 3
173 .nr doc-punct; 3
174 .nr doc-punct( 4
175 .nr doc-punct) 3
176 .nr doc-punct[ 4
177 .nr doc-punct] 3
178 .nr doc-punct? 3
179 .nr doc-punct! 3
182 .\" header assembly macros
184 .\" NS doc-document-title global string
185 .\" NS   the title of the manual page
187 .ds doc-document-title UNTITLED
190 .\" NS doc-volume global string
191 .\" NS   the volume where the manual page belongs to
193 .ds doc-volume LOCAL
196 .\" NS doc-section global string
197 .\" NS   the manual section
199 .ds doc-section Null
202 .\" NS Dt user macro (not parsed, not callable)
203 .\" NS   document title
204 .\" NS
205 .\" NS modifies:
206 .\" NS   doc-document-title, doc-volume, doc-section
207 .\" NS
208 .\" NS local variables:
209 .\" NS   doc-volume-ds-XXX, doc-volume-as-XXX
210 .\" NS
211 .\" NS width register `Dt' set above
213 .\" an alternative, more detailed scheme for naming the manual sections
215 .\" .ds volume-ds-1 System General Commands Manual
216 .\" .ds volume-ds-2 System Calls Manual
217 .\" .ds volume-ds-3 System Library Functions Manual
218 .\" .ds volume-ds-4 System Kernel Interfaces Manual
219 .\" .ds volume-ds-5 System File Formats Manual
220 .\" .ds volume-ds-6 System Games Manual
221 .\" .ds volume-ds-7 System Miscellaneous Information Manual
222 .\" .ds volume-ds-8 System Manager's Manual
223 .\" .ds volume-ds-9 System Kernel Developer's Manual
225 .ds doc-volume-ds-USD   System User's Supplementary Documents
226 .ds doc-volume-ds-PS1   System Programmer's Supplementary Documents
227 .ds doc-volume-ds-AMD   System Ancestral Manual Documents
228 .ds doc-volume-ds-SMM   System Manager's Manual
229 .ds doc-volume-ds-URM   System Reference Manual
230 .ds doc-volume-ds-PRM   System Programmer's Manual
231 .ds doc-volume-ds-KM    System Kernel Manual
232 .ds doc-volume-ds-IND   System Manual Master Index
233 .ds doc-volume-ds-LOCAL System Local Manual
234 .ds doc-volume-ds-CON   System Contributed Software Manual
236 .als doc-volume-ds-MMI doc-volume-ds-IND
237 .als doc-volume-ds-LOC doc-volume-ds-LOCAL
239 .ds doc-volume-as-alpha    (Alpha Architecture)
240 .ds doc-volume-as-amiga    (Amiga Architecture)
241 .ds doc-volume-as-arc      (Arc Architecture)
242 .ds doc-volume-as-arm26    (ARM26 Architecture)
243 .ds doc-volume-as-arm32    (ARM32 Architecture)
244 .ds doc-volume-as-atari    (Atari Architecture)
245 .ds doc-volume-as-bebox    (BEbox Architecture)
246 .ds doc-volume-as-cobalt   (Cobalt Architecture)
247 .ds doc-volume-as-evbsh3   (Evbsh3 Architecture)
248 .ds doc-volume-as-hp300    (HP300 Architecture)
249 .ds doc-volume-as-hpcmips  (HPcmips Architecture)
250 .ds doc-volume-as-i386     (i386 Architecture)
251 .ds doc-volume-as-luna68k  (luna68k Architecture)
252 .ds doc-volume-as-m68k     (m68k Architecture)
253 .ds doc-volume-as-mac68k   (mac68k Architecture)
254 .ds doc-volume-as-macppc   (macppc Architecture)
255 .ds doc-volume-as-mips     (MIPS Architecture)
256 .ds doc-volume-as-mmeye    (mmeye Architecture)
257 .ds doc-volume-as-mvme68k  (mvme68k Architecture)
258 .ds doc-volume-as-news68k  (news68k Architecture)
259 .ds doc-volume-as-newsmips (newsmips Architecture)
260 .ds doc-volume-as-next68k  (next68k Architecture)
261 .ds doc-volume-as-ofppc    (ofppc Architecture)
262 .ds doc-volume-as-pc532    (pc532 Architecture)
263 .ds doc-volume-as-pmax     (pmax Architecture)
264 .ds doc-volume-as-powerpc  (powerpc Architecture)
265 .ds doc-volume-as-prep     (prep Architecture)
266 .ds doc-volume-as-sgimips  (sgimips Architecture)
267 .ds doc-volume-as-sh3      (sh3 Architecture)
268 .ds doc-volume-as-sparc    (SPARC Architecture)
269 .ds doc-volume-as-sparc64  (sparc64 Architecture)
270 .ds doc-volume-as-sun3     (sun3 Architecture)
271 .ds doc-volume-as-tahoe    (Tahoe Architecture)
272 .ds doc-volume-as-vax      (VAX Architecture)
273 .ds doc-volume-as-x68k     (x68k Architecture)
275 .de Dt
276 .  \" reset default arguments
277 .  ds doc-document-title UNTITLED
278 .  ds doc-volume LOCAL
279 .  ds doc-section Null
281 .  if !"\$1"" \
282 .    ds doc-document-title "\$1
284 .  if !"\$2"" \{\
285 .    ds doc-section \$2
286 .    ie        ((\$2 >= 1) & (\$2 <= 9)) \{\
287 .      ds doc-volume "\*[doc-volume-ds-URM]
288 .      ie d doc-volume-ds-\$2 \
289 .        ds doc-volume "\*[doc-volume-ds-\$2]
290 .      el \{ .ie ((\$2 > 1) & (\$2 < 6)) \
291 .        ds doc-volume "\*[doc-volume-ds-PRM]
292 .      el \{ .ie (\$2 == 8) \
293 .        ds doc-volume "\*[doc-volume-ds-SMM]
294 .      el \{ .if (\$2 == 9) \
295 .        ds doc-volume "\*[doc-volume-ds-KM]
296 .    \}\}\}\}
297 .    el \{ .ie "\$2"unass" .ds doc-volume DRAFT
298 .    el \{ .ie "\$2"draft" .ds doc-volume DRAFT
299 .    el \{ .ie "\$2"paper" .ds doc-volume UNTITLED
300 .    el \
301 .      tm mdoc warning: .Dt: unknown section `\$2' (#\n[.c])
302 .  \}\}\}\}
304 .  if \A\a\$3\a \{\
305 .    if d doc-volume-ds-\$3 \
306 .      ds doc-volume "\*[doc-volume-ds-\$3]
308 .    if d doc-volume-as-\$3 \
309 .      as doc-volume " \*[doc-volume-as-\$3]
310 .  \}
312 .  if !"\$3"" \
313 .    if "\*[doc-volume]"LOCAL" \
314 .      ds doc-volume \$3
318 .\" NS doc-operating-system global string
319 .\" NS   the exact version of the operating system
321 .ds doc-operating-system
324 .\" NS Os user macro (not parsed, not callable)
325 .\" NS   operating system
326 .\" NS
327 .\" NS width register `Os' set above
328 .\" NS
329 .\" NS local variables:
330 .\" NS   doc-operating-system-XXX-XXX
331 .\" NS
332 .\" NS modifies:
333 .\" NS   doc-operating-system
335 .ds doc-operating-system-ATT-7th 7th\~Edition
336 .ds doc-operating-system-ATT-7   7th\~Edition
337 .ds doc-operating-system-ATT-III System\~III
338 .ds doc-operating-system-ATT-3   System\~III
339 .ds doc-operating-system-ATT-V   System\~V
340 .ds doc-operating-system-ATT-V.2 System\~V Release\~2
341 .ds doc-operating-system-ATT-V.3 System\~V Release\~3
342 .ds doc-operating-system-ATT-V.4 System\~V Release\~4
344 .ds doc-operating-system-BSD-3    3rd\~Berkeley Distribution
345 .ds doc-operating-system-BSD-4    4th\~Berkeley Distribution
346 .ds doc-operating-system-BSD-4.1  4.1\~Berkeley Distribution
347 .ds doc-operating-system-BSD-4.2  4.2\~Berkeley Distribution
348 .ds doc-operating-system-BSD-4.3  4.3\~Berkeley Distribution
349 .ds doc-operating-system-BSD-4.3T 4.3-Tahoe Berkeley Distribution
350 .ds doc-operating-system-BSD-4.3R 4.3-Reno Berkeley Distribution
351 .ds doc-operating-system-BSD-4.3t 4.3-Tahoe Berkeley Distribution
352 .ds doc-operating-system-BSD-4.3r 4.3-Reno Berkeley Distribution
353 .ds doc-operating-system-BSD-4.4  4.4BSD
355 .ds doc-operating-system-NetBSD-0.8  0.8
356 .ds doc-operating-system-NetBSD-0.8a 0.8A
357 .ds doc-operating-system-NetBSD-0.9  0.9
358 .ds doc-operating-system-NetBSD-0.9a 0.9A
359 .ds doc-operating-system-NetBSD-1.0  1.0
360 .ds doc-operating-system-NetBSD-1.0a 1.0A
361 .ds doc-operating-system-NetBSD-1.1  1.1
362 .ds doc-operating-system-NetBSD-1.2  1.2
363 .ds doc-operating-system-NetBSD-1.2a 1.2A
364 .ds doc-operating-system-NetBSD-1.2b 1.2B
365 .ds doc-operating-system-NetBSD-1.2c 1.2C
366 .ds doc-operating-system-NetBSD-1.2d 1.2D
367 .ds doc-operating-system-NetBSD-1.2e 1.2E
368 .ds doc-operating-system-NetBSD-1.3  1.3
369 .ds doc-operating-system-NetBSD-1.3a 1.3A
370 .ds doc-operating-system-NetBSD-1.4  1.4
371 .ds doc-operating-system-NetBSD-1.5  1.5
373 .ds doc-operating-system-FreeBSD-1.0     1.0
374 .ds doc-operating-system-FreeBSD-1.1     1.1
375 .ds doc-operating-system-FreeBSD-1.1.5   1.1.5
376 .ds doc-operating-system-FreeBSD-1.1.5.1 1.1.5.1
377 .ds doc-operating-system-FreeBSD-2.0     2.0
378 .ds doc-operating-system-FreeBSD-2.0.5   2.0.5
379 .ds doc-operating-system-FreeBSD-2.1     2.1
380 .ds doc-operating-system-FreeBSD-2.1.5   2.1.5
381 .ds doc-operating-system-FreeBSD-2.1.6   2.1.6
382 .ds doc-operating-system-FreeBSD-2.1.7   2.1.7
383 .ds doc-operating-system-FreeBSD-2.2     2.2
384 .ds doc-operating-system-FreeBSD-2.2.1   2.2.1
385 .ds doc-operating-system-FreeBSD-2.2.2   2.2.2
386 .ds doc-operating-system-FreeBSD-2.2.5   2.2.5
387 .ds doc-operating-system-FreeBSD-2.2.6   2.2.6
388 .ds doc-operating-system-FreeBSD-2.2.7   2.2.7
389 .ds doc-operating-system-FreeBSD-2.2.8   2.2.8
390 .ds doc-operating-system-FreeBSD-3.0     3.0
391 .ds doc-operating-system-FreeBSD-3.1     3.1
392 .ds doc-operating-system-FreeBSD-3.2     3.2
393 .ds doc-operating-system-FreeBSD-3.3     3.3
394 .ds doc-operating-system-FreeBSD-3.4     3.4
395 .ds doc-operating-system-FreeBSD-3.5     3.5
396 .ds doc-operating-system-FreeBSD-4.0     4.0
397 .ds doc-operating-system-FreeBSD-4.1     4.1
398 .ds doc-operating-system-FreeBSD-4.1.1   4.1.1
399 .ds doc-operating-system-FreeBSD-4.2     4.2
400 .ds doc-operating-system-FreeBSD-5.0     5.0
402 .de Os
403 .  ds doc-operating-system Null
405 .  if "\$1"" \
406 .    ds doc-operating-system BSD
408 .  if "\$1"ATT" \{\
409 .    ds doc-operating-system AT&T
410 .    if \A\a\$2\a \{\
411 .      ie d doc-operating-system-ATT-\$2 \
412 .        as doc-operating-system " \*[doc-operating-system-ATT-\$2]
413 .      el \
414 .        as doc-operating-system " UNIX
415 .  \}\}
417 .  if "\$1"BSD" \{\
418 .    if \A\a\$2\a \{\
419 .      ie d doc-operating-system-BSD-\$2 \
420 .        ds doc-operating-system "\*[doc-operating-system-BSD-\$2]
421 .      el \
422 .        tm mdoc warning: .Os: Unknown BSD version `\$2' (#\n[.c])
423 .  \}\}
425 .  if "\$1"NetBSD" \{\
426 .    ds doc-operating-system NetBSD
427 .    if \A\a\$2\a \{\
428 .      ie d doc-operating-system-NetBSD-\$2 \
429 .        as doc-operating-system \~\*[doc-operating-system-NetBSD-\$2]
430 .      el \
431 .        tm mdoc warning: .Os: Unknown NetBSD version `\$2' (#\n[.c])
432 .  \}\}
434 .  if "\$1"FreeBSD" \{\
435 .    ds doc-operating-system FreeBSD
436 .    if \A\a\$2\a \{\
437 .      ie d doc-operating-system-FreeBSD-\$2 \
438 .        as doc-operating-system \~\*[doc-operating-system-FreeBSD-\$2]
439 .      el \
440 .        tm mdoc warning: .Os: Unknown FreeBSD version `\$2' (#\n[.c])
441 .  \}\}
443 .  if "\*[doc-operating-system]"Null" \{\
444 .    ds doc-operating-system \$1
445 .    if !"\$2"" \
446 .      as doc-operating-system " \$2
447 .  \}
451 .\" NS doc-date-string global string
452 .\" NS   the manual page date as set by `Dd'
454 .ds doc-date-string
457 .\" NS Dd user macro (not parsed, not callable)
458 .\" NS   set document date
459 .\" NS
460 .\" NS local variables:
461 .\" NS   doc-date-XXX
462 .\" NS
463 .\" NS modifies:
464 .\" NS   doc-date-string
465 .\" NS
466 .\" NS width register `Dd' set above
468 .ds doc-date-1  January
469 .ds doc-date-2  February
470 .ds doc-date-3  March
471 .ds doc-date-4  April
472 .ds doc-date-5  May
473 .ds doc-date-6  June
474 .ds doc-date-7  July
475 .ds doc-date-8  August
476 .ds doc-date-9  September
477 .ds doc-date-10 October
478 .ds doc-date-11 November
479 .ds doc-date-12 December
481 .de Dd
482 .  \" XXX: why do we need gX?
483 .  if "\*[doc-date-string]"" \
484 .    nr gX 1
486 .  ie \n[.$] \{\
487 .    ie (\n[.$] == 3) \
488 .      ds doc-date-string \$1\~\$2 \$3
489 .    el \{\
490 .      ds doc-date-string "\*[doc-date-\n[mo]]
491 .      as doc-date-string \~\n[dy], \n[year]
492 .    \}
493 .  \}
494 .  el \
495 .    ds doc-date-string Epoch
499 .\" NS doc-header macro
500 .\" NS   print page header
502 .de doc-header
503 .  ev doc-caption-environment
504 .  doc-setup-page-layout
505 .  if !\n[cR] \
506 '    sp \n[doc-header-space]u
507 .  tl @\*[doc-caption-font]\*[doc-header-string]\f[P]@\*[doc-caption-font2]\*[doc-volume]\f[P]@\*[doc-caption-font]\*[doc-header-string]\f[P]@
508 '  sp \n[doc-header-space]u
509 .  ev
513 .\" NS doc-footer macro
514 .\" NS   print page footer
516 .de doc-footer
517 .  ie \n[cR] \
518 '    br
519 .  el \{\
520 .    ev doc-caption-enviroment
521 .    doc-setup-page-layout
522 '    sp \n[doc-footer-space]u
523 .    tl @\*[doc-caption-font]\*[doc-operating-system]\f[P]@\*[doc-caption-font2]\*[doc-date-string]\f[P]@%@
524 '    bp
525 .    ev
526 .  \}
530 .\" NS doc-end-macro macro
531 .\" NS   finish output
533 .de doc-end-macro
534 .  \" We may still have a partial line in the environment.  If this is the
535 .  \" case, and we happen to be on the last line of the page, the `.fl'
536 .  \" request will cause the page to be ejected and troff will immediately
537 .  \" exit.  If we are in nroff mode, this would be unfortunate, since we
538 .  \" would never get a chance to output the footer.  So we fudge the page
539 .  \" length to make sure that the last page is never ejected until we want
540 .  \" it to be.
542 .  if \n[cR] \
543 .    pl +3v
544 .  fl
546 .  if \n[doc-list-depth] \
547 .    tm mdoc warning: list open at EOF!  A .Bl directive has no matching .El
549 .  if \n[cR] \{\
550 '    sp
551 .    tl @\*[doc-caption-font]\*[doc-operating-system]\f[P]@\*[doc-caption-font2]\*[doc-date-string]\f[P]@%@
552 .    \" suppress empty lines after the footer
553 .    pl \n[nl]u
554 .  \}
558 .\" NS doc-paragraph macro
559 .\" NS   insert a paragraph
561 .de doc-paragraph
562 .  sp \n[doc-paragraph-space]u
563 .  if !\n[cR] \
564 .    ne 2
565 .  ns
569 .\" NS Pp user macro (not parsed, not callable)
570 .\" NS   new paragraph
571 .\" NS
572 .\" NS width register `Pp' set above
574 .als Pp doc-paragraph
577 .\" NS Lp user macro (not parsed, not callable)
578 .\" NS   same as .Pp
579 .\" NS
580 .\" NS width register `Lp' set above
582 .als Lp doc-paragraph
585 .de LP
586 .  tm Not a \-mdoc command: .LP (#\n[.c])
590 .de PP
591 .  tm Not a \-mdoc command: .PP (#\n[.c])
595 .de pp
596 .  tm Not a \-mdoc command: .pp (#\n[.c])
600 .de SH
601 .  tm Not a \-mdoc command: .SH (#\n[.c])
605 .\" NS Nd user macro (not parsed, not callable)
606 .\" NS   print name description
607 .\" NS
608 .\" NS width register `Nd' set above
610 .de Nd
611 .  nop \- \$*
615 .\" NS Ss user macro (not parsed, not callable)
616 .\" NS   subsection
617 .\" NS
618 .\" NS width register `Ss' set above
619 .\" NS
620 .\" NS local variable:
621 .\" NS   doc-reg-Ss, doc-reg-Ss1
623 .de Ss
624 .  ie \n[.$] \{\
625 .    sp
626 .    if !\n[cR] \
627 .      ne 3
628 .    ti -.25i
630 .    nr doc-reg-Ss \n[.ss]
631 .    nr doc-reg-Ss1 \n[.sss]
632 .    ss (\n[.ss] * 5 / 4) (\n[.sss] * 5 / 4)
633 .    nop \*[doc-Sh-font]\$*\f[P]\s[0]
634 .    ss \n[doc-reg-Ss] \n[doc-reg-Ss1]
636 .    ta T .5i
637 .    if !\n[cR] \
638 .      ne 2
639 .    br
640 .  \}
641 .  el \
642 .    tm Usage: .Ss subsection_name ... (#\n[.c])
646 .\" NS Rd macro (not parsed, not callable)
647 .\" NS   print global register dump to stderr
648 .\" NS
649 .\" NS local variables:
650 .\" NS   doc-reg-Rd
652 .de Rd
653 .  tm MDOC GLOBAL REGISTER DUMP
654 .  tm doc-debug == \n[doc-debug]
655 .  tm doc-macro-name == `\*[doc-macro-name]'
656 .  tm doc-arg-limit == \n[doc-arg-limit]
657 .  tm doc-num-args == \n[doc-num-args]
658 .  tm doc-arg-ptr == \n[doc-arg-ptr]
660 .  nr doc-reg-Rd 1
661 .  while (\n[doc-reg-Rd] <= \n[doc-arg-limit]) \{\
662 .    tm doc-arg\n[doc-reg-Rd] == `\*[doc-arg\n[doc-reg-Rd]]'
663 .    tm doc-type\n[doc-reg-Rd] == \n[doc-type\n[doc-reg-Rd]]
664 .    tm doc-space\n[doc-reg-Rd] == `\*[doc-space\n[doc-reg-Rd]]'
665 .    nr doc-reg-Rd +1
666 .  \}
668 .  tm doc-out-string == `\*[doc-out-string]'
669 .  tm doc-curr-space == `\*[doc-curr-space]'
670 .  tm doc-saved-out-string == `\*[doc-saved-out-string]'
671 .  tm doc-in-diversion == \n[doc-in-diversion]
672 .  tm doc-curr-font == \n[doc-curr-font]
673 .  tm doc-curr-size == \n[doc-curr-size]
674 .  tm doc-in-synopsis-count == \n[doc-in-synopsis-count]
675 .  tm doc-indent-synopsis == \n[doc-indent-synopsis]
676 .  tm doc-have-decl == \n[doc-have-decl]
677 .  tm doc-have-var == \n[doc-have-var]
678 .  tm doc-command-name == `\*[doc-command-name]'
679 .  tm doc-quote-left == `\*[doc-quote-left]'
680 .  tm doc-quote-right == `\*[doc-quote-right]'
681 .  tm doc-nesting-level == \n[doc-nesting-level]
682 .  tm doc-no-space == \n[doc-no-space]
683 .  tm doc-is-opening == \n[doc-is-opening]
684 .  tm doc-have-append == \n[doc-have-append]
685 .  tm doc-space == `\*[doc-space]'
686 .  tm doc-space-mode == \n[doc-space-mode]
687 .  tm doc-curr-font-for-Ef == \n[doc-curr-font-for-Ef]
688 .  tm doc-curr-size-for-Ef == \n[doc-curr-size-for-Ef]
689 .  tm doc-keep-type == `\*[doc-keep-type]'
690 .  tm doc-display-depth == \n[doc-display-depth]
691 .  tm doc-is-compact == \n[doc-is-compact]
693 .  nr doc-reg-Rd 0
694 .  while (\n[doc-reg-Rd] <= \n[doc-display-depth]) \{\
695 .    tm doc-display-type-stack\n[doc-reg-Rd] == `\*[doc-display-type-stack\n[doc-reg-Rd]]'
696 .    tm doc-display-indent-stack\n[doc-reg-Rd] == \n[doc-display-indent-stack\n[doc-reg-Rd]]
697 .    nr doc-reg-Rd +1
698 .  \}
700 .  tm doc-list-depth == \n[doc-list-depth]
702 .  nr doc-reg-Rd 1
703 .  while (\n[doc-reg-Rd] <= \n[doc-list-depth]) \{\
704 .    tm doc-list-type-stack\n[doc-reg-Rd] == `\*[doc-list-type-stack\n[doc-reg-Rd]]'
705 .    tm doc-list-indent-stack\n[doc-reg-Rd] == \n[doc-list-indent-stack\n[doc-reg-Rd]]
706 .    tm doc-compact-list-stack\n[doc-reg-Rd] == \n[doc-compact-list-stack\n[doc-reg-Rd]]
707 .    tm doc-tag-width-stack\n[doc-reg-Rd] == `\*[doc-tag-width-stack\n[doc-reg-Rd]]'
708 .    tm doc-list-offset-stack\n[doc-reg-Rd] == \n[doc-list-offset-stack\n[doc-reg-Rd]]
709 .    nr doc-reg-Rd +1
710 .  \}
712 .  tm doc-have-indent == \n[doc-have-indent]
713 .  tm doc-have-tag-width == \n[doc-have-tag-width]
714 .  tm doc-no-printing == \n[doc-no-printing]
715 .  tm doc-saved-Pa-font == `\*[doc-saved-Pa-font]'
716 .  tm doc-curr-type == \n[doc-curr-type]
717 .  tm doc-curr-arg == `\*[doc-curr-arg]'
718 .  tm doc-enum-list-count == \n[doc-enum-list-count]
719 .  tm doc-have-diag-list == \n[doc-have-diag-list]
720 .  tm doc-diag-list-input-line-count == \n[doc-diag-list-input-line-count]
721 .  tm doc-in-list == \n[doc-in-list]
722 .  tm doc-num-columns == \n[doc-num-columns]
723 .  tm doc-next-list-depth == \n[doc-next-list-depth]
724 .  tm doc-column-indent-width == \n[doc-column-indent-width]
725 .  tm doc-is-func == \n[doc-is-func]
726 .  tm doc-have-old-func == \n[doc-have-old-func]
727 .  tm doc-func-arg-count == \n[doc-func-arg-count]
728 .  tm doc-func-arg == `\*[doc-func-arg]'
729 .  tm doc-num-func-args == \n[doc-num-func-args]
730 .  tm doc-func-args-processed == \n[doc-func-args-processed]
731 .  tm doc-have-func == \n[doc-have-func]
732 .  tm doc-is-reference == \n[doc-is-reference]
733 .  tm doc-reference-count == \n[doc-reference-count]
734 .  tm doc-reference-string-name == `\*[doc-reference-string-name]'
735 .  tm doc-authors-processed == \n[doc-authors-processed]
736 .  tm doc-author-count == \n[doc-author-count]
738 .  nr doc-reg-Rd 0
739 .  while (\n[doc-reg-Rd] <= \n[doc-author-count]) \{\
740 .    tm doc-author-name\n[doc-reg-Rd] == `\*[doc-author-name\n[doc-reg-Rd]]'
741 .    nr doc-reg-Rd +1
742 .  \}
744 .  tm doc-book-count == \n[doc-book-count]
745 .  tm doc-book-name == `\*[doc-book-name]'
746 .  tm doc-date-count == \n[doc-date-count]
747 .  tm doc-date == `\*[doc-date]'
748 .  tm doc-publisher-count == \n[doc-publisher-count]
749 .  tm doc-publisher-name == `\*[doc-publisher-name]'
750 .  tm doc-journal-count == \n[doc-journal-count]
751 .  tm doc-journal-name == `\*[doc-journal-name]'
752 .  tm doc-issue-count == \n[doc-issue-count]
753 .  tm doc-issue-name == `\*[doc-issue-name]'
754 .  tm doc-optional-count == \n[doc-optional-count]
755 .  tm doc-optional-string == `\*[doc-optional-string]'
756 .  tm doc-page-number-count == \n[doc-page-number-count]
757 .  tm doc-page-number-string == `\*[doc-page-number-string]'
758 .  tm doc-corporate-count == \n[doc-corporate-count]
759 .  tm doc-corporate-name == `\*[doc-corporate-name]'
760 .  tm doc-report-count == \n[doc-report-count]
761 .  tm doc-report-name == `\*[doc-report-name]'
762 .  tm doc-reference-title-count == \n[doc-reference-title-count]
763 .  tm doc-reference-title-name == `\*[doc-reference-title-name]'
764 .  tm doc-volume-count == \n[doc-volume-count]
765 .  tm doc-volume-name == `\*[doc-volume-name]'
766 .  tm doc-have-author == \n[doc-have-author]
768 .  tm doc-document-title == `\*[doc-document-title]'
769 .  tm doc-volume == `\*[doc-volume]'
770 .  tm doc-section == `\*[doc-section]'
771 .  tm doc-operating-system == `\*[doc-operating-system]'
772 .  tm doc-date-string == `\*[doc-date-string]'
773 .  tm doc-header-space == \n[doc-header-space]
774 .  tm doc-footer-space == \n[doc-footer-space]
775 .  tm doc-display-vertical == \n[doc-display-vertical]
776 .  tm doc-header-string == `\*[doc-header-string]'
777 .  tm doc-in-see-also-section == \n[doc-in-see-also-section]
778 .  tm doc-in-files-section == \n[doc-in-files-section]
779 .  tm doc-in-authors-section == \n[doc-in-authors-section]
781 .  tm END OF GLOBAL REGISTER DUMP
784 .\" EOF