date and time created 88/07/22 16:08:01 by bostic
[unix-history] / usr / src / old / tmac / tmac.an
CommitLineData
6719a6ea
KM
1.\" Copyright (c) 1980 Regents of the University of California.
2.\" All rights reserved. The Berkeley software License Agreement
3.\" specifies the terms and conditions for redistribution.
4.\"
9d82eb68 5.\" @(#)tmac.an 6.5 (Berkeley) %G%
6719a6ea 6.\"
1d2340f3 7' DT, PD, SM, and B macros invoked internally.
6719a6ea
KM
8' # month name
9.if "\nd"0" .nr m \n(mo-1
10.if "\nm"0" .ds ]m January
11.if "\nm"1" .ds ]m February
12.if "\nm"2" .ds ]m March
13.if "\nm"3" .ds ]m April
14.if "\nm"4" .ds ]m May
15.if "\nm"5" .ds ]m June
16.if "\nm"6" .ds ]m July
17.if "\nm"7" .ds ]m August
18.if "\nm"8" .ds ]m September
19.if "\nm"9" .ds ]m October
20.if "\nm"10" .ds ]m November
21.if "\nm"11" .ds ]m December
22' # set the date
23.if n \{.nr m \nm+1
24. ie \nd .ds ]W Modified \nm/\nd/\ny
25. el .ds ]W Printed \n(mo/\n(dy/\n(yr\}
26.if t \{.ie \nd .ds ]W \*(]m \nd, 19\ny
27. el .ds ]W \*(]m \n(dy, 19\n(yr\}
28.if t .tr *\(**
29.ie n \{\
30. ds lq \&"\"
31. ds rq \&"\"
32.\}
33.el \{\
34. ds rq ''
35. ds lq ``
36.\}
540d9573 37.de AT
6719a6ea 38.if t \{\
540d9573
KM
39. ds ]W 7th Edition
40. if "\\$1"3" .ds ]W 7th Edition
41. if "\\$1"4" .ds ]W System III
42. if "\\$1"5" \{\
43. ie "\\$2"" .ds ]W System V
44. el .ds ]W System V Release \\$2
76fe4bac 45. \}
6719a6ea
KM
46.\}
47..
540d9573
KM
48.de UC
49.if t \{\
50. ds ]W 3rd Berkeley Distribution
51. if "\\$1"3" .ds ]W 3rd Berkeley Distribution
52. if "\\$1"4" .ds ]W 4th Berkeley Distribution
53. if "\\$1"5" .ds ]W 4.2 Berkeley Distribution
54. if "\\$1"6" .ds ]W 4.3 Berkeley Distribution
9d82eb68 55. if "\\$1"7" .ds ]W 4.4 Berkeley Distribution
540d9573
KM
56.\}
57..
6719a6ea
KM
58' # reset the basic page layout
59.de }E
60.}f
61.in \\n()Ru+\\n(INu
62.ll \\n(LLu
63..
64' # default tabs
65.de DT
66'ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
67..
68' # set type font and size
69.de }f
70.ps 10
71.ft 1
72..
73' # handle the head of the page
74.de }H
75.ev 1
76.}C
40fcab3d
KM
77.ie "\*(.T"va" 'sp .1i
78.el 'sp .5i
6719a6ea
KM
79.ft 1
80.ps 10
81.tl @\\*(]H@\\*(]D@\\*(]H@
82'sp .5i
83.ev
84.ns
85..
86' # handle the foot of the page
87.de }F
88.ev 1
89.ft 1
90.ps 10
91'sp .5i
92.tl @\\*(]W@\\*(]L@%@
93'bp
94.ev
95..
96' # the cut mark
97.if n .ig
6b2971d2 98.if !\nv=2 .ig
6719a6ea 99.de }C
1d2340f3
KM
100.po 0i
101.lt 7.45i
102.tl '__''__'
6719a6ea 103.po
1d2340f3 104.lt
6719a6ea
KM
105..
106' # the final cut mark
107.de }M
108.}N
109.wh -1p }C
110.ll \\n(LLu
111..
112' # no runout unless there was a .TH
113.de }K
114.}N
115.pl 1
116.ll \\n(LLu
117..
118.em }K
119' # set title and heading
120.de TH
121.PD
122.DT
123.if n .nr IN .5i
124.if t .nr IN .5i
125.nr LL \\n(.l
126.ds ]H \\$1\|(\|\\$2\|)
76fe4bac
KM
127.ie "\\$5"" .ds ]D UNIX Programmer's Manual
128.el .ds ]D \\$5
6719a6ea 129.wh 0 }H
1d2340f3
KM
130.if t .ie !"\*(.T"va" .wh -1i }F
131.if t .el .wh -1.4i }F
6719a6ea
KM
132.if n .wh -1.167i }F
133.em }M
134.if \\n(nl .bp 1
135.ds ]L \\$3
136.}E
137.DT
138.nr )I .5i
139.nr )R 0
140.if n .na
141.mk ka
142.if !'\\n(ka'-1' .bp
76fe4bac
KM
143.if t \{\
144. ie "\\$4"" .ds ]W 7th Edition
145. el .ds ]W \\$4
146.\}
6719a6ea
KM
147..
148' # section heading
149.de SH
1d2340f3
KM
150.ss 12
151.if "\\$2"SYNOPSIS" .ss 18
6719a6ea
KM
152.}X 0
153.nr )E 2
1d2340f3 154.SM
6719a6ea
KM
155\&\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6
156..
157' # sub section heading
158.de SS
159.}X \\n()Ru+\\n(INu
160\&\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6
161.br
162..
163' # subroutine for section heading
164.de }X
165.}E
166.ti \\$1
167.sp \\n()Pu
168.ne 2
169.nr )R 0
170.fi
171.it 1 }N
6719a6ea
KM
172.B
173..
174' # end of SH (cf }X above and }N below)
175.de }2
176.nr )E 0
177.}E
178.nr )I .5i
179.ns
180..
181' # italic
182.de I
183.ft 2
184.it 1 }N
185.if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6
186..
187' # bold
188.de B
189.ft 3
190.it 1 }N
191.if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6
192..
193' # small
194.de SM
195.ps 9
196.it 1 }N
197.if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6
198..
199' # combinations of Roman, italic, bold
200.de RI
201.}S 1 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
202..
203.de VS
204'if '\\$1'4' .mc \s12\(br\s0
205..
206.de VE
207'mc
208..
209.de RB
210.}S 1 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
211..
212.de IR
213.}S 2 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
214..
215.de IB
216.}S 2 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
217..
218.de BR
219.}S 3 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
220..
221.de BI
222.}S 3 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
223..
224' # make special case of shift out of italic
225.de }S
226.ds ]F
227.if "\\$1"2" .if !"\\$5"" .ds ]F\^
228.ie !"\\$4"" .}S \\$2 \\$1 "\\$3\f\\$1\\$4\\*(]F" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
229.el \\$3
230.}f
231..
232' # paragraph
233.de LP
234.PP
235..
236.de PP
237.sp \\n()Pu
238.ne 2
239.}E
240.nr )I .5i
241.ns
242..
1d2340f3
KM
243' # synonym for .PP
244.de P
245.PP
246..
6719a6ea
KM
247' # paragraph distance
248.de PD
249.if t .nr )P .4v
250.if n .nr )P 1v
251.if !"\\$1"" .nr )P \\$1v
252..
1d2340f3 253' # paragraph with hanging indent
6719a6ea
KM
254.de HP
255.sp \\n()Pu
256.ne 2
257.if !"\\$1"" .nr )I \\$1n
258.ll \\n(LLu
259.in \\n()Ru+\\n(INu+\\n()Iu
260.ti \\n()Ru+\\n(INu
261.}f
262..
263' # indented paragraph
264.de IP
265.TP \\$2
266\&\\$1
267..
1d2340f3 268' # tagged paragraph (paragraph with hanging label)
6719a6ea
KM
269.de TP
270.if !"\\$1"" .nr )I \\$1n
271.sp \\n()Pu
1d2340f3 272.ne 1.1v
6719a6ea
KM
273.in \\n()Ru
274.nr )E 1
275.ns
276.it 1 }N
277.di ]B
278..
279' # end of TP (cf }N below)
280.de }1
281.ds ]X \&\\*(]B\\
282.nr )E 0
283.if !"\\$1"" .nr )I \\$1n
284.}f
285.ll \\n(LLu
286.in \\n()Ru+\\n(INu+\\n()Iu
287.ti \\n(INu
288.ie !\\n()Iu+\\n()Ru-\w@\\*(]X@u-3p \{\\*(]X
289.br\}
290.el \\*(]X\h@|\\n()Iu+\\n()Ru@\c
291.}f
292..
293' # handle end of 1-line features
294.de }N
295.if \\n()E .br
296.di
297.if "\\n()E"0" .}f
298.if "\\n()E"1" .}1
299.if "\\n()E"2" .}2
300.nr )E 0
301..
302' # increase relative indent
303.de RS
304.nr ]\\n+()p \\n()I
305.nr )\\n()p \\n()R
306.ie !"\\$1"" .nr )R +\\$1n
307.el .nr )R +\\n()I
308.nr )I .5i
309.}E
310..
1d2340f3
KM
311.de DS
312.RS
313.nf
314.sp
315..
6719a6ea
KM
316' # decrease relative indent
317.de RE
318.if !"\\$1"" \{.ie "\\$1"0" .nr )p 1 1
319. el .nr )p \\$1 1\}
320.ds ]i \\*(]I\\n()p
321.ds ]r \\*(]R\\n()p
322.nr )I \\*(]i
323.nr )R \\*(]r
324.if \\n()p .nr )p -1
325.}E
326..
1d2340f3
KM
327.de DE
328.fi
329.RE
330.sp .5
331..
6719a6ea
KM
332.nr )p 0 1
333.ds ]I \\\\n(]
334.ds ]R \\\\n()
1d2340f3 335.bd S B 3
6719a6ea
KM
336.if t .ds R \(rg
337.if n .ds R (Reg.)
338.ds S \s10
339.hy 14
1d2340f3 340.if "\*(.T"va" .po -0.4i