chiark / gitweb /
Rearrange so as not to include Linux headers unless we need to.
[tripe] / doc / tmac.rfc
1 .\" -*-nroff-*-
2 .
3 .\"----- Page layout --------------------------------------------------------
4 .
5 .pl 10.0i
6 .ie t \{\
7 .  po 1i
8 .  pl 11i
9 .  if \n(.g \{\
10 .    fam P
11 .  \}
12 .\}
13 .el \{\
14 .  po 0
15 .  ll 7.2i
16 .  lt 7.2i
17 .  nr LT 7.2i
18 .  nr LL 7.2i
19 .  ad l
20 .\}
21 .ds LF Author
22 .ie t .ds RF Page %
23 .el .ds RF FORMFEED[Page %]
24 .ds CF
25 .ds LH RFC XXXX
26 .ds RH Date
27 .ds CH Title
28 .hy 0
29 .
30 .\"----- Font handling ------------------------------------------------------
31 .
32 .\" .Ff font [stuff more-stuff]
33 .\" Without stuff, changes to font.  With stuff, prints stuff in font
34 .\" and more-stuff in the current font, with no intervening space.
35 .ie t \{\
36 .  de Ff
37 .  ie '\\$2'' \f\\$1\c
38 .  el \&\f\\$1\\$2\fP\\$3
39 ..
40 .\}
41 .el \{\
42 .de Ff
43 .if !'\\$2'' \\$2\\$3
44 ..
45 .\}
46 .
47 .\" .R|.B|.I|... [stuff more-stuff]
48 .\" Change to appropriate font, or print stuff in chosen font followed
49 .\" by more-stuff in current font, with no intervening space.
50 .de R
51 .Ff R "\\$1" "\\$2"
52 ..
53 .de B
54 .Ff B "\\$1" "\\$2"
55 ..
56 .de I
57 .Ff I "\\$1" "\\$2"
58 ..
59 .de P
60 .Ff P "\\$1" "\\$2"
61 ..
62 .de C
63 .Ff (CR "\\$1" "\\$2"
64 ..
65 .de CB
66 .Ff (CB "\\$1" "\\$2"
67 ..
68 .de CI
69 .Ff (CI "\\$1" "\\$2"
70 ..
71 .de H
72 .Ff (HR "\\$1" "\\$2"
73 ..
74 .de HB
75 .Ff (HB "\\$1" "\\$2"
76 ..
77 .de HI
78 .Ff (HI "\\$1" "\\$2"
79 ..
80 .
81 .\"----- Titling ------------------------------------------------------------
82 .
83 .\" .TL left right
84 .\" Typesets one of the RFC header lines.
85 .de TL
86 .B
87 .tl '\\$1''\\$2'
88 .P
89 ..
90 .
91 .\" .TT number author title
92 .\" Sets the main title, and fiddles the running headers and footers.
93 .ds RN xxxx
94 .de TT
95 .ds LH RFC \\$1
96 .ds LF \\$2
97 .ds RH \\$3
98 .ds CH \\$4
99 .HB
100 .ps 18
101 .ce
102 \&\\$4
103 .ps
104 .P
105 .fi
106 .in +3m
107 ..
108 .
109 .\" .TI level title [number]
110 .\" Sets a title without a number.
111 .nr S0 14
112 .nr S1 12
113 .nr S2 10
114 .nr S3 10
115 .de TI
116 .if t .sp 1
117 .ne 4
118 .ti -3m
119 .nr _i 3m
120 .ps \\n(S\\$1
121 .HB
122 .if !'\\$3'' \{\
123 .  ie t \&\\$3.\h'\\n(_iu-\w'\\$3.'u'\c
124 .  el \&\\$3.\ \ \c
125 .\}
126 \&\\$2
127 .P
128 .ps
129 .br
130 ..
131 .
132 .\" .Tn title
133 .\" Sets a level-n title (n = 0, 1, 2, 3).  Does automatic numbering.
134 .nr T0 0 1
135 .de T0
136 .nr T1 0 1
137 .TI 0 "\\$1" "\\n+(T0"
138 ..
139 .de T1
140 .nr T2 0 1
141 .TI 1 "\\$1" "\\n(T0.\\n+(T1"
142 ..
143 .de T2
144 .nr T3 0 1
145 .TI 2 "\\$1" "\\n(T0.\\n(T1.\\n+(T2"
146 ..
147 .de T3
148 .TI 3 "\\$1" "\\n(T0.\\n(T1.\\n(T2.\\n+(T3"
149 ..
150 .
151 .\" .AP
152 .\" Starts the appendix.
153 .de AP
154 .nr T0 0 1
155 .af T0 A
156 ..
157 .
158 .\"----- Bibliography -------------------------------------------------------
159 .
160 .\" .BS thing
161 .\" Starts a bibliography section.  The thing is the widest bibliography
162 .\" key.
163 .de BS
164 .nr bw \\w'[\\$1]\h'1m''
165 .in +\\n(bwu
166 ..
167 .
168 .\" .BR ref
169 .\" Puts in the header for a bibliography item.
170 .de BR
171 .ne 2
172 .ti -\\n(bwu
173 [\\$1]\h'\\n(bwu-\\w'[\\$1]'u'\c
174 ..
175 .
176 .\" .BE
177 .\" Ends a bibliography section.
178 .de BE
179 .in -4
180 ..
181 .
182 .\"----- Lists of things ----------------------------------------------------
183 .
184 .\" .LS [indent]
185 .\" Starts a list
186 .nr ld 0
187 .de LS
188 .ie '\\$1'' .ds _i 4n
189 .el .ds _i \\$1
190 .in +\\*(_i
191 .rn L L\\n(ld
192 .rn LE E\\n(ld
193 .de LE
194 .in -\\*(_i
195 .rn L\\n(ld L
196 .rn E\\n(ld LE
197 .nr ld \\n(ld
198 \\..
199 .nr ld +1
200 ..
201 .
202 .\" .LE
203 .\" Ends a list
204 .de LE
205 .ab unexpected .LE (at line \\n(.c)
206 ..
207 .
208 .\" .UL
209 .\" Starts an unordered list
210 .nr ul 0
211 .de do
212 .ie t .ds b\\$1 \\$2
213 .el .ds b\\$1 \\$3
214 ..
215 .do 0 \(bu o
216 .do 1 \(em \-
217 .do 2 \(sq []
218 .do 3 \(ci *
219 .de UL
220 .LS
221 .ds L \\*(b\\n(ul
222 .nr ul +1
223 .am E
224 .nr ul -1
225 \\..
226 ..
227 .
228 .\" .OL
229 .\" Starts an ordered (numbered) list
230 .nr ol 0
231 .de do
232 .ds l\\$1 \\$2
233 .ds m\\$1 \\$3
234 .ds r\\$1 \\$4
235 ..
236 .do 0 "" 1 .
237 .do 1 ( a )
238 .do 2 ( i )
239 .do 3 "" A .
240 .
241 .de OL
242 .LS
243 .nr i\\n(ol 0 1
244 .af i\\n(ol \\*(m\\n(ol
245 .ds L \\*(l\\n(ol\\\\n+(i\\n(ol\\*(r\\n(ol
246 .nr ol +1
247 .am E
248 .nr ol -1
249 \\..
250 ..
251 .
252 .\" .DL
253 .\" Starts a definition list
254 .de DL
255 .LS 1i
256 ..
257 .
258 .\" .DI name
259 .\" Starts a definition item for `name'
260 .de DI
261 .br
262 .B
263 \h'-1i'\\$1\c
264 .ie \w'\\$1\h'2n''u<1i \h'1i-\w'\\$1'u'\c
265 .el .br
266 .P
267 ..
268 .
269 .\" .LI [tag]
270 .\" Starts a new list item
271 .de LI
272 .br
273 .ie '\\$1'' .ds LL \\*L
274 .el .ds LL \\$1
275 \h'-\w'\\*(LL\h'1n''u'\\*(LL\h'1n'\c
276 ..
277 .
278 .\" --- Displays ---
279 .
280 .\" .QS
281 .\" Starts a display.
282 .de QS
283 .in +4n
284 .ll -4n
285 ..
286 .
287 .\" .QE
288 .\" Ends a display
289 .de QE
290 .in -4n
291 .ll +4n
292 ..
293 .
294 .\" .VS
295 .\" Starts a listing kinda thing.
296 .de VS
297 .QS
298 .nf
299 .fam C
300 ..
301 .
302 .\" .VE
303 .\" Ends a listing kinda thing.
304 .de VE
305 .fam P
306 .fi
307 .QE
308 ..
309 .
310 .\" --- Mathematical things ---
311 .
312 .\" Superscript and subscript (not very good).
313 .ie t \{\
314 .  ds ^( \s8\v'-.5m'
315 .  ds ^) \v'.5m'\s0
316 .  ds _( \s8\v'.2m'
317 .  ds _) \v'-.2m'\s0
318 .\}
319 .el \{\
320 .  ds ^( ^
321 .  ds ^)
322 .  ds _( _
323 .  ds _)
324 .\}
325 .
326 .de K
327 \&\\$2\c
328 .I K \c
329 .R \*(_(\\$1\*(_)\c
330 \&\\$3
331 ..
332 .de K'
333 \&\\$2\c
334 .I K \c
335 .R \z'\*(_(\\$1\*(_)\c
336 \&\\$3
337 ..
338 .
339 .\"------ That's all, folks -------------------------------------------------