home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s053 / 25.ddi / root.2 / usr / ucblib / doctools / tmac / an next >
Encoding:
Text File  |  1990-12-20  |  9.6 KB  |  430 lines

  1. '\"#ident    "@(#)//usr/ucblib/doctools/tmac/an.sl 1.1 4.0 12/08/90 39641 AT&T-USL"
  2. '\"        PROPRIETARY NOTICE (Combined)
  3. '\"
  4. '\"This source code is unpublished proprietary information
  5. '\"constituting, or derived under license from AT&T's UNIX(r) System V.
  6. '\"In addition, portions of such source code were derived from Berkeley
  7. '\"4.3 BSD under license from the Regents of the University of
  8. '\"California.
  9. '\"
  10. '\"
  11. '\"
  12. '\"        Copyright Notice 
  13. '\"
  14. '\"Notice of copyright on this source code product does not indicate 
  15. '\"publication.
  16. '\"
  17. '\"    (c) 1986,1987,1988,1989  Sun Microsystems, Inc
  18. '\"    (c) 1983,1984,1985,1986,1987,1988,1989  AT&T.
  19. '\"              All rights reserved.
  20. .\"
  21. .\"    Sun Microsystems In-House Version.  Do Not Modify!
  22. .\"
  23. .ds ]W Sun Microsystems 
  24. '    # month name
  25. .  \".if "\nd"0" .nr m \n(mo-1
  26. .  \".if "\nm"0" .ds ]m January
  27. .  \".if "\nm"1" .ds ]m February
  28. .  \".if "\nm"2" .ds ]m March
  29. .  \".if "\nm"3" .ds ]m April
  30. .  \".if "\nm"4" .ds ]m May
  31. .  \".if "\nm"5" .ds ]m June
  32. .  \".if "\nm"6" .ds ]m July
  33. .  \".if "\nm"7" .ds ]m August
  34. .  \".if "\nm"8" .ds ]m September
  35. .  \".if "\nm"9" .ds ]m October
  36. .  \".if "\nm"10" .ds ]m November
  37. .  \".if "\nm"11" .ds ]m December
  38. '    # set the date
  39. .  \".if n \{.nr m \nm+1
  40. .  \".     ie \nd .ds ]W Modified \nm/\nd/\ny
  41. .  \".     el .ds ]W Printed \n(mo/\n(dy/\n(yr\}
  42. .  \".if t \{.ie \nd .ds ]W \*(]m \nd, 19\ny
  43. .  \".     el .ds ]W \*(]m \n(dy, 19\n(yr\}
  44. '    # end of commented out chunk
  45. .if t .tr *\(**
  46. .ie n \{\
  47. .    ds lq \&"\"
  48. .    ds rq \&"\"
  49. .\}
  50. .el \{\
  51. .    ds rq ''
  52. .    ds lq ``
  53. .\}
  54. .de UC
  55. .  \".if t \{\
  56. .  \".    ie "\\$1"" .ds ]W 3rd Berkeley Distribution
  57. .  \".    ie "\\$1"4" .ds ]W \\$1th Berkeley Distribution
  58. .  \".    el .ds ]w \\$2 \\$1 BSD
  59. .  \".\}
  60. ..
  61. '    # reset the basic page layout
  62. .de }E
  63. .}f
  64. .in \\n()Ru+\\n(INu
  65. .ll \\n(LLu
  66. ..
  67. '    # default tabs
  68. .de DT
  69. 'ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
  70. ..
  71. '    # set type font and size
  72. .de }f
  73. .ps 10
  74. .ft 1
  75. ..
  76. '    # handle the head of the page
  77. .de }H
  78. .ev 1
  79. .}C
  80. 'sp .5i
  81. .ft 1
  82. .ps 10
  83. .tl \\*(]H\\*(]D\\*(]H
  84. 'sp .5i
  85. .ev
  86. .ns
  87. ..
  88. '    # handle the foot of the page
  89. .de }F
  90. .ev 1
  91. .ft 1
  92. .ps 10
  93. 'sp .5i
  94. .if !\\nD .tl \\*(]W\\*(]L\\*(PN%
  95. .if  \\nD .if o .tl \\*(]W\\*(]L\\*(PN%
  96. .if  \\nD .if e .tl \\*(PN%\\*(]L\\*(]W
  97. .if !\\nX 'bp
  98. .if \\nX .if \\n%>=\\nX \{\
  99. .ds PN \\n%
  100. .pn 1
  101. .af % a
  102. .nr X 0
  103. 'bp 1\}
  104. .if \\nX .if \\n%<\\nX 'bp
  105. .ev
  106. ..
  107. '    # the cut mark -- we don't need this -- Henry
  108. .  \".if n .ig
  109. .  \".de }C
  110. .  \".po .1i
  111. .  \".tl '-'
  112. .  \".po
  113. .  \"..
  114. '    # the final cut mark -- we don't need this -- Henry
  115. .  \".de }M
  116. .  \".}N
  117. .  \".wh -1p }C
  118. .  \".ll \\n(LLu
  119. .  \"..
  120. '    # no runout unless there was a .TH
  121. .de }K
  122. .}N
  123. .pl 1
  124. .ll \\n(LLu
  125. ..
  126. .em }K
  127. '    # set title and heading
  128. .de TH
  129. .PD
  130. .DT
  131. .if n .nr IN .5i
  132. .if t .nr IN .5i
  133. .ll 6.5i
  134. .nr LL \\n(.l
  135. .ds ]H \\$1\|(\|\\$2\|)
  136. .ds ]D MISC. REFERENCE MANUAL PAGES
  137. .if '\\$2'1' .ds ]D USER COMMANDS 
  138. .if '\\$2'1C' .ds ]D USER COMMANDS
  139. .if '\\$2'1G' .ds ]D USER COMMANDS
  140. .if '\\$2'1S' .ds ]D USER COMMANDS
  141. .if '\\$2'1V' .ds ]D USER COMMANDS 
  142. .if '\\$2'2' .ds ]D SYSTEM CALLS
  143. .if '\\$2'2V' .ds ]D SYSTEM CALLS
  144. .if '\\$2'3' .ds ]D C LIBRARY FUNCTIONS
  145. .if '\\$2'3C' .ds ]D COMPATIBILITY FUNCTIONS
  146. .if '\\$2'3F' .ds ]D FORTRAN LIBRARY ROUTINES
  147. .if '\\$2'3K' .ds ]D KERNEL VM LIBRARY FUNCTIONS
  148. .if '\\$2'3L' .ds ]D LIGHTWEIGHT PROCESSES LIBRARY
  149. .if '\\$2'3M' .ds ]D MATHEMATICAL LIBRARY
  150. .if '\\$2'3N' .ds ]D NETWORK FUNCTIONS
  151. .if '\\$2'3R' .ds ]D RPC SERVICES LIBRARY
  152. .if '\\$2'3S' .ds ]D STANDARD I/O FUNCTIONS
  153. .if '\\$2'3V' .ds ]D SYSTEM V LIBRARY
  154. .if '\\$2'3X' .ds ]D MISCELLANEOUS LIBRARY FUNCTIONS
  155. .if '\\$2'4' .ds ]D DEVICES AND NETWORK INTERFACES
  156. .if '\\$2'4F' .ds ]D PROTOCOL FAMILIES
  157. .if '\\$2'4I' .ds ]D DEVICES AND NETWORK INTERFACES
  158. .if '\\$2'4M' .ds ]D DEVICES AND NETWORK INTERFACES
  159. .if '\\$2'4N' .ds ]D DEVICES AND NETWORK INTERFACES
  160. .if '\\$2'4P' .ds ]D PROTOCOLS
  161. .if '\\$2'4S' .ds ]D DEVICES AND NETWORK INTERFACES
  162. .if '\\$2'4V' .ds ]D DEVICES AND NETWORK INTERFACES
  163. .if '\\$2'5' .ds ]D FILE FORMATS
  164. .if '\\$2'5V' .ds ]D FILE FORMATS
  165. .if '\\$2'6' .ds ]D GAMES AND DEMOS
  166. .if '\\$2'7' .ds ]D PUBLIC FILES, TABLES, AND TROFF MACROS
  167. .if '\\$2'8' .ds ]D MAINTENANCE COMMANDS
  168. .if '\\$2'8C' .ds ]D MAINTENANCE COMMANDS
  169. .if '\\$2'8S' .ds ]D MAINTENANCE COMMANDS
  170. .if '\\$2'8V' .ds ]D MAINTENANCE COMMANDS
  171. .if '\\$2'L' .ds ]D LOCAL COMMANDS
  172. .if !'\\$4''  .ds ]W \\$4
  173. .if !'\\$5''  .ds ]D \\$5
  174. .wh 0 }H
  175. .if t .wh -1i }F
  176. .if n .wh -1.167i }F
  177. .em }M
  178. .if !\\n(nl .if !\\nP .nr P 1
  179. .if !\\n(nl .if \\nP .pn \\nP
  180. .if \\nX .if \\nP>=\\nX \{\
  181. .ds PN \\nP
  182. .pn 1
  183. .af % a
  184. .nr X 0 \}
  185. .if !\\n(nl .if \\nP .nr P 0
  186. .if  \\nC .if \\n(nl .bp
  187. .if  !\\nC .if \\n(nl .bp 1
  188. .ds ]L Last change: \\$3
  189. .}E
  190. .DT
  191. .nr )I .5i
  192. .nr )R 0
  193. .  \".if n .na
  194. .mk ka
  195. .if !'\\n(ka'-1' .bp
  196. ..
  197. '    # IX - Make an Index Entry
  198. .de IX
  199. .if \\nF .tm .IE\tENTRY\t\\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\*(PN\\n%
  200. ..
  201. '    # TX - Resolve a Title Reference
  202. .de TX
  203. .ds Tx "UNKNOWN TITLE ABBREVIATION: \\$1
  204. .if '\\$1'DOCBOX' .ds Tx "Documentation Set
  205. .if '\\$1'BGBOX' .ds Tx "Beginner's Guides Minibox
  206. .if '\\$1'GSBG' .ds Tx "Getting Started with SunOS: Beginner's Guide
  207. .if '\\$1'SUBG' .ds Tx "Setting Up Your SunOS Environment: Beginner's Guide 
  208. .if '\\$1'SHBG' .ds Tx "Self Help with Problems: Beginner's Guide
  209. .if '\\$1'SVBG' .ds Tx "SunView\ 1 Beginner's Guide
  210. .if '\\$1'MMBG' .ds Tx "Mail and Messages: Beginner's Guide
  211. .if '\\$1'DMBG' .ds Tx "Doing More with SunOS: Beginner's Guide
  212. .if '\\$1'UNBG' .ds Tx "Using the Network: Beginner's Guide
  213. .if '\\$1'GDBG' .ds Tx "Games, Demos & Other Pursuits
  214. .if '\\$1'SABOX' .ds Tx "System Administration Manuals Minibox
  215. .if '\\$1'CHANGE' .ds Tx "Release 4.0 Change Notes
  216. .if '\\$1'INSTALL' .ds Tx "Installing the SunOS
  217. .if '\\$1'ADMIN' .ds Tx "System and Network Administration
  218. .if '\\$1'SECUR' .ds Tx "Security Features Guide
  219. .if '\\$1'PROM' .ds Tx "PROM User's Manual
  220. .if '\\$1'DIAG' .ds Tx "Sun System Diagnostics Manual
  221. .if '\\$1'SUNDIAG' .ds Tx "Sundiag User's Guide
  222. .if '\\$1'REFBOX' .ds Tx "Reference Manuals Minibox
  223. .if '\\$1'MANPAGES' .ds Tx "SunOS Reference Manual
  224. .if '\\$1'REFMAN' .ds Tx "SunOS Reference Manual
  225. .if '\\$1'SSI' .ds Tx "Sun System Introduction
  226. .if '\\$1'SSO' .ds Tx "System Services Overview
  227. .if '\\$1'TEXT' .ds Tx "Editing Text Files
  228. .if '\\$1'DOCS' .ds Tx "Formatting Documents
  229. .if '\\$1'TROFF' .ds Tx "Using \&\fLnroff\fP and \&\fLtroff\fP
  230. .if '\\$1'INDEX' .ds Tx "Global Index
  231. .if '\\$1'PTBOX' .ds Tx "Programmer's Tools Manuals Minibox
  232. .if '\\$1'CPG' .ds Tx "C Programmer's Guide
  233. .if '\\$1'CREF' .ds Tx "C Reference Manual
  234. .if '\\$1'ASSY' .ds Tx "Assembly Language Manual
  235. .if '\\$1'PUL' .ds Tx "Programming Utilities and Libraries
  236. .if '\\$1'DEBUG' .ds Tx "Debugging Tools
  237. .if '\\$1'NETP' .ds Tx "Network Programming
  238. .if '\\$1'DRIVER' .ds Tx "Writing Device Drivers
  239. .if '\\$1'FPOINT' .ds Tx "Floating Point Programmers Guide
  240. .if '\\$1'SVPG' .ds Tx "SunView\ 1 Programmer's Guide
  241. .if '\\$1'SVSPG' .ds Tx "SunView\ 1 System Programmer's Guide
  242. .if '\\$1'PIXRCT' .ds Tx "Pixrect Reference Manual
  243. .if '\\$1'CGI' .ds Tx "SunCGI Reference Manual
  244. .if '\\$1'CORE' .ds Tx "SunCore Reference Manual
  245. .if '\\$1'4ASSY' .ds Tx "Sun-4 Assembly Language Reference Manual
  246. .    # non-Sun titles
  247. .if '\\$1'KR' .ds Tx "The C Programming Language
  248. \fI\\*(Tx\fP\\$2
  249. ..
  250. '    # section heading
  251. .de SH
  252. .}X 0
  253. .nr )E 2
  254. \&\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6
  255. ..
  256. '   # sub section heading
  257. .de SS
  258. .}X .25i "" ""
  259. .nr )E 2
  260. \&\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6
  261. .br
  262. ..
  263. '    # subroutine for section heading
  264. .de }X
  265. .}E
  266. .ti \\$1
  267. .sp \\n()Pu
  268. .ne 2
  269. .nr )R 0
  270. .fi
  271. .it 1 }N
  272. .SM
  273. .B
  274. ..
  275. '    # end of SH (cf }X above and }N below)
  276. .de }2
  277. .nr )E 0
  278. .}E
  279. .nr )I .5i
  280. .ns
  281. ..
  282. '    # italic
  283. .de I
  284. .ft 2
  285. .it 1 }N
  286. .if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6
  287. ..
  288. '    # bold
  289. .de B
  290. .ft 3
  291. .it 1 }N
  292. .if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6
  293. ..
  294. '    # small
  295. .de SM
  296. .ps 9
  297. .it 1 }N
  298. .if !"\\$1"" \&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6
  299. ..
  300. '    # combinations of Roman, italic, bold
  301. .de RI
  302. .}S 1 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
  303. ..
  304. .de VS
  305. 'if '\\$1'4' .mc \s12\(br\s0
  306. ..
  307. .de VE
  308. 'mc
  309. ..
  310. .de RB
  311. .}S 1 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
  312. ..
  313. .de IR
  314. .}S 2 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
  315. ..
  316. .de IB
  317. .}S 2 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
  318. ..
  319. .de BR
  320. .}S 3 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
  321. ..
  322. .de BI
  323. .}S 3 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
  324. ..
  325. '    # make special case of shift out of italic
  326. .de }S
  327. .ds ]F
  328. .if "\\$1"2" .if !"\\$5"" .ds ]F\^
  329. .ie !"\\$4"" .}S \\$2 \\$1 "\\$3\f\\$1\\$4\\*(]F" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
  330. .el \\$3
  331. .}f
  332. ..
  333. '    # small and boldface
  334. .de SB
  335. \&\fB\s-1\&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6\s0\fR
  336. ..
  337. '    # paragraph
  338. .de LP
  339. .PP
  340. ..
  341. .de PP
  342. .sp \\n()Pu
  343. .ne 2
  344. .}E
  345. .nr )I .5i
  346. .ns
  347. ..
  348. '    # paragraph distance
  349. .de PD
  350. .if t .nr )P .4v
  351. .if n .nr )P 1v
  352. .if !"\\$1"" .nr )P \\$1v
  353. ..
  354. '    # hanging indent
  355. .de HP
  356. .sp \\n()Pu
  357. .ne 2
  358. .if !"\\$1"" .nr )I \\$1n
  359. .ll \\n(LLu
  360. .in \\n()Ru+\\n(INu+\\n()Iu
  361. .ti \\n()Ru+\\n(INu
  362. .}f
  363. ..
  364. '    # indented paragraph
  365. .de IP
  366. .TP \\$2
  367. \&\\$1
  368. ..
  369. '    # hanging label
  370. .de TP
  371. .if !"\\$1"" .nr )I \\$1n
  372. .sp \\n()Pu
  373. .in \\n()Ru
  374. .nr )E 1
  375. .ns
  376. .it 1 }N
  377. .di ]B
  378. ..
  379. '    # end of TP (cf }N below)
  380. .de }1
  381. .ds ]X \&\\*(]B\\
  382. .nr )E 0
  383. .if !"\\$1"" .nr )I \\$1n
  384. .}f
  385. .ll \\n(LLu
  386. .in \\n()Ru+\\n(INu+\\n()Iu
  387. .ti \\n(INu
  388. .ie !\\n()Iu+\\n()Ru-\w\\*(]Xu-3p \{\\*(]X
  389. .br\}
  390. .el \\*(]X\h|\\n()Iu+\\n()Ru\c
  391. .}f
  392. ..
  393. '    # handle end of 1-line features
  394. .de }N
  395. .if \\n()E .br
  396. .di
  397. .if "\\n()E"0" .}f
  398. .if "\\n()E"1" .}1
  399. .if "\\n()E"2" .}2
  400. .nr )E 0
  401. ..
  402. '    # increase relative indent
  403. .de RS
  404. .nr ]\\n+()p \\n()I
  405. .nr )\\n()p \\n()R
  406. .ie !"\\$1"" .nr )R +\\$1n
  407. .el .nr )R +\\n()I
  408. .nr )I .5i
  409. .}E
  410. ..
  411. '    # decrease relative indent
  412. .de RE
  413. .if !"\\$1"" \{.ie "\\$1"0" .nr )p 1 1
  414. .        el .nr )p \\$1 1\}
  415. .ds ]i \\*(]I\\n()p
  416. .ds ]r \\*(]R\\n()p
  417. .nr )I \\*(]i
  418. .nr )R \\*(]r
  419. .if \\n()p .nr )p -1
  420. .}E
  421. ..
  422. .nr )p 0 1
  423. .ds ]I \\\\n(]
  424. .ds ]R \\\\n()
  425. .bd S 3 3
  426. .if t .ds R \(rg
  427. .if n .ds R (Reg.)
  428. .ds S \s10
  429. .hy 14
  430.