home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 4 / DATAFILE_PDCD4.iso / unix / riscbsd / 1_1_contri / usd / 29_refer / refer_mac < prev   
Encoding:
Text File  |  1986-06-02  |  6.4 KB  |  205 lines

  1. .\" Copyright (c) 1983 Regents of the University of California.
  2. .\" All rights reserved.  The Berkeley software License Agreement
  3. .\" specifies the terms and conditions for redistribution.
  4. .\"
  5. .\"    @(#)refer.mac    6.1 (Berkeley) 6/2/86
  6. .\"
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.             COMMENTED REFER MACROS
  14.  
  15.  
  16.  
  17.  
  18. .    \" refer macros for citations
  19. .de []
  20. .][ \\$1                # mysterious synonym for .][
  21. ..
  22. .de ][                    # changes .][ according to argument
  23. .if \\$1>4 .tm %M undefined (Bell Labs) # no macros defined above [4
  24. .[\\$1                    # call one of the macros below
  25. ..
  26. .if \n(.V>19 .ds [. \f1[        # open bracket for nroff
  27. .if \n(.V<20 .ds [. \f1\s-2\v'-0.4m'    # superscripting for troff/daisy-wheel
  28. .if \n(.V>19 .ds .] ]\fP        # close bracket for nroff
  29. .if \n(.V<20 .ds .] \v'0.4m'\s+2\fP    # end troff/daisy-wheel superscripting
  30. .if n .ds [o \&"            # open quote for nroff
  31. .if n .ds [c \&"            # close quote for nroff
  32. .if t .ds [o ``                # open quote for troff
  33. .if t .ds [c ''                # close quote for troff
  34. .ds <. .                # period before citation number
  35. .ds <, ,                # comma before citation number
  36. .    \" [0 - other type of citation
  37. .de [0
  38. .FS                    # start -ms footnote
  39. .nr [: 0                # has anything been printed?
  40. .if !"\\*([F"" .FP \\*([F        # number for footnote paragraph
  41. .if !"\\*([Q"" \{\
  42. .nr [: 1                # if there's a corporate author,
  43. \\*([Q\c                # set [: to 1 and print [Q
  44. .\}
  45. .if !"\\*([A"" \{\            # if there's an author,
  46. .nr [: 1                # set [: to 1,
  47. \\*([A\c                # print the author and continue 
  48. .\}
  49. .if !"\\*([T"" \{\            # if there's a title,
  50. .if \\n([:>0 ,                # print comma if there was author,
  51. .nr [: 1                # set [: to 1,
  52. \f2\\*([T\f1\c                # and print the title in italics
  53. .\}
  54. .if !"\\*([S"" , \\*([S\c        # series title, not in italics
  55. .if !"\\*([V"" , \\*([V\c        # if there's a volume, print it
  56. .if !"\\*([P"" \{\
  57. .ie \\n([P>0 , pp. \\*([P\c        # if multiple pages, use pp.
  58. .el , p. \\*([P\c            # if only one page, use p.
  59. .\}
  60. .if !"\\*([C"" , \\*([C\c        # if there's a city, print it
  61. .if !"\\*([D"" , \\*([D\c        # if there's a date, print it
  62. .if \\n([:>0 \&.            # if [Q [A or [T, print period
  63. .if !"\\*([O"" \\*([O            # print the other field if present
  64. .FE                    # end -ms footnote
  65. ..
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76. .de [1    \" [1 - journal article
  77. .FS                    # start -ms footnote
  78. .if !"\\*([F"" .FP \\*([F        # number for footnote paragraph
  79. .if !"\\*([Q"" \\*([Q,            # if corporate author, print it
  80. .if !"\\*([A"" \\*([A,            # if author, print with comma
  81. .if !"\\*([T"" \\*([o\\*([T,\\*([c    # if title, print with quotes
  82. \f2\\*([J\f1\c                # always a journal, in italics
  83. .if !"\\*([V"" , vol. \\*([V\c        # if volume, print after "vol."
  84. .if !"\\*([N"" , no. \\*([N\c        # if number, print after "no."
  85. .if !"\\*([P"" \{\
  86. .ie \\n([P>0 , pp. \\*([P\c        # if multiple pages, use pp.
  87. .el , p. \\*([P\c            # if only one page, use p.
  88. .\}
  89. .if !"\\*([I"" , \\*([I\c        # if there's a publisher, print it
  90. .if !"\\*([C"" , \\*([C\c        # if there's a city, print it
  91. .if !"\\*([D"" , \\*([D\c        # if there's a date, print it
  92. \&.                    # end reference with period
  93. .if !"\\*([O"" \\*([O            # if other information, print it
  94. .FE                    # end -ms footnote
  95. ..
  96. .de [2    \" [2 - book
  97. .FS                    # start -ms footnote
  98. .if !"\\*([F"" .FP \\*([F        # number for footnote paragraph
  99. .if !"\\*([Q"" \\*([Q,            # if corporate author, print it
  100. .if !"\\*([A"" \\*([A,            # if author, print with comma
  101. .if !"\\*([T"" \f2\\*([T,\f1        # title and comma in italics
  102. .if !"\\*([S"" \\*([S,            # series title, not in italics
  103. .if !"\\*([V"" \\*([V,            # perhaps [V says "4 vols."
  104. .if !"\\*([P"" \{\
  105. .ie \\n([P>0 pp. \\*([P,        # if multiple pages, use pp.
  106. .el p. \\*([P,                # if only one page, use p.
  107. .\}
  108. \\*([I\c                # always a publisher with book
  109. .if !"\\*([C"" , \\*([C\c        # if there's a city, print it
  110. .if !"\\*([D"" , \\*([D\c        # if there's a date, print it
  111. \&.                    # end reference with period
  112. .if !"\\*([O"" \\*([O            # if other information, print it
  113. .FE                    # end -ms footnote
  114. ..
  115. .de [3    \" [3 - article in book
  116. .FS                    # start -ms footnote
  117. .if !"\\*([F"" .FP \\*([F        # number for footnote paragraph
  118. .if !"\\*([Q"" \\*([Q,            # if corporate author, print it
  119. .if !"\\*([A"" \\*([A,            # if author, print with comma
  120. .if !"\\*([T"" \\*([o\\*([T,\\*([c    # title and comma in quotes
  121. in \f2\\*([B\f1\c            # always "in" book, italicized
  122. .if !"\\*([E"" , ed. \\*([E\c        # if an editor, should follow book
  123. .if !"\\*([S"" , \\*([S\c        # series title, not in italics
  124. .if !"\\*([V"" , vol. \\*([V\c        # if volume, print after "vol."
  125. .if !"\\*([P"" \{\
  126. .ie \\n([P>0 , pp. \\*([P\c        # if multiple pages, use pp.
  127. .el , p. \\*([P\c            # if only one page, use p.
  128. .\}
  129. .if !"\\*([I"" , \\*([I\c        # if there's a publisher, print it
  130. .if !"\\*([C"" , \\*([C\c        # if there's a city, print it
  131. .if !"\\*([D"" , \\*([D\c        # if there's a date, print it
  132. \&.                    # end reference with period
  133. .if !"\\*([O"" \\*([O            # if other information, print it
  134. .FE                    # end -ms footnote
  135. ..
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144. .    \" [4 - report
  145. .de [4
  146. .FS                    # start -ms footnote
  147. .if !"\\*([F"" .FP \\*([F        # number for footnote paragraph
  148. .if !"\\*([Q"" \\*([Q,            # if corporate author, print it
  149. .if !"\\*([A"" \\*([A,            # if author, print with comma
  150. .if !"\\*([T"" \\*([o\\*([T,\\*([c    # title and comma in quotes
  151. .if !"\\*([R"" \\*([R\c            # if a report number, print it
  152. .if !"\\*([G"" \& (\\*([G)\c        # put [G string in parentheses
  153. .if !"\\*([P"" \{\
  154. .ie \\n([P>0 , pp. \\*([P\c        # if multiple pages, use pp.
  155. .el , p. \\*([P\c            # if only one page, use p.
  156. .\}
  157. .if !"\\*([I"" , \\*([I\c        # if there's a publisher, print it
  158. .if !"\\*([C"" , \\*([C\c        # if there's a city, print it
  159. .if !"\\*([D"" , \\*([D\c        # if there's a date, print it
  160. \&.                    # end reference with period
  161. .if !"\\*([O"" \\*([O            # if other information, print it
  162. .FE                    # end -ms footnote
  163. ..
  164. .de ]<                    # mysterious synonym for [<
  165. .[<
  166. ..
  167. .de [<                    # For footnotes at end of text,
  168. .SH                    # with the -e or -s $LIST$ options.
  169. References                # Print References section heading.
  170. .LP                    # Initialize; IP references printed,
  171. .rn IP FP                # because FP is replaced by IP,
  172. .rm FS FE                # and footnote macros are removed.
  173. ..
  174. .de [>                    # mysterious synonym for ]>
  175. .]>
  176. ..
  177. .de ]>                    # with the -e or -s $LIST$ options,
  178. .sp                    # put a space between references
  179. ..
  180. .de ]-                    # mysterious synonym for [-
  181. .[-
  182. ..
  183. .de [-                    # Appears at start of references,
  184. .rm [Q [A [T [J [B [E [S [V        # to remove old string definitions--
  185. .rm [N [P [I [C [D [O [R [G        # if you add new field strings,
  186. ..                    # they should be removed as well.
  187. .de ]]
  188. .\" circumvent EOF bug in troff        # mysterious fix for .MC output
  189. ..
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196. Note:    the double quotes in string comparisons are in fact control-g
  197.     characters; this allows fields to contain double quotes.
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.