tmac.cs - 9base - revived minimalist port of Plan 9 userland to Unix | |
git clone git://git.suckless.org/9base | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
tmac.cs (21324B) | |
--- | |
1 '''\" coversheet to match version… | |
2 '''\" from comp center 1.… | |
3 '''\" 1/22/97 spacing change in a… | |
4 '''\" email on separate l… | |
5 '''\" registers | |
6 '''\" a - abstract continuation flag - 0 (no), >0 (yes) | |
7 '''\" b - mercury selections counter | |
8 '''\" c - distribution continuation flag - 0 (no), 1 (yes) | |
9 '''\" d - flag for length calculation | |
10 '''\" e - complete copy basic distribution length | |
11 '''\" g - complete copy overflow distribution length | |
12 '''\" h - cover sheet basic distribution length | |
13 '''\" i - cover sheet overflow distribution length | |
14 '''\" k - keyword flag - 0 (none), 1 (some) - reused as scratch | |
15 '''\" l - number of vertical units per line - troff | |
16 '''\" m - memorandum type flag - 1 TM, 2 IM, 3 TC | |
17 '''\" n - document number counter | |
18 '''\" o - title flag - 0 (no), 1 (yes - vertical size of title di… | |
19 '''\" p - proprietary notice flag - 0 (none), 1 (default), 2(BR) | |
20 '''\" r - security flag - 0 (no), 1 (yes) | |
21 '''\" s - software flag - 0 (no), 1 (yes) | |
22 '''\" t - mark title position | |
23 '''\" u - author count | |
24 '''\" q v w x y z- scratch - but remembered | |
25 '''\" aa - ship to itds | |
26 '''\" strings | |
27 '''\" a) b)- mercury info | |
28 '''\" d) - date | |
29 '''\" k) - keywords | |
30 '''\" N1 - first document number | |
31 '''\" p) q) r)- proprietary 1 | |
32 '''\" s) - time stamp string | |
33 '''\" t) - memo type (TM, IM, TC) | |
34 '''\" v) - document nos | |
35 '''\" w) - filing case nos | |
36 '''\" x) - work project nos | |
37 '''\" e( - earlier document | |
38 '''\" m( n( o( p(- authors 1-3 sig | |
39 '''\" r( - responsible person | |
40 '''\" s( - S software string | |
41 '''\" t( - memo type ("for Technical Memorandum", etc.) | |
42 '''\" x( - Mailing Label or DRAFT | |
43 '''\" N2 N3- 2nd 3rd document number | |
44 '''\" Fi - up to 3 filing cases | |
45 '''\" Xi - up to 3 work program numbers | |
46 '''\" diversions | |
47 '''\" WB - abstract | |
48 '''\" ZI - author info section | |
49 '''\" ZC - complete copy addressee primary | |
50 '''\" ZO - complete copy addressee overflow | |
51 '''\" ZS - cover sheet addressee primary | |
52 '''\" ZD - cover sheet addressee overflow | |
53 '''\" ZN - document number info | |
54 '''\" WT - title | |
55 '''\" | |
56 '''\" initialization | |
57 '''\" | |
58 '''\" get ms if not loaded | |
59 .if !\n(PS .so /usr/lib/tmac/tmac.s | |
60 . \" to foil ms | |
61 .if !'\*(d)'' \{\ | |
62 . tm You're trying to load the coversheet macros twice - havoc wi… | |
63 . tm I'm quitting to keep you from wasting paper | |
64 . ex \} | |
65 .rn FE F6 | |
66 .nr ST 0 | |
67 .nr CS 1 | |
68 .ch NP 16i | |
69 .ch FO 16i | |
70 .ch FX 16i | |
71 .ch BT 16i | |
72 .nr FM .01i | |
73 .nr 1T 1 | |
74 .nr BE 1 | |
75 .nr PI 5n | |
76 .if !\n(PD .nr PD 0.3v | |
77 .pl 11i | |
78 .de FT | |
79 .fp 1 H | |
80 .fp 2 HI | |
81 .fp 3 HB | |
82 .fp 4 HX | |
83 .ps 10 | |
84 .vs 12 | |
85 .. | |
86 .de FB | |
87 .ie !'\\*(TF'' .FP \\*(TF | |
88 .el .FP times | |
89 .ps 10 | |
90 .vs 12 | |
91 .. | |
92 .FT | |
93 .de FE | |
94 .F6 | |
95 .nr F4 +\\n(FP | |
96 .. | |
97 .nr a 0 1 | |
98 .nr b 0 1 | |
99 .nr c 0 | |
100 .nr d 0 | |
101 .nr e 0 | |
102 .nr g 0 | |
103 .nr h 6 | |
104 .nr i 0 | |
105 .nr k 0 | |
106 .nr m 0 | |
107 .nr n 0 1 | |
108 .nr o 0 | |
109 .nr p 1 | |
110 .nr q 0 | |
111 .nr r 0 | |
112 .nr s 0 | |
113 .nr t 0 | |
114 .nr u 0 1 | |
115 .nr v 0 | |
116 .nr w 0 | |
117 .nr x 0 | |
118 .nr y 0 | |
119 .nr z 0 | |
120 .nr dv 0 | |
121 .if '\*(.T'aps' .nr dv 1 | |
122 '''\" initialize units per vertical space | |
123 .nr l 120 | |
124 .nr lp 66 | |
125 .nr np 2 1 | |
126 .af np i | |
127 .nr tp 2 1 | |
128 .nr tc 2 | |
129 .af tc i | |
130 .nr la 0 | |
131 .nr a1 0 | |
132 .nr a2 0 | |
133 .nr ar 0 | |
134 .nr u! 1 | |
135 .nr ud 1 | |
136 .nr ra 1 | |
137 .di ZI | |
138 .di | |
139 .di ZN | |
140 .di | |
141 .di ZC | |
142 .di | |
143 .di ZO | |
144 .di | |
145 .di ZS | |
146 .di | |
147 .di ZD | |
148 .di | |
149 '''\"initialize date string - keep for 1st pg of tm | |
150 .if \n(mo-0 .ds d) January | |
151 .if \n(mo-1 .ds d) February | |
152 .if \n(mo-2 .ds d) March | |
153 .if \n(mo-3 .ds d) April | |
154 .if \n(mo-4 .ds d) May | |
155 .if \n(mo-5 .ds d) June | |
156 .if \n(mo-6 .ds d) July | |
157 .if \n(mo-7 .ds d) August | |
158 .if \n(mo-8 .ds d) September | |
159 .if \n(mo-9 .ds d) October | |
160 .if \n(mo-10 .ds d) November | |
161 .if \n(mo-11 .ds d) December | |
162 .as d) " \n(dy, 20\n(yr | |
163 .ds DY \*(d) | |
164 ''' \" initialize strings | |
165 .ds m! | |
166 .ds m( | |
167 .ds n! | |
168 .ds n( | |
169 .ds o! | |
170 .ds o( | |
171 .ds x! | |
172 .ds y! | |
173 .ds z! | |
174 ''' \" initialize proprietary notice | |
175 .ds o) "Lucent Technologies \(em PROPRIETARY | |
176 .ds p) "Use pursuant to Company Instructions | |
177 .ds q) | |
178 .ds r) | |
179 ''' \" initialize trademark symbol | |
180 .ds MT \v'-0.5m'\s-4TM\s+4\v'0.5m' | |
181 .ds s) 0 | |
182 ''' \"initialize csmacro version string | |
183 .ds ve MCSL (07/12/90) | |
184 ....in 0 | |
185 '''\" | |
186 ''' \" macros to collect information | |
187 '''\" | |
188 .de DT \" macro for date | |
189 '''\" store date if non-empty | |
190 .if !'\\$1'' .ds d) \\$1 \\$2 \\$3 \\$4 | |
191 .ds DY \\$1 \\$2 \\$3 \\$4 | |
192 .. | |
193 .de TI \" macro for title -TI = mm(TL) | |
194 .br | |
195 .nr aa 0 | |
196 .nr TV 1 | |
197 .ds x( "Mailing Label \} | |
198 .in 0 | |
199 .fi | |
200 .ll 4.25i | |
201 '''\" diversion for title ZT = mm… | |
202 .di WT | |
203 .. | |
204 .de AH \" macro for author info AH = mm(A… | |
205 '''\" name loc dept ext room mail_addr company | |
206 '''\" don't count author unless n… | |
207 .br | |
208 .di | |
209 .if !'\\$1'' .nr u \\n+u | |
210 .nr AV \\nu | |
211 .if \\nu=1 \{\ | |
212 . br | |
213 '''\" end title diversion on firs… | |
214 . di | |
215 . nr o \\n(dn | |
216 . ll | |
217 . nf | |
218 . ds d! \\$3 | |
219 . nr m2 \\$3/10 \} | |
220 .ta 0.3i 3.i 4i 5.5i | |
221 .br | |
222 .ds D\\nu \\$2 \\$3 | |
223 .ds \\nuL \\$5, x\\$4 | |
224 '''\" append to author list ZI = … | |
225 .da ZI | |
226 \\$1 \\$2 \\$5 \\$4 \\$7 | |
227 .br | |
228 .da | |
229 .if !'\\$6'' \{\ | |
230 .da ZI | |
231 (\\$6) | |
232 .br | |
233 .da \} | |
234 '''\" end append; info for signat… | |
235 .AA \\nu "\\$1" \\$3 \\$2 "\\$4" \\$5 \\$6 | |
236 .ta 0.5i 1.0i 1.5i 2.0i 2.5i | |
237 .. | |
238 .de AA | |
239 .\"ft 3 | |
240 .di M\\$1 | |
241 \\$2 | |
242 .di | |
243 .di A\\$1 | |
244 \\$2 | |
245 .if !'\\$3'' Org. \\$3 | |
246 .if !'\\$4'' \\$4 \\$6 | |
247 .if !'\\$5'' \\$5 | |
248 .if !'\\$7'' \\$7 | |
249 .sp .05i | |
250 .br | |
251 .di | |
252 .ft | |
253 .sy echo \\$2 >/tmp/tt\\n($$ | |
254 .sy sed -f /usr/lib/tmac/name.sed /tmp/tt\\n($$ >/tmp/tx\\n($$ | |
255 .so /tmp/tx\\n($$ | |
256 .sy rm /tmp/tx\\n($$ /tmp/tt\\n($$ | |
257 .if \\$1<2 .ds T1 \\*(T1-gre | |
258 .da G9 | |
259 \\$4-\\$3-\\*(T1 | |
260 .br | |
261 .da | |
262 .if !'\\*(d!'\\$3' \{\ | |
263 . nr u! \\n(u!+1 | |
264 . nr m3 \\$3/10 | |
265 . if !\\n(m2=\\n(m3 .nr ud \\n(ud+1 \} | |
266 .ie \\$1<4 \{\ | |
267 . as m! \\l'2.25i' | |
268 . as m( \\$2 \} | |
269 .el .ie \\$1<7 \{\ | |
270 . as n! \\l'2.25i' | |
271 . as n( \\$2 \} | |
272 .el \{\ | |
273 . as o! \\l'2.25i' | |
274 . as o( \\$2 \} | |
275 .. | |
276 .de TO \"begin list of im to people | |
277 .nr TO 1 | |
278 .di 1T | |
279 .. | |
280 .de ET \"end list of im to people & output pg | |
281 .di | |
282 .SR | |
283 .. | |
284 .de AP \" at&t responsible person AP = mm… | |
285 .br | |
286 .di | |
287 .if !'\\$1'' .ds r( \\$1 | |
288 .rm AP | |
289 .. | |
290 .de SA \" macro for abstract info SA = mm… | |
291 .br | |
292 .ie \\n(.$ \{\ | |
293 .ds a( \\$1 | |
294 .if '\\$1'no' .ds a(\} | |
295 .el .ds a( ABSTRACT | |
296 .nr CS 0 | |
297 .di | |
298 .fi | |
299 .nr LL 7.0i | |
300 .FB | |
301 .ft 1 | |
302 .di WB \" WB = mm(aS) | |
303 .. | |
304 .de SE \" macro for end of abstract info… | |
305 .br | |
306 .di | |
307 .nr la \\n(dn | |
308 .nr CS 1 | |
309 .ll | |
310 .FT | |
311 .ft 1 | |
312 .nf | |
313 .. | |
314 .de KW \" macro for keyword info KW = mm(… | |
315 .ds k) | |
316 .if !'\\$1'' .as k) \\$1 | |
317 .if !'\\$2'' .as k); \\$2 | |
318 .if !'\\$3'' .as k); \\$3 | |
319 .if !'\\$4'' .as k); \\$4 | |
320 .if !'\\$5'' .as k); \\$5 | |
321 .if !'\\$6'' .as k); \\$6 | |
322 .if !'\\$7'' .as k); \\$7 | |
323 .if !'\\$8'' .as k); \\$8 | |
324 .if !'\\$9'' .as k); \\$9 | |
325 '''\" set k flag if we have some … | |
326 .ie !'\\*(k)'' .nr k 1 | |
327 .el .nr k 0 | |
328 .. | |
329 .de TY \" macro for document type TY = mm… | |
330 .if '\\$1'TM' \{\ | |
331 . nr m 1 | |
332 . ds t) TM | |
333 . ds QF TECHNICAL MEMORANDUM | |
334 . ds t( "for Technical Memorandum \} | |
335 .if '\\$1'IM' \{\ | |
336 . nr m 2 | |
337 . ds t) IM | |
338 . ds QF INTERNAL MEMORANDUM | |
339 . ds t( "for Internal Memorandum \} | |
340 .if '\\$1'TC' \{\ | |
341 . nr m 3 | |
342 . ds t) TC | |
343 . ds QF TECHNICAL CORRESPONDENCE | |
344 . ds t( "for Technical Correspondence \} | |
345 .ie '\\$2'y' .nr s 1 | |
346 .el .nr s 0 | |
347 .. | |
348 .de NU \" macro for document number info … | |
349 .ie \\ns=1 .ds s( S | |
350 .el .ds s( | |
351 .ie \\n(wp=0 \{\ | |
352 . ie '\\$5'' .ds CX 000000-0000 | |
353 . el .ds CX \\$5 | |
354 . ds X1 \\*(CX | |
355 . nr wp \\n(wp+1 \} | |
356 .el \{\ | |
357 . ds CX \\$5 | |
358 . if !'\\$5'' \{\ | |
359 . if \\n(wp=1 .ds X2 \\*(CX | |
360 . if \\n(wp=2 .ds X3 \\*(CX | |
361 . if \\n(wp=3 .ds X4 \\*(CX | |
362 . if \\n(wp=4 .ds X5 \\*(CX | |
363 . nr wp \\n(wp+1 | |
364 . ds x) s\}\} | |
365 .if !'\\$4'' \{\ | |
366 . ie !\\n(fc=0 \{\ | |
367 . if \\n(fc=1 .ds F2 \\$4 | |
368 . if \\n(fc=2 .ds F3 \\$4 | |
369 . if \\n(fc=3 .ds F4 \\$4 | |
370 . if \\n(fc=4 .ds F5 \\$4 | |
371 . ds w) s | |
372 . nr fc \\n(fc+1 \} | |
373 . el \{\ | |
374 . ds F1 \\$4 | |
375 . nr fc \\n(fc+1 \} \} | |
376 .ie !'\\$1'' \{\ | |
377 . ds NN \\$1-\\$2-\\$3\\*(t)\\*(s( | |
378 . if \\nn=0 .ds N1 \\*(NN | |
379 . if \\nn=1 \{\ | |
380 . ds v) s | |
381 . ds N2 \\*(NN\} | |
382 . if \\nn=2 .ds N3 \\*(NN | |
383 . if \\nn=3 .ds N4 \\*(NN | |
384 . if \\nn=4 .ds N5 \\*(NN | |
385 . ie \\nn<4 .as x! \\l'2.25i' | |
386 . el ie \\nn<7 .as y! \\l'2.25i' | |
387 . el .as z! \\l'2.25i' | |
388 . nr n \\n+n \} | |
389 .if !'\\$6'' \{\ | |
390 . ie !\\n(a!=0 \{\ | |
391 . if \\n(a!=1 .as Z1 " \\$6 | |
392 . if \\n(a!=2 .as Z1 \\$6 | |
393 . nr a! \\n(a!+1 \} | |
394 . el \{\ | |
395 . ds Z1 " \\$6 | |
396 . nr a! \\n(a!+1 \} \} | |
397 .el .ds NN | |
398 .ta 0.8i 3.5i 5.55i | |
399 .br | |
400 .da ZN \" ZN = mm(dM fC wO) | |
401 \\*(NN \\$4 \\*(CX | |
402 .br | |
403 .da | |
404 .ta 0.5i 1.0i 1.5i | |
405 .. | |
406 .de MY \" macro for mercury selections MY… | |
407 .ds a) | |
408 .ds b) | |
409 .if '\\$1'y' \{\ | |
410 . as a) " CHM - Chemistry and Materials | |
411 . nr b \\n+b \} | |
412 .if '\\$2'y' \{\ | |
413 . as a) " CMM - Communications | |
414 . nr b \\n+b \} | |
415 .if '\\$3'y' \{\ | |
416 . as a) " CMP - Computing | |
417 . nr b \\n+b | |
418 . if \\nb=3 .rn a) b) \} | |
419 .if '\\$4'y' \{\ | |
420 . as a) " ELC - Electronics | |
421 . nr b \\n+b | |
422 . if \\nb=3 .rn a) b) \} | |
423 .if '\\$5'y' \{\ | |
424 . as a) " LFS - Life Sciences | |
425 . nr b \\n+b | |
426 . if \\nb=3 .rn a) b) \} | |
427 .if '\\$6'y' \{\ | |
428 . as a) " MAS - Mathematics and Statistics | |
429 . nr b \\n+b | |
430 . if \\nb=3 .rn a) b) \} | |
431 . if \\nb<6 \{\ | |
432 . if '\\$7'y' \{\ | |
433 . as a) " PHY - Physics | |
434 . nr b \\n+b | |
435 . if \\nb=3 .rn a) b) \} \} | |
436 . if \\nb<6 \{\ | |
437 . if '\\$8'y' \{\ | |
438 . as a) " MAN - Manufacturing | |
439 . nr b \\n+b \} \} | |
440 .if \\nb=3 .rn b) a) | |
441 .. | |
442 .de RL \" lucent distribution ok RL = mm(… | |
443 .if '\\$1'n' .nr ra 2 | |
444 .rm RL | |
445 .. | |
446 .de ED \" earlier document number ED = mm… | |
447 .if !'\\$1'' .ds e( \\$1 | |
448 .rm ED | |
449 .. | |
450 .de PR \" macro for proprietary marking P… | |
451 .if '\\$1'BP' .nr p 1 | |
452 .if '\\$1'BR' \{\ | |
453 . nr p 2 | |
454 . ds o) "Lucent Technologies \(em PROPRIETARY (RESTRICTED) | |
455 . ds p) "Solely for authorized persons having a need to know | |
456 . ds q) " pursuant to Company Instructions \} | |
457 .if '\\$1'0' .nr p 0 | |
458 .. | |
459 .de GS \" GS = mm(gS) | |
460 .nr r 1 | |
461 .. | |
462 .de CI | |
463 .. | |
464 .de XE | |
465 '''\" basic distribution leng-to be tailo… | |
466 .if \\nd=0 \{\ | |
467 . nr d 1 | |
468 . if \\nr=0 .nr e \\ne+2 | |
469 . if \\nu<=3 .nr e \\ne+3 | |
470 . if \\nu<=6 .nr e \\ne+3 | |
471 . if \\nu<=9 .nr e \\ne+3 | |
472 . if \\nn<=3 .nr e \\ne+2 | |
473 . if \\nn<=6 .nr e \\ne+2 | |
474 . if \\nn<=9 .nr e \\ne+2 | |
475 . if \\n(ra<=2 .nr e \\ne-3 | |
476 . nr e \\ne+27 | |
477 . nr h \\ne \} | |
478 .. | |
479 .de CO \" macro for complete copy address… | |
480 .XE | |
481 .ta 2.0i | |
482 .nf | |
483 .br | |
484 .ie \\ne>0 \{\ | |
485 . da ZC \" ZC = mm(cA) | |
486 . ds y( \\$1 | |
487 . ie '\\$1'y' .so /usr/lib/tmac/complet.1127 | |
488 . el .if !'\\$1'' .so /usr/lib/tmac/complet.\\*(y( | |
489 . dt \\ne OC \} | |
490 .el .da ZC | |
491 .. | |
492 .de OC \" macro for complete copy overflo… | |
493 .ta 2.0i | |
494 .br | |
495 .da | |
496 .da ZO \" ZO = mm(cO) | |
497 .ie \\n(ar>0 .dt \\n(arv ZW | |
498 .el .dt 55 ZW | |
499 .. | |
500 .de ZW | |
501 .br | |
502 .da | |
503 .ie \\n(dn>0 .g (\\n(dn)/\\nl+4 | |
504 .da CZ | |
505 .. | |
506 .de CV \" macro for cover sheet only addr… | |
507 .XE | |
508 .ta 2.0i | |
509 .nf | |
510 .br | |
511 .ie \\nh>0 \{\ | |
512 . da ZS \" ZS = mm(dA) | |
513 . ds y( \\$1 | |
514 . ie '\\$1'y' .so /usr/lib/tmac/cover.1127 | |
515 . el .if !'\\$1'' .so /usr/lib/tmac/cover.\\*(y( | |
516 . dt \\nh OV \} | |
517 .el .da ZD | |
518 .. | |
519 .de OV \" macro for cover sheet only over… | |
520 .ta 2.0i | |
521 .br | |
522 .da | |
523 .da ZD \" ZD = mm(cO) | |
524 .ie \\n(ar>0 .dt \\n(arv WW | |
525 .el .dt 55 WW | |
526 .. | |
527 .de WW | |
528 .br | |
529 .da | |
530 .if \\n(dn>0 .nr i (\\n(dn)/\\nl+4 \" was ie with no el | |
531 .da DZ | |
532 .. | |
533 .de CE \" ending all distribution diversi… | |
534 .br | |
535 .if "\\n(.z"ZC" \{\ | |
536 . nr g 0 | |
537 . rm OC \} | |
538 .if "\\n(.z"ZO" \{\ | |
539 . nr g -1 | |
540 . rm OC \} | |
541 .if "\\n(.z"CZ" \{\ | |
542 . nr g -2 | |
543 . rm OC \} | |
544 .if "\\n(.z"ZS" \{\ | |
545 . nr i 0 | |
546 . rm OV \} | |
547 .if "\\n(.z"ZD" \{\ | |
548 . nr i -1 | |
549 . rm OV \} | |
550 .if "\\n(.z"DZ" \{\ | |
551 . nr i -2 | |
552 . rm )V \} | |
553 .da | |
554 .if \\ng=-1 \{\ | |
555 . ie \\n(dn>0 .nr g (\\n(dn)/\\nl+4 | |
556 . el .nr g 0 \} | |
557 .if \\ni=-1 \{\ | |
558 . ie \\n(dn>0 .nr i (\\n(dn)/\\nl+4 | |
559 . el .nr i 0 \} | |
560 .. | |
561 '''\" | |
562 '''\" macros to help format document | |
563 '''\" | |
564 .de HD | |
565 .po .5i \"was .25 | |
566 .if "\\*(.T"aps" .tl '--''--' | |
567 .sp|0.2i | |
568 .. | |
569 .de FC \" footer macro FC = mm(fO) | |
570 .pl 11.0i | |
571 'bp | |
572 .. | |
573 .de ST \" macro for abstract overflow trap ST = m… | |
574 .ZB | |
575 .rm ST \" ZB = mm(aT) | |
576 .. | |
577 .de ZB | |
578 .ch ST 16i \" macro for abstract overflow trap ZB… | |
579 .if \\na>0 \{\ | |
580 . ft 2 | |
581 . ce | |
582 (continued) | |
583 . ft 1 \} | |
584 .pl 11.0i | |
585 .nr a \\n+a | |
586 .rn ZB XX | |
587 'bp | |
588 .rn XX ZB | |
589 .wh -0.35i ZB | |
590 .HC \" HC = mm(cH) | |
591 .HX \" HX = mm(tH) | |
592 'sp 0.05i | |
593 .ce | |
594 .ft 3 | |
595 Abstract (continued) | |
596 .ft 1 | |
597 .in 0.2i | |
598 'sp 1 | |
599 .FB | |
600 .. | |
601 .de TK \" macro for thick lines TKK = mm(… | |
602 .ps 24 | |
603 \l'7.5i' | |
604 .ps | |
605 .. | |
606 .de HX \" macro for Title headings and te… | |
607 .TK | |
608 'sp 0.05i | |
609 '''\" mark t - Title heading | |
610 .mk t | |
611 .ft 3 | |
612 Title: | |
613 .ft | |
614 'sp|\\ntu | |
615 .in 0.7i | |
616 .WT | |
617 .in 0 | |
618 .ta 0.5i | |
619 .nr q \\no/\\nl | |
620 .ie \\nq>2 'sp|\\ntu+\\nq | |
621 .el 'sp|\\ntu+2 | |
622 .TK | |
623 . \" m1 - mark end of title secti… | |
624 .mk m1 | |
625 .. | |
626 .de HC \" macro for continuation header H… | |
627 .nr np \\n+(np | |
628 .nf | |
629 .in 0 | |
630 .FT | |
631 .ft 3 | |
632 .ta 4.80i | |
633 .nr tc \\n(tp | |
634 \\*(N1\f2 (page \\n(np of \\n(tc) | |
635 .sp 0.1i | |
636 .. | |
637 .de DL \" macro for distribution list hea… | |
638 .ft 3 | |
639 .ta 1.0i 4.75i | |
640 \\$1 \\$2 | |
641 .sp 0.05i | |
642 .ft 1 | |
643 .ta 0.5i 1.0i | |
644 .. | |
645 .de EJ \" macro for ejecting continuation… | |
646 'bp | |
647 .wh 0 HD | |
648 '''\" put out continuation page header & … | |
649 .HC | |
650 .HX | |
651 .. | |
652 .de CP \" macro for continuation page CP … | |
653 '''\" calc vert. units for cc ove… | |
654 .ie \\nv<=\\n(.t .nr v 1 | |
655 .el .nr v 0 | |
656 .if \\nv=1 .if \\nw<=\\n(.t .nr v 2 | |
657 . \" check if cont page needs to be eject… | |
658 .in 0 | |
659 .if \\nc=1 \{\ | |
660 . \" - if no abstract overflow | |
661 . if \\na=0 .EJ | |
662 . if \\na>0 \{\ | |
663 . \"or if abstract over but no room for l… | |
664 . ie \\nv<2 .EJ | |
665 . \" just tk line if abstract over & room… | |
666 . el .TK \} | |
667 . FT | |
668 . ie \\ne=0 \{\ | |
669 . if \\ng>4 .if \\ni>4 .DL "Complete Copy" "Cover Sheet O… | |
670 . if \\ng>4 .if !\\ni>4 .DL "Complete Copy" "" | |
671 . if !\\ng>4 .if \\ni>4 .DL "" "Cover Sheet Only" \} | |
672 . el \{\ | |
673 . if \\ng>4 .if \\ni>4 .DL "Complete Copy (continued)" "C… | |
674 . if \\ng>4 .if !\\ni>4 .DL "Complete Copy (continued)" "" | |
675 . if !\\ng>4 .if \\ni>4 .DL "" "Cover Sheet Only (continu… | |
676 . mk z | |
677 . nr q \\n(.t/\\nl | |
678 '''\" put out complete copy list … | |
679 . in 0.2i | |
680 . ZO | |
681 . in 0 | |
682 . mk x | |
683 . sp|\\nzu | |
684 . in 4i | |
685 '''\" put out cover sheet list ov… | |
686 . ZD | |
687 . mk y | |
688 . in 0 | |
689 . if \\nx-\\ny .sp|\\nxu | |
690 . TK \} | |
691 .. | |
692 .de ZP \"compute total pages and … | |
693 '''\" calculate vert. units for cc overfl… | |
694 .ie \\ng>4 .nr v (\\ng)*\\nl | |
695 .el .nr v 0 | |
696 '''\" also for cs overflow (if an… | |
697 .ie \\ni>4 .nr w (\\ni)*\\nl | |
698 .el .nr w 0 | |
699 .ie \\nv>\\nw .nr j \\nv | |
700 .el .nr j \\nw | |
701 . \" set c=1 if either g or i >0 | |
702 .if \\ng>4 .nr c 1 | |
703 .if \\ni>4 .nr c 1 | |
704 . \" calculate total pages in job… | |
705 . \" a1 - page 1 portion abstract… | |
706 .nr a1 \\nyu-\\nxu-1v | |
707 .ie \\n(la>\\n(a1 \{\ | |
708 . \" ar - remainder abstract (uni… | |
709 . nr ar \\n(la-\\n(a1 | |
710 . nr tp \\n+(tp | |
711 . \" a2 - available continuation … | |
712 . \" m1 is mark after tk line aft… | |
713 . \" 2v for Abstract (continued) … | |
714 . nr a2 11.0i-\\n(m1-2v | |
715 . ZZ \} | |
716 .el .if \\nc>0 .nr tp \\n+(tp | |
717 .. | |
718 .de ZZ \" ZZ = mm(t1) | |
719 .ie \\n(ar>\\n(a2 \{\ | |
720 . nr ar \\n(ar-\\n(a2 | |
721 . nr tp \\n+(tp | |
722 . ZZ \} | |
723 .el .if \\n(ar+\\nj>\\n(a2 .nr tp \\n+(tp | |
724 .. | |
725 '''\" | |
726 '''\" main macro to handle output of cover sheet | |
727 '''\" mm(CS) | |
728 .de SC | |
729 .nr CS 0 | |
730 .nr ST 1 | |
731 .if \\nu=0 \{\ | |
732 . tm WARNING: author must be supplied \} | |
733 .if \\no=0 \{\ | |
734 . tm WARNING: document title must be supplied \} | |
735 .if \\nm=0 \{\ | |
736 . tm WARNING: memorandum type undefined or unknown \} | |
737 .if \\nm=1 .if \\nb=0 \{\ | |
738 . tm WARNING: technical memoranda must have at least one mercury … | |
739 .if \\nn=0 \{\ | |
740 . tm WARNING: document number must be supplied \} | |
741 .XE | |
742 .ll 7.5i | |
743 .ft 1 | |
744 .if \\n(nl .bp | |
745 .in 0 | |
746 .HD | |
747 '''\" the rs is to restore spacing - ditches big space at top | |
748 .rs | |
749 .sp1 | |
750 .sp 0.05i | |
751 .nf | |
752 .ps 16 | |
753 .ft 3 | |
754 .ta 4.85i | |
755 . \" put out page 1 heading | |
756 Document Cover Sheet | |
757 .wh 0 HD | |
758 .sp 0.1i | |
759 .ta 0.15i 4.55i | |
760 \s36\(FA\s0 \\*(t( | |
761 .ft | |
762 .ps 10 | |
763 .HX | |
764 .sp 0.05i | |
765 .ft 3 | |
766 .ie \\nu>1 .ds u) s | |
767 .el .ds u) | |
768 .ta 0.5i 3.0i 3.95i 5.25i | |
769 Author\\*(u) (Computer Address) Location Phone Num… | |
770 .ft | |
771 '''\" output author info | |
772 .ZI | |
773 .if !'\\*(r('' \{\ | |
774 . ta 0.3i 2.6i | |
775 \\*(r( (Responsible BL Person) \} | |
776 .TK | |
777 .sp 0.05i | |
778 .ft 3 | |
779 .ta 1.0i 3.3i 5.55i | |
780 Document No\\*(v). Filing Case No\\*(w). Project N… | |
781 .ft | |
782 .sp 0.05i | |
783 '''\" output document number | |
784 .ZN | |
785 .TK | |
786 '''\" output keywords if they exi… | |
787 .if \\nk>0 \{\ | |
788 . ft 3 | |
789 Keywords: | |
790 . ft | |
791 . sp 0.05i | |
792 . ti 0.2i | |
793 \\*(k) | |
794 . TK \} | |
795 '''\" output mercury info if it e… | |
796 .if \\nb>0 \{\ | |
797 . ft 3 | |
798 MERCURY Announcement Bulletin Sections | |
799 . ft | |
800 . sp 0.05i | |
801 . ta 0.6i 3.1i 5.6i | |
802 . ps 8 | |
803 . if \\nb>3 \\*(b) | |
804 \\*(a) | |
805 . ps | |
806 . TK \} | |
807 .ft 3 | |
808 Abstract | |
809 .ft | |
810 .mk x | |
811 .nr b1 \\nx/\\n(.v+1 | |
812 .nr b2 (\\n(b1*\\n(.v)-\\nx | |
813 .sp \\n(b2u | |
814 .mk x | |
815 '''\" calculate position (19v includes 2v to print version at bottom of … | |
816 .nr y \\n(lpv-19v | |
817 .if \\n(F4>0 .nr y \\ny-\\n(F4 | |
818 .sp|\\nyu | |
819 .sp -1 | |
820 .ZP | |
821 '''\" handle abstract page 1 cont… | |
822 .ie \\n(la>\\n(a1 \{\ | |
823 . ce | |
824 . ft2 | |
825 (continued on page iii) | |
826 . ft1 | |
827 . br \} | |
828 .el .sp1 | |
829 .if \\n(F4>0 \{\ | |
830 . FA | |
831 . FG \} | |
832 .TK | |
833 .ps 8 | |
834 .vs 10 | |
835 .nr qq \\$1+\\$2+\\n(tp | |
836 \f3Total Pages\f1 (including document cover sheet): \\s+2\\n(qq\\s-2 | |
837 .ie !'\\*(e('' \{\ | |
838 Supersedes or amends document number \\*(e(. \} | |
839 .el .sp | |
840 .ps | |
841 .vs | |
842 .mk z | |
843 .sp .67i | |
844 '''\" output proprietary notice i… | |
845 .if \\np>0 \{\ | |
846 .ft 2 | |
847 .ti (4i-\\w'\\*(o)'u)/2u | |
848 \\*(o) | |
849 .ft | |
850 .ti (4i-\\w'\\*(p)'u)/2u | |
851 \\*(p) | |
852 .ti (4i-\\w'\\*(q)'u)/2u | |
853 \\*(q) \} | |
854 .sp |\\nzu+11v | |
855 .ta 5.35i | |
856 \\s8\\*(ve\\s0 | |
857 .ie !'\\*(s)'' \{\ | |
858 \s8Timestamp: \\*(s)\s0 BELL LABORATORIES \} | |
859 .el \{\ | |
860 BELL LABORATORIES \} | |
861 .sp|\\nzu | |
862 .sp 1 | |
863 .ft 3 | |
864 .ti 5.25i | |
865 \\*(x( | |
866 .ft | |
867 .sp|\\nxu | |
868 .in 0.2i | |
869 .nf | |
870 '''\" abstract | |
871 .if !\\n(la=\\n(a1 \{\ | |
872 . wh -0.25i ST \} | |
873 .pl \\nyu | |
874 .ta 0.5i 1.0i 1.5i 2.0i 2.5i | |
875 .FB | |
876 .ft 1 | |
877 '''\" output the abstract | |
878 .WB | |
879 .if \\n(la=\\n(a1 .sp-1 | |
880 .rn ZB XX | |
881 .wh -0.25i FC | |
882 '''\" output continuation page | |
883 .CP | |
884 'bp | |
885 .FT | |
886 .ft 1 | |
887 .in 0 | |
888 .wh 0 HD | |
889 .nf | |
890 .ft 3 | |
891 .ta 5.00i | |
892 .nr tc \\n(tp | |
893 Initial Distribution Specifications \\*(N1\f2 (page ii of \\n(tc)… | |
894 .ft 1 | |
895 .TK | |
896 .if \\ne>0 \{\ | |
897 . DL " Complete Copy" " Cover Sheet Only" | |
898 . mk z | |
899 '''\" put out complete copy list | |
900 . in 0.2i | |
901 . ZC | |
902 . in 0 | |
903 . if !\\ng=0 \{\ | |
904 . ft 2 | |
905 . ti 1.25i | |
906 (continued) | |
907 . ft 1 \} | |
908 . sp|\\nzu | |
909 . in 4i | |
910 '''\" put out cover sheet list | |
911 . ZS | |
912 . if !\\ni=0 \{\ | |
913 . ft 2 | |
914 . ti 4.75i | |
915 (continued) | |
916 . ft 1 \} | |
917 . in 0 | |
918 '''\" starter space value - then … | |
919 . sp|5 | |
920 . sp \\ne | |
921 . TK \} | |
922 .if \\nr=1 \{\ | |
923 \f3Government Security Classified\f1 | |
924 . ft 1 | |
925 . sp -0.05i | |
926 . TK \} | |
927 \f3Future Lucent Technologies Distribution by ITDS\f1 | |
928 .ti 0.5i | |
929 .sp 0.05i | |
930 .ie \\n(ra=2 \{\ | |
931 \f3DO NOT RELEASE\f1 to any Lucent Technologies employee without appropr… | |
932 .el \{\ | |
933 \f3RELEASE\f1 to any Lucent Technologies employee (excluding contract em… | |
934 .TK | |
935 '''\" put out author signature se… | |
936 .ft 3 | |
937 Author Signature\\*(u) | |
938 .ft 1 | |
939 .sp1 | |
940 .ta 2.635i 5.25i | |
941 \\*(m! | |
942 .ta 0.25i 2.875i 5.5i | |
943 \\*(m( | |
944 .if \\nu>3 \{\ | |
945 . sp 0.1i | |
946 . ta 2.635i 5.25i | |
947 \\*(n! | |
948 . ta 0.25i 2.875i 5.5i | |
949 \\*(n( \} | |
950 .if \\nu>6 \{\ | |
951 . sp 0.1i | |
952 . ta 2.635i 5.25i | |
953 \\*(o! | |
954 . ta 0.25i 2.875i 5.5i | |
955 \\*(o( \} | |
956 .sp -0.1i | |
957 .TK | |
958 '''\" output organizational appro… | |
959 .ie \\np>1 \{\ | |
960 \f3Organizational Approval\f1 (Department Head approval \f3required\ff1… | |
961 .el \{\ | |
962 \f3Organizational Approval\f1 (Optional) \} | |
963 .sp 1 | |
964 .ta 2.635i 5.25i | |
965 \\*(x! | |
966 . ta 0.25i 2.875i 5.5i | |
967 \\*(Z1 | |
968 .if \\nn>3 \{\ | |
969 . sp .1i | |
970 .ta 2.635i 5.25i | |
971 \\*(y! \} | |
972 .if \\nn>6 \{\ | |
973 . sp .1i | |
974 \\*(z! \} | |
975 .sp -0.1i | |
976 .TK | |
977 '''\" recipient section always ou… | |
978 .ft 3 | |
979 For Use by Recipient of Cover Sheet: | |
980 .ft 1 | |
981 .ps -3 | |
982 .vs -4 | |
983 .sp.05i | |
984 .mk z | |
985 Computing network users may order copies via the \f2library \-k\f1 comm… | |
986 for information, type \f2man library\f1 after the UNIX prompt. | |
987 '''.sp1 | |
988 .rn fo xx | |
989 Otherwise: | |
990 Enter PAN if BL (or SS# if non-BL). \l'1.5i' | |
991 Return this sheet to any ITDS location. | |
992 .sp|\\nzu | |
993 .in 4i | |
994 Internal Technical Document Service | |
995 '''.sp1 | |
996 .ta 1i 2i 3i | |
997 ( ) AK 2H-28 ( ) IH 7M-103 ( ) DR 2F-19 ( ) NW-ITDS | |
998 ( ) ALC 1B-102 ( ) MV 1L-19 ( ) INH 1C-114 ( ) PR 5… | |
999 ( ) CB 30-2011 ( ) WH 3E-204 ( ) IW 2Z-156 | |
1000 ( ) HO 4F-112 ( ) MT 3B-117 | |
1001 .in | |
1002 .ps | |
1003 .vs | |
1004 .SR | |
1005 .. | |
1006 . \"IZ - initialization | |
1007 .de IZ | |
1008 .FB | |
1009 .nr TN 0 | |
1010 .em EM | |
1011 .po 1i | |
1012 .nr PO 1i | |
1013 .if \\n(FM=0 .nr FM 1i | |
1014 .nr YY 0-\\n(FMu | |
1015 .if !\\n(PD .if n nr PD 1v | |
1016 .if t .if !\\n(PD .nr PD 0.3v | |
1017 .wh 0 NP | |
1018 .wh \\n(.pu-\\n(FMu FO | |
1019 .ch FO 16i | |
1020 .wh \\n(.pu-\\n(FMu FX | |
1021 .ch FO \\n(.pu-\\n(FMu | |
1022 .if t .wh -\\n(FMu/2u BT | |
1023 .if n .wh -\\n(FMu/2u-1v BT | |
1024 .. | |
1025 .\" macro to restore ms foiling | |
1026 .de SR | |
1027 .nr BE 0 | |
1028 .nr 1T 1 | |
1029 .nr FM 0 | |
1030 .nr PD 0 | |
1031 .nr HM 0 | |
1032 .nr KG 0 | |
1033 .nr FP 0 | |
1034 .nr GA 0 | |
1035 .nr FP 0 | |
1036 .\" changed rn F5 FE added rn FJ FS | |
1037 .rn FK FE | |
1038 .rn FJ FS | |
1039 .if '\\$1'' .bp | |
1040 .if !'\\$1'' \{\ | |
1041 .di ZA | |
1042 .ce | |
1043 \\*(a( | |
1044 .sp | |
1045 .WB | |
1046 .di | |
1047 .rn ZA WB\} | |
1048 .nr FC -1 | |
1049 .nr % 1 | |
1050 .IZ | |
1051 .rm IZ | |
1052 .if '\\$1'' .RT | |
1053 .ds MN \\*(N1 \\*(N2 \\*(N3 \\*(N4 \\*(N5 | |
1054 .nr MM \\nn | |
1055 .nr MC \\n(fc | |
1056 .nr MG \\n(wp | |
1057 .nr NA \\nu | |
1058 .if '\\n(ST'1' \{\ | |
1059 '''.so /usr/lib/tmac/tmac.rscover XXX | |
1060 .so \*(.P/lib/tmac/tmac.rscover | |
1061 . \" a line for troff to eat | |
1062 .S1 \} | |
1063 .ll 6i | |
1064 .nr LL 6i | |
1065 .rr a b c d e f g h i j k | |
1066 .rr l m n o p q r s t u | |
1067 .rr v w x y z np tp nc tc | |
1068 .rr ud u! m2 dv | |
1069 .rr lp np la a1 a2 ar wp fc m1 | |
1070 .rm DT TI AH SE KW TY NU MY | |
1071 .rm PR CI CO OC CV OV CE HD | |
1072 .rm FC ST TK HX HC DL EJ | |
1073 .rm CP SC a) b) k) N1 p) q) r) | |
1074 .rm N2 N3 N4 N5 X1 X2 X3 X4 X5 | |
1075 .rm X1 X2 X3 X4 X5 F1 F2 F3 F4 | |
1076 .rm F5 | |
1077 .rm d) o) s) ve m! n! o! e( r( | |
1078 .rm x! y! z! x( d! ve u) | |
1079 .rm t) w) x) y) z) a( b( c( m( | |
1080 .rm n( o( p( s( t( SA ZI ZC ZO | |
1081 .rm ZS ZD ZN FT FB CX NN GS | |
1082 .rm ZB XX ZP ZZ | |
1083 .rm TM IM MF MR LT OK RP TR | |
1084 .rm TX AU AX AI AE SY S2 S0 | |
1085 .rm S3 | |
1086 .. | |
1087 .de RP | |
1088 .nr ST 2 | |
1089 .SS | |
1090 .. | |
1091 .de TR | |
1092 .nr ST 3 | |
1093 .ds MN \\$1 | |
1094 .SS | |
1095 .. | |
1096 .de SS \"RP or TR rename the world so old macros called | |
1097 .rm SG | |
1098 .nr CS 0 | |
1099 .nr BE 0 | |
1100 .nr 1T 0 | |
1101 .nr FM 0 | |
1102 .nr PD 0 | |
1103 .nr HM 0 | |
1104 .nr KG 0 | |
1105 .nr FP 0 | |
1106 .nr GA 0 | |
1107 .nr FP 0 | |
1108 .ll 6i | |
1109 .nr LL 6i | |
1110 .\" changed rn F5 FE added rn FJ FS | |
1111 .rn F6 FE | |
1112 .nr FC -1 | |
1113 .nr % 1 | |
1114 .IZ | |
1115 .rm IZ | |
1116 .pn 0 | |
1117 .de TI | |
1118 .TL | |
1119 \\.. | |
1120 .de SA | |
1121 .AB \\\\$1 | |
1122 \\.. | |
1123 .de SE | |
1124 .AE | |
1125 \\.. | |
1126 .de AH | |
1127 .AU | |
1128 \\\\$1 | |
1129 \\.. | |
1130 .de DT | |
1131 .ND \\\\$1 \\\\$2 \\\\$3 | |
1132 \\.. | |
1133 .br | |
1134 .rr a b c d e f g h i j k | |
1135 .rr l m n o p q r s t u | |
1136 .rr v w x y z np tp nc tc | |
1137 .rr ud u! m2 dv | |
1138 .rr lp np la a1 a2 ar wp fc m1 | |
1139 .rm DT KW TY NU MY | |
1140 .rm PR CI OC OV HD | |
1141 .rm FC ST TK HX HC DL EJ | |
1142 .rm CP SC a) b) k) N1 p) q) r) | |
1143 .rm d) o) s) ve m! n! o! e( r( | |
1144 .rm x! y! z! x( d! ve u) | |
1145 .rm t) w) x) y) z) a( b( c( m( | |
1146 .rm n( o( p( s( t( ZI ZC ZO | |
1147 .rm ZS ZD ZN FT FB CX NN GS | |
1148 .rm ZB XX ZP ZZ | |
1149 .rm TM IM MF MR LT | |
1150 .. |