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