home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Distributions / ucb / 2bsd.tar.gz / 2bsd.tar / bin / lib / tmac.e < prev   
Text File  |  1979-04-20  |  12KB  |  991 lines

  1. .nr _0 \n(.c
  2. .\"**********************************************************************
  3. .\"*                                    *
  4. .\"*    ******  - M E   N R O F F / T R O F F   M A C R O S  ******    *
  5. .\"*                                    *
  6. .\"*    Produced for your edification and enjoyment by:            *
  7. .\"*        Eric Allman                        *
  8. .\"*        Electronics Research Laboratory                *
  9. .\"*        U.C. Berkeley.                        *
  10. .\"*                                    *
  11. .\"*    VERSION 1.1    First Release: 11 Sept 1978            *
  12. .\"*    See file \*(||/revisions for revision history            *
  13. .\"*                                    *
  14. .\"*    Documentation is available.                    *
  15. .\"*                                    *
  16. .\"**********************************************************************
  17. .\" This version has had comments stripped; an unstripped version is available.
  18. .if !\n(.V .tm You are using the wrong version of NROFF/TROFF!!
  19. .if !\n(.V .tm This macro package works only on the version seven
  20. .if !\n(.V .tm release of NROFF and TROFF.
  21. .if !\n(.V .ex
  22. .if \n(pf \
  23. .    nx \*(||/null.me
  24. .de @C
  25. .nr _S \\n(.s
  26. .nr _V \\n(.v
  27. .nr _F \\n(.f
  28. .nr _I \\n(.i
  29. .ev \\$1
  30. .ps \\n(_Su
  31. .vs \\n(_Vu
  32. .ft \\n(_F
  33. 'in \\n(_Iu
  34. .xl \\n($lu
  35. .lt \\n($lu
  36. .rr _S
  37. .rr _V
  38. .rr _F
  39. .rr _I
  40. .ls 1
  41. 'ce 0
  42. ..
  43. .de @D
  44. .ds |p "\\$3
  45. .nr _d \\$1
  46. .ie "\\$2"C" \
  47. .    nr _d 1
  48. .el .ie "\\$2"L" \
  49. .    nr _d 2
  50. .el .ie "\\$2"I" \
  51. .    nr _d 3
  52. .el .ie "\\$2"M" \
  53. .    nr _d 4
  54. .el \
  55. .    ds |p "\\$2
  56. ..
  57. .de @z
  58. .if !"\\n(.z"" \
  59. \{\
  60. .    tm Line \\n(c. -- Unclosed block, footnote, or other diversion (\\n(.z)
  61. .    di
  62. .    ex
  63. .\}
  64. .if \\n(?a \
  65. .    bp
  66. .rm bp
  67. .rm @b
  68. .if t \
  69. .    wh -1p @m
  70. .br
  71. ..
  72. .de @I
  73. .rm th
  74. .rm ac
  75. .rm lo
  76. .rm sc
  77. .rm @I
  78. ..
  79. .de he
  80. .ie !\\n(.$ \
  81. \{\
  82. .    rm |4
  83. .    rm |5
  84. .\}
  85. .el \
  86. \{\
  87. .    ds |4 "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  88. .    ds |5 "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  89. .\}
  90. ..
  91. .de eh
  92. .ie !\\n(.$ \
  93. .    rm |4
  94. .el \
  95. .    ds |4 "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  96. ..
  97. .de oh
  98. .ie !\\n(.$ \
  99. .    rm |5
  100. .el \
  101. .    ds |5 "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  102. ..
  103. .de fo
  104. .ie !\\n(.$ \
  105. \{\
  106. .    rm |6
  107. .    rm |7
  108. .\}
  109. .el \
  110. \{\
  111. .    ds |6 "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  112. .    ds |7 "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  113. .\}
  114. ..
  115. .de ef
  116. .ie !\\n(.$ \
  117. .    rm |6
  118. .el \
  119. .    ds |6 "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  120. ..
  121. .de of
  122. .ie !\\n(.$ \
  123. .    rm |7
  124. .el \
  125. .    ds |7 "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  126. ..
  127. .de ep
  128. .if \\n(nl>0 \
  129. \{\
  130. .    wh 0
  131. .    rs
  132. .    @b
  133. .\}
  134. ..
  135. .de @h
  136. .if \n@>0 .tm >> @h %=\\n% ?a=\\n(?a ?b=\\n(?b
  137. .if (\\n(.i+\\n(.o)>=\\n(.l \
  138. .    tm Line \\n(c. -- Offset + indent exceeds line length
  139. .if t .if (\\n(.l+\\n(.o)>7.75i \
  140. .    tm Line \\n(c. -- Offset + line length exceeds paper width
  141. .nr ?h \\n(?H
  142. .rr ?H
  143. .nr ?c \\n(?C
  144. .rr ?C
  145. .rn |4 |0
  146. .rn |5 |1
  147. .rn |6 |2
  148. .rn |7 |3
  149. .nr _w 0
  150. .nr ?I 1
  151. .ev 2
  152. .rs
  153. .if t .@m
  154. .if \\n(hm>0 \
  155. .    sp |\\n(hmu
  156. .if \\n($T=2 \\!.
  157. .@t $h
  158. .if \\n(tm<=0 \
  159. .    nr tm \n(.Vu
  160. .sp |\\n(tmu
  161. .ev
  162. .mk _k
  163. .if \\n(?n .nm 1
  164. .nr $c 1
  165. .if \n@>4 .tm -- @h >> .ns nl=\\n(nl %=\\n% _k=\\n(_k tm=\\n(tm
  166. .ie \\n(?s \
  167. \{\
  168. .    rr ?s
  169. .    rs
  170. '    @b
  171. .\}
  172. .el \
  173. .    @n
  174. .if \n@>1 .tm << @h
  175. ..
  176. .de @m
  177. .@O 0
  178. .lt 7.5i
  179. .tl '\(rn''\(rn'
  180. .@O
  181. .lt
  182. ..
  183. .de @n
  184. .if \n@>3 .tm >> @n nl=\\n(nl %=\\n% ?f=\\n(?f ?o=\\n(?o
  185. .if \\n(bm<=0 \
  186. .    nr bm \\n(.Vu
  187. .if \\n(_w<=\\n($l \
  188. \{\
  189. .    nr _b (\\n(ppu*\\n($ru)/2u
  190. .    if \\n(_bu>((\\n(bmu-\\n(fmu-(\\n(tpu*\\n($ru))/2u) \
  191. .        nr _b (\\n(ppu*\\n($ru)-\n(.Vu
  192. .    nr _b +\\n(bmu
  193. .\}
  194. .nr _B \\n(_bu
  195. .ch @f
  196. .wh -\\n(_bu @f
  197. .nr ?f 0
  198. .if \\n(?o \
  199. \{\
  200. .    (f
  201. .    nf
  202. .    |o
  203. .    fi
  204. .    )f
  205. .    rm |o
  206. .\}
  207. .nr ?o 0
  208. .if \\n(?T \
  209. \{\
  210. .    nr _i \\n(.i
  211. .    in \\n($iu
  212. .    |h
  213. .    in \\n(_iu
  214. .    rr _i
  215. .    mk #T
  216. .    ns
  217. .\}
  218. .if \\n(?a \
  219. \{\
  220. .    nr ?a 0
  221. .    @k |t
  222. .\}
  223. .os
  224. .$H
  225. .ns
  226. ..
  227. .de @f
  228. .if \n@>0 .tm >> @f %=\\n% nl=\\n(nl ?a=\\n(?a ?b=\\n(?b
  229. .ec
  230. .if \\n(?T \
  231. \{\
  232. .    nr T. 1
  233. .    T# 1
  234. .    br
  235. .\}
  236. .ev 2
  237. .ce 0
  238. .if \\n(?b \
  239. \{\
  240. .    nr ?b 0
  241. .    @k |b
  242. .\}
  243. .if \\n(?f \
  244. .    @o
  245. .ie \\n($c<\\n($m \
  246. .    @c
  247. .el \
  248. .    @e
  249. .ev
  250. .if \n@>2 .tm << @f
  251. ..
  252. .de @o
  253. .nf
  254. .ls 1
  255. .in 0
  256. .wh -\\n(_Bu @r
  257. .|f
  258. .fi
  259. .if \\n(?o \
  260. .    di
  261. .    if \\n(dn=0 \
  262. \{\
  263. .        rm |o
  264. .        nr ?o 0
  265. .    \}
  266. .    nr dn \\n(_D
  267. .    rr _D
  268. .\}
  269. .rm |f
  270. .ch @r
  271. ..
  272. .de @c
  273. .if \n@>2 .tm    >> @c %=\\n%
  274. .rs
  275. .sp |\\n(_ku
  276. .@O +\\n($lu+\\n($su
  277. .nr $c +1
  278. .@n
  279. ..
  280. .de @e
  281. .if \n@>2 .tm    >> @e
  282. .@O \\n(_ou
  283. .rs
  284. .sp |\\n(.pu-\\n(fmu-(\\n(tpu*\\n($ru)
  285. .@t $f
  286. .nr ?h 0
  287. .bp
  288. ..
  289. .de @t
  290. .if !\\n(?h \
  291. \{\
  292. .    sz \\n(tp
  293. .    @F \\n(tf
  294. .    lt \\n(_Lu
  295. .    nf
  296. .    \\$1
  297. .    br
  298. .\}
  299. ..
  300. .de $h
  301. .rm |z
  302. .if !\\n(?c \
  303. \{\
  304. .    if e .ds |z "\\*(|0
  305. .    if o .ds |z "\\*(|1
  306. .\}
  307. .if !\(ts\\*(|z\(ts\(ts \
  308. '    tl \\*(|z
  309. .rm |z
  310. ..
  311. .de $f
  312. .rm |z
  313. .if \\n(?c \
  314. \{\
  315. .    if e .ds |z "\\*(|0
  316. .    if o .ds |z "\\*(|1
  317. .\}
  318. .if \(ts\\*(|z\(ts\(ts \
  319. \{\
  320. .    if e .ds |z "\\*(|2
  321. .    if o .ds |z "\\*(|3
  322. .\}
  323. .if !\(ts\\*(|z\(ts\(ts \
  324. '    tl \\*(|z
  325. .rm |z
  326. ..
  327. .de @r
  328. .if \n@>3 .tm        >> @r .z=\\n(.z ?f=\\n(?f ?a=\\n(?a ?b=\\n(?b _b=\\n(_b
  329. .di |o
  330. .nr ?o 1
  331. .nr _D \\n(dn
  332. .ns
  333. ..
  334. .rn bp @b
  335. .de bp
  336. .nr $c \\n($m
  337. .ie \\n(nl>0 \
  338. .    @b \\$1
  339. .el \
  340. \{\
  341. .    if \\n(.$>0 \
  342. .        pn \\$1
  343. .    if \\n(?I \
  344. .        @h
  345. .\}
  346. .br
  347. .wh 0 @h
  348. ..
  349. .rn ll xl
  350. .de ll
  351. .xl \\$1
  352. .lt \\$1
  353. .nr $l \\n(.l
  354. .if (\\n($m<=1):(\\n($l>\\n(_L) \
  355. .    nr _L \\n(.l
  356. ..
  357. .rn po @O
  358. .de po
  359. .@O \\$1
  360. .nr _o \\n(.o
  361. ..
  362. .de hx
  363. .nr ?H 1
  364. ..
  365. .de ix
  366. 'in \\$1
  367. ..
  368. .de bl
  369. .br
  370. .ne \\$1
  371. .rs
  372. .sp \\$1
  373. ..
  374. .de n1
  375. .nm 1
  376. .xl -\w'0000'u
  377. .nr ?n 1
  378. ..
  379. .de n2
  380. .nm \\$1
  381. .ie \\n(.$ \
  382. .    xl -\w'0000'u
  383. .el \
  384. .    xl \\n($lu
  385. ..
  386. .de pa
  387. .bp \\$1
  388. ..
  389. .de ro
  390. .af % i
  391. ..
  392. .de ar
  393. .af % 1
  394. ..
  395. .de m1
  396. .nr _0 \\n(hmu
  397. .nr hm \\$1v
  398. .nr tm +\\n(hmu-\\n(_0u
  399. .rr _0
  400. ..
  401. .de m2
  402. .nr tm \\n(hmu+\\n(tpp+\\$1v
  403. ..
  404. .de m3
  405. .nr bm \\n(fmu+\\n(tpp+\\$1v
  406. ..
  407. .de m4
  408. .nr _0 \\n(fmu
  409. .nr fm \\$1v
  410. .nr bm +\\n(fmu-\\n(_0u
  411. ..
  412. .de sk
  413. .if \\n(.$>0 \
  414. .    tm Line \\n(c. -- I cannot skip multiple pages
  415. .nr ?s 1
  416. ..
  417. .de re
  418. .ta 0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i +0.5i
  419. ..
  420. .if t .ig
  421. .de re
  422. .ta 0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i +0.8i
  423. ..
  424. .de ba
  425. .ie \\n(.$ \
  426. .    nr $i \\$1n
  427. .el \
  428. .    nr $i \\n(siu*\\n($0u
  429. ..
  430. .de hl
  431. .br
  432. \l'\\n(.lu-\\n(.iu'
  433. .sp
  434. ..
  435. .de pp
  436. .lp \\n(piu
  437. ..
  438. .de lp
  439. .@p
  440. .if \\n(.$ \
  441. .    ti +\\$1
  442. .nr $p 0 1
  443. ..
  444. .de ip
  445. .if (\\n(ii>0)&(\\n(ii<1n) \
  446. .    nr ii \\n(iin
  447. .nr _0 \\n(ii
  448. .if \\n(.$>1 \
  449. .    nr _0 \\$2n
  450. .@p \\n(_0u
  451. .if \\w'\\$1' \
  452. \{\
  453. .    ti -\\n(_0u
  454. \&\\$1\h'|\\n(_0u'\c
  455. .\}
  456. .rr _0
  457. ..
  458. .de np
  459. .nr $p +1
  460. .ip (\\n($p)
  461. ..
  462. .de @p
  463. .@I
  464. .if "\\n(.z"|e" .tm Line \\n(c. -- Unmatched continued equation
  465. .in \\n($iu+\\n(pou
  466. .if \\n(.$ \
  467. .    in +\\$1n
  468. .ce 0
  469. .fi
  470. .@F \\n(pf
  471. .sz \\n(ppu
  472. .sp \\n(psu
  473. .ne \\n(.Lv+\\n(.Vu
  474. .ns
  475. ..
  476. .de sh
  477. .rn sh @T
  478. .so \\*(||/sh.me
  479. .sh "\\$1" "\\$2" \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
  480. .rm @T
  481. ..
  482. .de $p
  483. .if (\\n(si>0)&(\\n(.$>2) \
  484. .    nr $i \\$3*\\n(si
  485. .in \\n($iu
  486. .ie !"\\$1\\$2"" \
  487. \{\
  488. .    sp \\n(ssu
  489. .    ne \\n(.Lv+\\n(.Vu+\\n(psu+(\\n(spu*\\n($ru*\\n(.Lu)
  490. .    ie \\n(.$>2 \
  491. .        ti -(\\n(siu-\\n(sou)
  492. .    el \
  493. .        ti +\\n(sou
  494. .    @F \\n(sf
  495. .    sz \\n(spu
  496. .    if \\$3>0 \
  497. .        $\\$3
  498. .    if \w"\\$2">0 \\$2.
  499. .    if \w"\\$1">0 \\$1\f1\ \  \"
  500. .\}
  501. .el \
  502. .    sp \\n(psu
  503. .@F \\n(pf
  504. .sz \\n(ppu
  505. ..
  506. .de uh
  507. .rn uh @T
  508. .so \\*(||/sh.me
  509. .uh "\\$1"
  510. .rm @T
  511. ..
  512. .de 2c
  513. .br
  514. .if \\n($m>1 \
  515. .    1c
  516. .nr $c 1
  517. .nr $m 2
  518. .if \\n(.$>1 \
  519. .    nr $m \\$2
  520. .if \\n(.$>0 \
  521. .    nr $s \\$1n
  522. .nr $l (\\n(.l-((\\n($m-1)*\\n($s))/\\n($m
  523. .xl \\n($lu
  524. .mk _k
  525. .ns
  526. ..
  527. .de 1c
  528. .br
  529. .nr $c 1
  530. .nr $m 1
  531. .ll \\n(_Lu
  532. .sp |\\n(.hu
  533. .@O \\n(_ou
  534. ..
  535. .de bc
  536. .sp 24i
  537. ..
  538. .de (z
  539. .rn (z @T
  540. .so \\*(||/float.me
  541. .(z \\$1 \\$2
  542. .rm @T
  543. ..
  544. .de )z
  545. .tm Line \\n(c. -- unmatched .)z
  546. ..
  547. .de (t
  548. .(z \\$1 \\$2
  549. ..
  550. .de )t
  551. .)z \\$1 \\$2
  552. ..
  553. .de (b
  554. .br
  555. .@D 3 \\$1 \\$2
  556. .sp \\n(bsu
  557. .@(
  558. ..
  559. .de )b
  560. .br
  561. .@)
  562. .if (\\n(bt=0):(\\n(.t<\\n(bt) \
  563. .    ne \\n(dnu
  564. .ls 1
  565. .nf
  566. .|k
  567. .ec
  568. .fi
  569. .in 0
  570. .xl \\n($lu
  571. .ev
  572. .rm |k
  573. .sp \\n(bsu+\\n(.Lv-1v
  574. ..
  575. .de @(
  576. .if !"\\n(.z"" .tm Line \\n(c. -- Illegal nested keep \\n(.z
  577. .@M
  578. .di |k
  579. \!'rs
  580. ..
  581. .de @M
  582. .nr ?k 1
  583. .@C 1
  584. .@F \\n(df
  585. .vs \\n(.su*\\n($Ru
  586. .nf
  587. .if "\\*(|p"F" \
  588. .    fi
  589. .if \\n(_d=4 \
  590. .    in 0
  591. .if \\n(_d=3 \
  592. \{\
  593. .    in +\\n(biu
  594. .    xl -\\n(biu
  595. .\}
  596. .if \\n(_d=1 \
  597. .    ce 10000
  598. ..
  599. .de @)
  600. .br
  601. .if !"\\n(.z"|k" .tm Line \\n(c. -- Close of a keep which has never been opened
  602. .nr ?k 0
  603. .di
  604. .in 0
  605. .ce 0
  606. ..
  607. .de (c
  608. .if "\\n(.z"|c" .tm Line \\n(c. -- Nested .(c requests
  609. .di |c
  610. ..
  611. .de )c
  612. .if !"\\n(.z"|c" .tm Line \\n(c. -- Unmatched .)c
  613. .di
  614. .if \n@>4 .tm >> .)c .l=\\n(.l .i=\\n(.i $i=\\n($i dl=\\n(dl
  615. .ev 1
  616. .ls 1
  617. .in (\\n(.lu-\\n(.iu-\\n(dlu)/2u
  618. .if \n@>4 .tm -- .)c << .in .l=\\n(.l .i=\\n(.i dl=\\n(dl
  619. .nf
  620. .|c
  621. .ec
  622. .in
  623. .ls
  624. .ev
  625. .rm |c
  626. ..
  627. .de (q
  628. .br
  629. .@C 1
  630. .fi
  631. .sp \\n(qsu
  632. .in +\\n(qiu
  633. .xl -\\n(qiu
  634. .sz \\n(qp
  635. ..
  636. .de )q
  637. .br
  638. .ev
  639. .sp \\n(qsu+\\n(.Lv-1v
  640. .nr ?k 0
  641. ..
  642. .de (l
  643. .br
  644. .sp \\n(bsu
  645. .@D 3 \\$1 \\$2
  646. .@M
  647. ..
  648. .de )l
  649. .br
  650. .ev
  651. .sp \\n(bsu+\\n(.Lv-1v
  652. .nr ?k 0
  653. ..
  654. .de EQ
  655. .rn EQ @T
  656. .so \\*(||/eqn.me
  657. .EQ \\$1 \\$2
  658. .rm @T
  659. ..
  660. .de TS
  661. .rn TS @T
  662. .so \\*(||/tbl.me
  663. .TS \\$1 \\$2
  664. .rm @T
  665. ..
  666. .de sz
  667. .ps \\$1
  668. .vs \\n(.su*\\n($ru
  669. .bd S B \\n(.su/3u
  670. ..
  671. .de r
  672. .nr _F \\n(.f
  673. .ul 0
  674. .ft 1
  675. .if \\n(.$ \&\\$1\f\\n(_F\\$2
  676. .rr _F
  677. ..
  678. .de i
  679. .nr _F \\n(.f
  680. .ul 0
  681. .ft 2
  682. .if \\n(.$ \&\\$1\f\\n(_F\\$2
  683. .rr _F
  684. ..
  685. .de b
  686. .nr _F \\n(.f
  687. .ul 0
  688. .ie t \
  689. .    ft 3
  690. .el \
  691. .    ul 10000
  692. .if \\n(.$ \&\\$1\f\\n(_F\\$2
  693. .if \\n(.$ \
  694. .    ul 0
  695. .rr _F
  696. ..
  697. .de rb
  698. .nr _F \\n(.f
  699. .ul 0
  700. .ft 3
  701. .if \\n(.$ \&\\$1\f\\n(_F\\$2
  702. .rr _F
  703. ..
  704. .de u
  705. \&\\$1\l'|0\(ul'\\$2
  706. ..
  707. .de q
  708. \&\\*(lq\\$1\\*(rq\\$2
  709. ..
  710. .de bi
  711. .ft 2
  712. .ie t \&\k~\\$1\h'|\\n~u+(\\n(.su/3u)'\\$1\fP\\$2
  713. .el \&\\$1\fP\\$2
  714. ..
  715. .de bx
  716. .ie \\n($T \&\f2\\$1\fP\\$2
  717. .el \k~\(br\|\\$1\|\(br\l'|\\n~u\(rn'\l'|\\n~u\(ul'\^\\$2
  718. ..
  719. .de @F
  720. .nr ~ \\$1
  721. .if \\n~>0 \
  722. \{\
  723. .    ul 0
  724. .    ie \\n~>4 \
  725. \{\
  726. .        if n .ul 10000
  727. .        if t .ft 3
  728. .    \}
  729. .    el \
  730. .        ft \\n~
  731. .\}
  732. .rr ~
  733. ..
  734. .de (f
  735. .rn (f @T
  736. .so \\*(||/footnote.me
  737. .(f \\$1 \\$2
  738. .rm @T
  739. ..
  740. .de )f
  741. .tm Line \\n(c. -- unmatched .)f
  742. ..
  743. .de $s
  744. \l'2i'
  745. .if n \
  746. .    sp 0.3
  747. ..
  748. .de (d
  749. .rn (d @T
  750. .so \\*(||/deltext.me
  751. .(d \\$1 \\$2
  752. .rm @T
  753. ..
  754. .de )d
  755. .tm Line \\n(c. -- unmatched .)d
  756. ..
  757. .de (x
  758. .rn (x @T
  759. .so \\*(||/index.me
  760. .(x \\$1 \\$2
  761. .rm @T
  762. ..
  763. .de )x
  764. .tm Line \\n(c. -- unmatched .)x
  765. ..
  766. .de th
  767. .so \\*(||/thesis.me
  768. .rm th
  769. ..
  770. .de +c
  771. .ep
  772. .if \\n(?o:\\n(?a \
  773. \{\
  774. .    bp
  775. .    rs
  776. .    ep
  777. .\}
  778. .nr ?C 1
  779. .nr $f 1 1
  780. .ds * \\*[1\\*]\k*
  781. .if \\n(?R \
  782. .    pn 1
  783. .bp
  784. .in \\n($iu
  785. .rs
  786. .ie \\n(.$ \
  787. .    $c "\\$1"
  788. .el \
  789. .    sp 3
  790. ..
  791. .de ++
  792. .nr _0 0
  793. .if "\\$1"C" \
  794. .    nr _0 1
  795. .if "\\$1"RC" \
  796. .    nr _0 11
  797. .if "\\$1"A" \
  798. .    nr _0 2
  799. .if "\\$1"RA" \
  800. .    nr _0 12
  801. .if "\\$1"P" \
  802. .    nr _0 3
  803. .if "\\$1"B" \
  804. .    nr _0 4
  805. .if "\\$1"AB" \
  806. .    nr _0 5
  807. .if \\n(_0=0 \
  808. .    tm Line \\n(c. -- Bad mode to .++
  809. .nr ?R 0
  810. .if \\n(_0>10 \
  811. .\{
  812. .    nr ?R 1
  813. .    nr _0 -10
  814. .\}
  815. .nr ch 0 1
  816. .if (\\n(_0=3):(\\n(_0=5) \
  817. .    pn 1
  818. .ep
  819. .if \\n(_0=1 \
  820. \{\
  821. .    af ch 1
  822. .    af % 1
  823. .\}
  824. .if \\n(_0=2 \
  825. \{\
  826. .    af ch A
  827. .    af % 1
  828. .\}
  829. .if \\n(_0=3 \
  830. .    af % i
  831. .if \\n(_0=4 \
  832. .    af % 1
  833. .if \\n(_0=5 \
  834. .    af % 1
  835. .if \\n(.$>1 \
  836. .    he \\$2
  837. .if !\\n(_0=\\n(_M .if \\n(_M=3 \
  838. .    pn 1
  839. .nr _M \\n(_0
  840. .rr _0
  841. ..
  842. .de $c
  843. .sz 12
  844. .ft B
  845. .ce 1000
  846. .if \\n(_M<3 \
  847. .    nr ch +1
  848. .ie \\n(_M=1 CHAPTER\ \ \\n(ch
  849. .el .if \\n(_M=2 APPENDIX\ \ \\n(ch
  850. .if \w"\\$1" .sp 3-\\n(.L
  851. .if \w"\\$1" \\$1
  852. .if (\\n(_M<3):(\w"\\$1") \
  853. .    sp 4-\\n(.L
  854. .ce 0
  855. .ft
  856. .sz
  857. .ie \\n(_M=1 \
  858. .    $C Chapter \\n(ch "\\$1"
  859. .el .if \\n(_M=2 \
  860. .    $C Appendix \\n(ch "\\$1"
  861. ..
  862. .de tp
  863. .hx
  864. .bp
  865. .br
  866. .rs
  867. .pn \\n%
  868. ..
  869. .de ac
  870. .rn ac @T
  871. .so \\*(||/acm.me
  872. .ac "\\$1" "\\$2"
  873. .rm @T
  874. ..
  875. .de lo
  876. .so \\*(||/local.me
  877. .rm lo
  878. ..
  879. .if \n(mo=1 .ds mo January
  880. .if \n(mo=2 .ds mo February
  881. .if \n(mo=3 .ds mo March
  882. .if \n(mo=4 .ds mo April
  883. .if \n(mo=5 .ds mo May
  884. .if \n(mo=6 .ds mo June
  885. .if \n(mo=7 .ds mo July
  886. .if \n(mo=8 .ds mo August
  887. .if \n(mo=9 .ds mo September
  888. .if \n(mo=10 .ds mo October
  889. .if \n(mo=11 .ds mo November
  890. .if \n(mo=12 .ds mo December
  891. .if \n(dw=1 .ds dw Sunday
  892. .if \n(dw=2 .ds dw Monday
  893. .if \n(dw=3 .ds dw Tuesday
  894. .if \n(dw=4 .ds dw Wednesday
  895. .if \n(dw=5 .ds dw Thursday
  896. .if \n(dw=6 .ds dw Friday
  897. .if \n(dw=7 .ds dw Saturday
  898. .ds td \*(mo \n(dy, 19\n(yr
  899. .if (1m<0.1i)&(\nx!=0) \
  900. .    vs 9p
  901. .rr x
  902. .nr $r \n(.v/\n(.s
  903. .nr $R \n($r
  904. .nr hm 4v
  905. .nr tm 7v
  906. .nr bm 6v
  907. .nr fm 3v
  908. .nr tf 3
  909. .nr tp 10
  910. .hy 14
  911. .nr bi 4n
  912. .nr pi 5n
  913. .nr pf 1
  914. .nr pp 10
  915. .nr qi 4n
  916. .nr qp -1
  917. .nr ii 5n
  918. .nr $m 1
  919. .nr $s 4n
  920. .ds || /usr/lib/me
  921. .if \n@>0 .ds || .
  922. .bd S B 3
  923. .ds [ \u
  924. .ds ] \d
  925. .ds < \d
  926. .ds > \u
  927. .ds - --
  928. .if t \
  929. \{\
  930. .    ds [ \v'-0.4m'\s-3
  931. .    ds ] \s0\v'0.4m'
  932. .    ds < \v'0.4m'\s-3
  933. .    ds > \s0\v'-0.4m'
  934. .    ds - \-
  935. .\}
  936. .nr _o \n(.o
  937. .if n .po 1i
  938. .if \n(.V=1v \
  939. .    nr $T 2
  940. .if \n(.T=0 \
  941. .    nr $T 1
  942. .if t \
  943. \{\
  944. .    nr $T 0
  945. .    po -0.5i
  946. .\}
  947. .if \n($T \
  948. \{\
  949. .    if \n($T=1 \
  950. .        po 0
  951. .    ds [ [
  952. .    ds ] ]
  953. .    ds < <
  954. .    ds > >
  955. .\}
  956. .nr ps 0.5v
  957. .if \n($T \
  958. .    nr ps 1v
  959. .if t .nr ps 0.35v
  960. .nr bs \n(ps
  961. .nr qs \n(ps
  962. .nr zs 1v
  963. .nr xs 0.2v
  964. .nr fs 0.2v
  965. .if \n($T \
  966. .    nr fs 0
  967. .if n .nr es 1v
  968. .if t .nr es 0.5v
  969. .wh 0 @h
  970. .nr $l \n(.lu
  971. .nr _L \n(.lu
  972. .nr $c 1
  973. .nr $f 1 1
  974. .ds * \*[1\*]\k*\"
  975. .nr $d 1 1
  976. .ds # [1]\k#\"
  977. .nr _M 1
  978. .ds lq \&"\"
  979. .ds rq \&"\"
  980. .if t \
  981. .    ds lq ``
  982. .if t \
  983. .    ds rq ''
  984. .em @z
  985. .de sc
  986. .so \\*(||/chars.me
  987. .rm sc
  988. ..
  989. .ll 6.0i
  990. .lt 6.0i
  991.