home *** CD-ROM | disk | FTP | other *** search
- From papowell@umn-cs.UUCP Sat Feb 28 09:58:19 1987
- Path: beno!seismo!ut-sally!husc6!uwvax!rutgers!dayton!umn-cs!papowell
- From: papowell@umn-cs.UUCP (Patrick Powell)
- Newsgroups: comp.arch
- Subject: refer macro package
- Message-ID: <1346@umn-cs.UUCP>
- Date: 28 Feb 87 14:58:19 GMT
- Organization: University of Minnesota, Minneapolis
- Lines: 1594
- Posted: Sat Feb 28 08:58:19 1987
-
- #! /bin/sh
- # This is a shell archive, meaning:
- # 1. Remove everything above the #! /bin/sh line.
- # 2. Save the resulting text in a file.
- # 3. Execute the file with /bin/sh (not csh) to create:
- # refer.src
- # refer.text
- # tmac.ref.7.tex
- # tmac.refCACM
- # tmac.refDEF
- # This archive created: Sat Feb 28 08:55:28 1987
- export PATH; PATH=/bin:/usr/bin:$PATH
- if test -f 'refer.src'
- then
- echo shar: "will not over-write existing file 'refer.src'"
- else
- cat << \SHAR_EOF > 'refer.src'
- .\" Documentation for Refer macros (October 28, 1982)
- .\" R. Goebel
- .\" Department of Computer Science
- .\" University of Waterloo
- .\" Waterloo, Ontario
- .\" Canada N2L 3G1 (519) 885-1211 x3512
- .\" UUCP: watmath!rggoebel
- .\" ------------------------------------------------
- .\"
- .\" To produce hard copies:
- .\"
- .\" cd /u/rggoebel/pub/doc
- .\" versatec: make vpr INPUT=refer
- .\" imagen: make dipr INPUT=refer
- .\" printer: make hpr INPUT=refer
- .\" ________________________________________________
- .\"
- .ds nt \fInroff\fR(1)/\fItroff\fR(1)
- .ds rf \fIrefer\fR(1)
- .RP
- .TL
- Reference Formatting Macros
- .AU
- Randy Goebel
- .AI
- Computer Science Department
- University of Waterloo
- Waterloo, Ontario
- Canada N2L 3G1
- .AB
- This brief document describes the use of a set of \*(nt macros
- for formatting bibliographic entries maintained with the inverted index
- utilities described by Lesk.
- .[
- Lesk 1979
- .]
- The macros extend the set of ``%'' keys used by Lesk's suite of
- programs to provide for a bit more flexibility
- in defining and formatting various kinds of bibliographic citations.
- It is important to realize that extending the ``%'' key fields for each
- bibliographic entry is, in part, a response to the many bugs of the \*(rf
- software.
- The macros are written to be independent of any existing macro package
- (e.g., MS or ME), and can be used alone or together with other macro
- packages.
- .AE
- .SH
- Introduction
- .PP
- The UNIX suite of programs for maintaining and using bibliographic
- data is extremely useful,
- .[
- Lesk 1979
- .]
- but suffers from at least two difficulties:
- 1) the \*(rf program attempts to make inferences about what
- kind of bibliographic entry is being cited (e.g., book article,
- proceedings article, etc.) but its inferences are frequently wrong.
- Its inferences are communicated as integer arguments
- to the formatting macros and can thus be ignored.
- The macros described herein provide an alternative when
- those inferences are ignored;
- 2) the \*(rf program fails to communicate more detailed bibliographic
- data to the standard formatting macros,
- e.g., multiple editors should be flagged as ``(eds.)'' not ``(ed.)''.
- The macros herein were designed to overcome several such difficulties.
- .PP
- Many of \*(rf's difficulties result from a lack of communication
- between the bibliographic data base entry and the formatting macros.
- Rather than rewrite \*(rf, the approach taken here is to provide
- extra information in each bibliographic entry by extra ``%'' key fields,
- and then have the macro definitions use those fields to produce a more
- ``accurate'' formatting of the citation.
- .SH
- Document formats
- .PP
- Instead of relying on \*(rf
- to make the correct inference about the kind of document cited, these macros
- .B require
- that a ``%l'' entry be associated with each bibliographic data base
- entry. The value of the ``%l'' field fixes the document type once and for all,
- and is used to determine the final format of any citation of that document.
- .PP
- Current document types supported are:
- .DS
- book
- journal-article
- proceedings-article
- book-article
- edited-book
- edited-proceedings
- technical-report
- manuscript
- dissertation
- edited-journal
- .DE
- .PP
- The formatting macros use the ``%l'' field to determine how
- a reference is to be formatted.
- If the ``%l'' field is missing or is not one of the
- document types named above, the macros will use a default format.
- Consider the following example bibliographic entry:
- .DS
- %A F. Foo
- %A B. Bar
- %D 1982
- %e 2
- %J Artificial Insemination
- %T Special issue on bull-breeding
- %V 11
- %N 4
- %l edited-journal
- .DE
- The above document is formatted as follows:
- .LP
- .in +5
- .na
- .ds [F Foo82a
- .]-
- .ds [A Foo, F.
- .as [A " and Bar, B.
- .ds [D 1982
- .ds [e 2
- .ds [J Artificial Insemination
- .ds [T Special issue on bull-breeding
- .ds [V 11
- .ds [N 4
- .ds [l edited-journal
- .nr [T 0
- .nr [A 1
- .nr [O 0
- .][ 1
- .in -5
- .ad
- .LP
- If the ``%e'' field is included and is not null, then the formatting
- macros will produce ``F. Foo and B. Bar (1982, eds.)'' instead of
- ``F. Foo and B. Bar (1982, ed.)''
- As with all bibliographic entries, the order of fields is
- not important.
- .SH
- Document formatting details
- .PP
- The University of Chicago Manual of Style was used as a basic guideline
- for the preparation of these macros.
- .[
- Chicago 1969 A manual of style
- .]
- Among other things, this means that \*(rf's in-text citation style using
- footnotes is
- .B not
- used; as indicated by the Chicago Manual of Style, citations
- in the Natural Sciences normally use the (<author><year>) style of in-text
- citation.
- The footnote style can be provided by changing the string definitions
- for the in-text citation brackets (see below), but the reference listing
- will be produced in the same way.
- .PP
- The use of each field for each document type is given below.
- An asterisk beside a field name indicates a required field.
- Note that very few fields are required; the macro for each
- format will do its best to provide reasonable output with the
- information provided.
- .LP
- .DS L
- .B book
- .sp
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %V <volume> (appears as ``vol. <volume>'')
- %S <series> (include series number if it exists)
- %n <edition> (appears as ``edition <edition>'')
- %I <publisher>*
- %C <city of publication>
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l book*
- .DE
- .LP
- .DS L
- .B journal-article
- .sp
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %J <journal>*
- %V <volume>
- %N <number>
- %M <month>
- %I <publisher>
- %C <city of publication>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l journal-article*
- .DE
- .LP
- .DS L
- .B proceedings-article
- .sp
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %J <proceedings title>*
- %V <volume>
- %M <month>
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city of conference>
- %E <editor(s)> (multiple editors must be given in one field)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l proceedings-article*
- .DE
- .LP
- .DS L
- .B book-article
- .sp
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %B <book title>*
- %n <edition> (appears as ``edition <edition>'')
- %V <volume> (appears as ``vol. <volume>'')
- %S <series> (include series number if it exists)
- %E <editor(s)> (multiple editors must be given in one field)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %I <publisher>*
- %C <city of publication>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l book-article*
- .DE
- .LP
- .DS L
- .B edited-book
- .sp
- %A <editor(s)>* (note that multiple entries can appear here)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %D <year>*
- %T <title>*
- %n <edition> (appears as ``edition <edition>'')
- %V <volume> (appears as ``vol. <volume>'')
- %S <series> (include series number if it exists)
- %I <publisher>*
- %C <city of publication>
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l edited-book*
- .DE
- .LP
- .DS L
- .B edited-proceedings
- .sp
- %A <editor(s)>* (note that multiple entries can appear here)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %D <year>*
- %J <proceedings title>*
- %V <volume>
- %M <month>
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city of conference>
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l edited-proceedings*
- .DE
- .LP
- .DS L
- .B technical-report
- .sp
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %R <report number>
- %S <subdivision> (e.g., Computer Science Department, Systems Lab, etc.)
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city>
- %M <month>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l technical-report*
- .DE
- .LP
- .DS L
- .B manuscript
- .sp
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %S <subdivision> (e.g., Computer Science Department, Systems Lab, etc.)
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city>
- %M <month>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l manuscript*
- .DE
- .LP
- .DS L
- .B dissertation
- .sp
- %A <author>*
- %D <year>*
- %T <title>*
- %Q <level> (e.g., Ph.D., M.Math., D.Sc., etc.)
- %S <subdivision> (e.g., Computer Science Department, Systems Lab, etc.)
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city>
- %M <month>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l dissertation*
- .DE
- .LP
- .DS L
- .B edited-journal
- .sp
- %A <editor(s)>* (note that multiple entries can appear here)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %D <year>*
- %T <title>* (e.g., special issue title)
- %J <journal>*
- %V <volume>
- %N <number>
- %M <month>
- %I <publisher>
- %C <city of publication>
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l edited-journal*
- .DE
- .SH
- User options
- .PP
- As with the standard set of \*(rf macros, the user can redefine a few
- macros and strings to customize his in-text citation format and
- reference listing.
- The following macro definition is used at the beginning of each reference
- in the reference list:
- .LP
- .DS
- \\.de rF
- \\.ne 4
- \\.ti -5
- [\\\\\\\\*([F]
- \\.br
- \\..
- .DE
- .LP
- The ``rF'' macro works in conjunction with the following two macros, called
- at the beginning and end (respectively) of the collected list of references:
- .LP
- .DS
- \\.de ]<
- \\.ft R
- \\.ls 1
- \\.in 5
- \\.sp 2
- \\.na
- \\..
-
- \\.de ]>
- \\.ft P
- \\.ad
- \\.in 0
- \\.sp 2
- \\..
- .DE
- .LP
- In the reference list, the indenting of each reference can be
- changed by replacing the definitions of the above macros.
- .PP
- The \*(rf software constructs an \*(nt string ``[F'' to be used as
- the in-text citation for each document cited.
- The contents of this string is controlled by \*(rf command line
- parameters,
- .[
- Lesk 1979
- .]
- and can be adjusted by the user.
- The in-text citation brackets are defined as
- .LP
- .DS
- \\.ds [. " [
- \\.ds .] ]
- .DE
- The first definition is expanded before the in-text citation is formatted,
- and the latter definition is expanded just after.
- Thus, the default in-text citation is a blank, a left square bracket,
- the string value of ``[F'' followed by a right square bracket.
- These bracketing strings can be redefined by the user,
- e.g., to produce in-text citations as footnotes.
- .PP
- The following string definitions control the positioning
- of punctuation:
- .LP
- .DS
- \\.ds >. .
- \\.ds <. \&
- \\.ds >, ,
- \\.ds <, \&
- \\.ds >; ;
- \\.ds <; \&
- \\.ds >: :
- \\.ds <: \&
- .DE
- The above definitions will position all punctuation after the in-text
- citation.
- .SH
- References
- .LP
- .[
- $LIST$
- .]
- _____________________
- .TH TMAC.REF 7 "Waterloo"
- .\" Programmer's Manual entry for Refer macros (September 17, 1983)
- .\" R. Goebel
- .\" Department of Computer Science
- .\" University of Waterloo
- .\" Waterloo, Ontario
- .\" Canada N2L 3G1 (519) 885-1211 x3512
- .\" UUCP: watmath!rggoebel
- .\" ------------------------------------------------
- .\"
- .\" To produce hard copies (at UWaterloo):
- .\"
- .\" versatec: vtroff -man /u/rggoebel/pub/doc/tmac.ref.7
- .\" imagen: ditroff -man /u/rggoebel/pub/doc/tmac.ref.7 | dcan
- .\" printer: nroff -man -Tlpr /u/rggoebel/pub/doc/tmac.ref.7
- .\" ________________________________________________
- .\"
- .ds nt \fInroff\fR(1)/\fItroff\fR(1)
- .ds rf \fIrefer\fR(1)
- .SH NAME
- .B tmac.ref
- \- a family of macros for formatting \fIrefer\fR(1) output.
- .SH SYNOPSIS
- Include the \*(nt command
- .br
- .B " .so /u/rggoebel/pub/src/tmac.ref\c"
- <style>
- .br
- in <sourcefile> and use the commands
- .br
- .B " refer"
- [options]\ <sourcefile>
- .B "| nroff"
- [options]\ ...
- .br
- .B " refer"
- [options]\ <sourcefile>
- .B "| troff"
- [options]\ ...
- .SH DESCRIPTION
- .PP
- This package of \*(nt macro definitions will format the reference
- citation strings produced by the \*(nt preprocessor \*(rf.
- The macros are compatible with the
- .IR ms (7)
- and
- .IR me (7)
- macro packages.
- The currently available options for <style> are:
- .TP
- DEF
- .B ".so /u/rggoebel/pub/src/tmac.refDEF"
- .br
- to format each reference in the default style.
- .TP
- CACM
- .B ".so /u/rggoebel/pub/src/tmac.refCACM"
- .br
- with the \*(rf command line options
- .B "-a -s"
- for ACM Communications format.
- .SH FILES
- /u/rggoebel/pub/src/tmac.refDEF
- .br
- /u/rggoebel/pub/src/tmac.refCACM
- .SH "SEE ALSO"
- .nf
- /u/rggoebel/pub/doc/refer.text documentation for alternative macros
- /u/rggoebel/pub/doc/addbib.1.text update bibliographic databases
- /u/rggoebel/pub/doc/indxbib.1.text create inverted indices
- /u/rggoebel/pub/doc/sortbib.1.text sort bibiographic databases
- /u/rggoebel/pub/doc/roffbib.1.text print bibilographic databases
- .fi
- .SH DIAGNOSTICS
- Each <style> will remind the user of any required \*(rf command line
- options.
- .SH AUTHOR
- Randy Goebel, Department of Computer Science, University of Waterloo,
- Waterloo, Ontario, Canada, N2L 3G1, (519) 885-1211 (x3512),
- UUCP: watmath!rggoebel.
- ------------------
- Notice that the latter uses -man, and the former users -ms
-
-
- Randy
-
- SHAR_EOF
- fi
- if test -f 'refer.text'
- then
- echo shar: "will not over-write existing file 'refer.text'"
- else
- cat << \SHAR_EOF > 'refer.text'
-
-
-
-
-
-
-
-
-
- Reference Formatting Macros
-
-
- Randy Goebel
-
- Computer Science Department
- University of Waterloo
- Waterloo, Ontario
- Canada N2L 3G1
-
-
-
- _A_B_S_T_R_A_C_T
-
- This brief document describes the use of a set of
- _n_r_o_f_f(1)/_t_r_o_f_f(1) macros for formatting bibliographic
- entries maintained with the inverted index utilities
- described by Lesk [Lesk79a]. The macros extend the set
- of ``%'' keys used by Lesk's suite of programs to pro-
- vide for a bit more flexibility in defining and format-
- ting various kinds of bibliographic citations. It is
- important to realize that extending the ``%'' key
- fields for each bibliographic entry is, in part, a
- response to the many bugs of the _r_e_f_e_r(1) software.
- The macros are written to be independent of any exist-
- ing macro package (e.g., MS or ME), and can be used
- alone or together with other macro packages.
-
-
-
- September 20, 1983
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Reference Formatting Macros
-
-
- Randy Goebel
-
- Computer Science Department
- University of Waterloo
- Waterloo, Ontario
- Canada N2L 3G1
-
-
-
- _I_n_t_r_o_d_u_c_t_i_o_n
-
- The UNIX suite of programs for maintaining and using biblio-
- graphic data is extremely useful [Lesk79a], but suffers from at
- least two difficulties: 1) the _r_e_f_e_r(1) program attempts to make
- inferences about what kind of bibliographic entry is being cited
- (e.g., book article, proceedings article, etc.) but its infer-
- ences are frequently wrong. Its inferences are communicated as
- integer arguments to the formatting macros and can thus be
- ignored. The macros described herein provide an alternative when
- those inferences are ignored; 2) the _r_e_f_e_r(1) program fails to
- communicate more detailed bibliographic data to the standard for-
- matting macros, e.g., multiple editors should be flagged as
- ``(eds.)'' not ``(ed.)''. The macros herein were designed to
- overcome several such difficulties.
-
- Many of _r_e_f_e_r(1)'s difficulties result from a lack of com-
- munication between the bibliographic data base entry and the for-
- matting macros. Rather than rewrite _r_e_f_e_r(1), the approach taken
- here is to provide extra information in each bibliographic entry
- by extra ``%'' key fields, and then have the macro definitions
- use those fields to produce a more ``accurate'' formatting of the
- citation.
-
- _D_o_c_u_m_e_n_t _f_o_r_m_a_t_s
-
- Instead of relying on _r_e_f_e_r(1) to make the correct inference
- about the kind of document cited, these macros _r_e_q_u_i_r_e that a
- ``%l'' entry be associated with each bibliographic data base
- entry. The value of the ``%l'' field fixes the document type once
- and for all, and is used to determine the final format of any
- citation of that document.
-
- Current document types supported are:
-
-
-
-
-
-
-
-
- September 20, 1983
-
-
-
-
-
- - 2 -
-
-
- book
- journal-article
- proceedings-article
- book-article
- edited-book
- edited-proceedings
- technical-report
- manuscript
- dissertation
- edited-journal
-
-
- The formatting macros use the ``%l'' field to determine how
- a reference is to be formatted. If the ``%l'' field is missing
- or is not one of the document types named above, the macros will
- use a default format. Consider the following example biblio-
- graphic entry:
-
- %A F. Foo
- %A B. Bar
- %D 1982
- %e 2
- %J Artificial Insemination
- %T Special issue on bull-breeding
- %V 11
- %N 4
- %l edited-journal
-
- The above document is formatted as follows:
-
- [Foo82a]
- Foo, F. and Bar, B. (1982, eds.), Special issue on bull-
- breeding, _A_r_t_i_f_i_c_i_a_l _I_n_s_e_m_i_n_a_t_i_o_n 11(4).
-
- If the ``%e'' field is included and is not null, then the format-
- ting macros will produce ``F. Foo and B. Bar (1982, eds.)''
- instead of ``F. Foo and B. Bar (1982, ed.)'' As with all biblio-
- graphic entries, the order of fields is not important.
-
- _D_o_c_u_m_e_n_t _f_o_r_m_a_t_t_i_n_g _d_e_t_a_i_l_s
-
- The University of Chicago Manual of Style was used as a
- basic guideline for the preparation of these macros [Chicago69a].
- Among other things, this means that _r_e_f_e_r(1)'s in-text citation
- style using footnotes is _n_o_t used; as indicated by the Chicago
- Manual of Style, citations in the Natural Sciences normally use
- the (<author><year>) style of in-text citation. The footnote
- style can be provided by changing the string definitions for the
- in-text citation brackets (see below), but the reference listing
- will be produced in the same way.
-
- The use of each field for each document type is given below.
- An asterisk beside a field name indicates a required field. Note
- that very few fields are required; the macro for each format will
-
-
-
- September 20, 1983
-
-
-
-
-
- - 3 -
-
-
- do its best to provide reasonable output with the information
- provided.
-
-
- _b_o_o_k
-
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %V <volume> (appears as ``vol. <volume>'')
- %S <series> (include series number if it exists)
- %n <edition> (appears as ``edition <edition>'')
- %I <publisher>*
- %C <city of publication>
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l book*
-
-
-
- _j_o_u_r_n_a_l-_a_r_t_i_c_l_e
-
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %J <journal>*
- %V <volume>
- %N <number>
- %M <month>
- %I <publisher>
- %C <city of publication>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l journal-article*
-
-
-
- _p_r_o_c_e_e_d_i_n_g_s-_a_r_t_i_c_l_e
-
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %J <proceedings title>*
- %V <volume>
- %M <month>
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city of conference>
- %E <editor(s)> (multiple editors must be given in one field)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l proceedings-article*
-
-
-
-
-
-
-
- September 20, 1983
-
-
-
-
-
- - 4 -
-
-
- _b_o_o_k-_a_r_t_i_c_l_e
-
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %B <book title>*
- %n <edition> (appears as ``edition <edition>'')
- %V <volume> (appears as ``vol. <volume>'')
- %S <series> (include series number if it exists)
- %E <editor(s)> (multiple editors must be given in one field)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %I <publisher>*
- %C <city of publication>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l book-article*
-
-
-
- _e_d_i_t_e_d-_b_o_o_k
-
- %A <editor(s)>* (note that multiple entries can appear here)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %D <year>*
- %T <title>*
- %n <edition> (appears as ``edition <edition>'')
- %V <volume> (appears as ``vol. <volume>'')
- %S <series> (include series number if it exists)
- %I <publisher>*
- %C <city of publication>
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l edited-book*
-
-
-
- _e_d_i_t_e_d-_p_r_o_c_e_e_d_i_n_g_s
-
- %A <editor(s)>* (note that multiple entries can appear here)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %D <year>*
- %J <proceedings title>*
- %V <volume>
- %M <month>
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city of conference>
- %O <optional> (appears within square brackets ``[<optional>]'')
- %l edited-proceedings*
-
-
-
-
-
-
-
-
-
-
- September 20, 1983
-
-
-
-
-
- - 5 -
-
-
- _t_e_c_h_n_i_c_a_l-_r_e_p_o_r_t
-
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %R <report number>
- %S <subdivision> (e.g., Computer Science Department, Systems Lab, etc.)
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city>
- %M <month>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l technical-report*
-
-
-
- _m_a_n_u_s_c_r_i_p_t
-
- %A <author(s)>*
- %D <year>*
- %T <title>*
- %S <subdivision> (e.g., Computer Science Department, Systems Lab, etc.)
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city>
- %M <month>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l manuscript*
-
-
-
- _d_i_s_s_e_r_t_a_t_i_o_n
-
- %A <author>*
- %D <year>*
- %T <title>*
- %Q <level> (e.g., Ph.D., M.Math., D.Sc., etc.)
- %S <subdivision> (e.g., Computer Science Department, Systems Lab, etc.)
- %I <institution> (e.g., name of university, corporation, etc.)
- %C <city>
- %M <month>
- %P <pages> (i.e., range, e.g., 23-35, or count, e.g., 45 pages)
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l dissertation*
-
-
-
-
-
-
-
-
-
-
-
-
-
- September 20, 1983
-
-
-
-
-
- - 6 -
-
-
- _e_d_i_t_e_d-_j_o_u_r_n_a_l
-
- %A <editor(s)>* (note that multiple entries can appear here)
- %e <editor(s) flag> (non-null flag produces ``(eds.)'' otherwise ``(ed.)'')
- %D <year>*
- %T <title>* (e.g., special issue title)
- %J <journal>*
- %V <volume>
- %N <number>
- %M <month>
- %I <publisher>
- %C <city of publication>
- %O <optional> (appears enclosed within square brackets ``[<optional>]'')
- %l edited-journal*
-
-
- _U_s_e_r _o_p_t_i_o_n_s
-
- As with the standard set of _r_e_f_e_r(1) macros, the user can
- redefine a few macros and strings to customize his in-text cita-
- tion format and reference listing. The following macro defini-
- tion is used at the beginning of each reference in the reference
- list:
-
-
- .de rF
- .ne 4
- .ti -5
- [\\*([F]
- .br
- ..
-
-
- The ``rF'' macro works in conjunction with the following two mac-
- ros, called at the beginning and end (respectively) of the col-
- lected list of references:
-
-
- .de ]<
- .ft R
- .ls 1
- .in 5
- .sp 2
- .na
- ..
-
- .de ]>
- .ft P
- .ad
- .in 0
- .sp 2
- ..
-
-
-
-
-
- September 20, 1983
-
-
-
-
-
- - 7 -
-
-
- In the reference list, the indenting of each reference can be
- changed by replacing the definitions of the above macros.
-
- The _r_e_f_e_r(1) software constructs an _n_r_o_f_f(1)/_t_r_o_f_f(1) string
- ``[F'' to be used as the in-text citation for each document
- cited. The contents of this string is controlled by _r_e_f_e_r(1) com-
- mand line parameters [Lesk79a], and can be adjusted by the user.
- The in-text citation brackets are defined as
-
-
- .ds [. " [
- .ds .] ]
-
- The first definition is expanded before the in-text citation is
- formatted, and the latter definition is expanded just after.
- Thus, the default in-text citation is a blank, a left square
- bracket, the string value of ``[F'' followed by a right square
- bracket. These bracketing strings can be redefined by the user,
- e.g., to produce in-text citations as footnotes.
-
- The following string definitions control the positioning of
- punctuation:
-
-
- .ds >. .
- .ds <.
- .ds >, ,
- .ds <,
- .ds >; ;
- .ds <;
- .ds >: :
- .ds <:
-
- The above definitions will position all punctuation after the
- in-text citation.
-
- _R_e_f_e_r_e_n_c_e_s
-
-
-
- [Chicago69a]
- University of Chicago (1969), _A _M_a_n_u_a_l _o_f _S_t_y_l_e, edition 12,
- University of Chicago Press, Chicago, Illinois.
- [Lesk79a]
- M.E. Lesk (1979), Some applications of inverted indexes on
- the UNIX system, _U_N_I_X _P_r_o_g_r_a_m_m_e_r_s _M_a_n_u_a_l, edition 7,
- vol. 2A, .
-
-
-
-
-
-
-
-
-
-
- September 20, 1983
-
-
- SHAR_EOF
- chmod +x 'refer.text'
- fi
- if test -f 'tmac.ref.7.tex'
- then
- echo shar: "will not over-write existing file 'tmac.ref.7.tex'"
- else
- cat << \SHAR_EOF > 'tmac.ref.7.tex'
-
-
-
- TMAC.REF(7) UNIX Programmer's Manual TMAC.REF(7)
-
-
-
- NAME
- tmac.ref - a family of macros for formatting _r_e_f_e_r(1) out-
- put.
-
- SYNOPSIS
- Include the _n_r_o_f_f(1)/_t_r_o_f_f(1) command
- .so /u/rggoebel/pub/src/tmac.ref<style>
- in <sourcefile> and use the commands
- refer [options] <sourcefile> | nroff [options] ...
- refer [options] <sourcefile> | troff [options] ...
-
- DESCRIPTION
- This package of _n_r_o_f_f(1)/_t_r_o_f_f(1) macro definitions will
- format the reference citation strings produced by the
- _n_r_o_f_f(1)/_t_r_o_f_f(1) preprocessor _r_e_f_e_r(1). The macros are
- compatible with the _m_s(7) and _m_e(7) macro packages. The
- currently available options for <style> are:
-
- DEF .so /u/rggoebel/pub/src/tmac.refDEF
- to format each reference in the default style.
-
- CACM .so /u/rggoebel/pub/src/tmac.refCACM
- with the _r_e_f_e_r(1) command line options -a -s for ACM
- Communications format.
-
- FILES
- /u/rggoebel/pub/src/tmac.refDEF
- /u/rggoebel/pub/src/tmac.refCACM
-
- SEE ALSO
- /u/rggoebel/pub/doc/refer.text documentation for alternative macros
- /u/rggoebel/pub/doc/addbib.1.text update bibliographic databases
- /u/rggoebel/pub/doc/indxbib.1.text create inverted indices
- /u/rggoebel/pub/doc/sortbib.1.text sort bibiographic databases
- /u/rggoebel/pub/doc/roffbib.1.text print bibilographic databases
-
- DIAGNOSTICS
- Each <style> will remind the user of any required _r_e_f_e_r(1)
- command line options.
-
- AUTHOR
- Randy Goebel, Department of Computer Science, University of
- Waterloo, Waterloo, Ontario, Canada, N2L 3G1, (519) 885-1211
- (x3512), UUCP: watmath!rggoebel.
-
-
-
-
-
-
-
-
-
-
-
- Printed 9/18/83 Waterloo 1
-
-
-
- SHAR_EOF
- chmod +x 'tmac.ref.7.tex'
- fi
- if test -f 'tmac.refCACM'
- then
- echo shar: "will not over-write existing file 'tmac.refCACM'"
- else
- cat << \SHAR_EOF > 'tmac.refCACM'
- .\" Refer Macros, ACM Communications format
- .\" R. Goebel, September 20, 1983
- .\" Test version: report bugs to rggoebel
- .\" Documentation: /u/rggoebel/pub/doc/refer.text
- .\" /u/rggoebel/pub/doc/tmac.ref.7.text
- .\" ________________________________________________
- .\"
- .\" Inform user about required Refer options
- .\"
- .tm CACM format: requires Refer options "-a -s"
- .\"
- .\" reference format selection macro
- .\" notice last entry is default format
- .de ][
- .ie \\*([lbook .[0
- .el .ie \\*([ljournal-article .[1
- .el .ie \\*([lproceedings-article .[2
- .el .ie \\*([lbook-article .[3
- .el .ie \\*([ledited-book .[4
- .el .ie \\*([ledited-proceedings .[5
- .el .ie \\*([ltechnical-report .[6
- .el .ie \\*([lmanuscript .[7
- .el .ie \\*([ldissertation .[8
- .el .ie \\*([ledited-journal .[9
- .el .[d
- ..
- .\" placement of in text citation
- .de rF
- .ne 4
- \f3\\*([F\f1.
- .
- .\" punctuation definition
- .ds >. .
- .ds <. \&
- .ds >, ,
- .ds <, \&
- .ds >; ;
- .ds <; \&
- .ds >: :
- .ds <: \&
- .\" in-text citation brackets
- .ds [. [
- .ds .] ]
- .\" reference list initialization macro
- .de ]<
- .ft R
- .ls 1
- .na
- .sp
- ..
- .\" reference list termination macro
- .de ]>
- .ft P
- .ad
- ..
- .\" string definition reset macro
- .de ]-
- .rm [V [P [A [T [N [C [B [O [R [I [E [D [L [J [S [M [l [e [n [c
- ..
- .de [0 \" book format
- .rF
- \\*([A\&
- \\f2\\*([T\\f1\c
- .if !\\*([n , \\f2edition \\*([n\\f1\c
- .if !\\*([S , \\f2\\*([S\\f1\c
- .if !\\*([V , \\f2vol.\ \\*([V\\f1\c
- , \\*([I\c
- .if !\\*([C , \\*([C\c
- , \\*([D\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [1 \" journal-article format
- .rF
- \\*([A\&
- \\*([T,
- \\f2\\*([J\\f1
- .if !\\*([V \\f2\\*([V\\f1\c
- .if !\\*([N , \\*([N
- .ie !\\*([M , (\\*([M \\*([D),
- .el (\\*([D),
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [2 \" proceedings-article format
- .rF
- \\*([A\&
- \\*([T,
- \\f2\\*([J\\f1\c
- .if !\\*([V \& \\f2\\*([V\\f1\c
- .if !\\*([M , \\*([M\c
- , \\*([D\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([E \{\
- , \\*([E
- .ie !\\*([e (eds.)\c
- .el (ed.)\c
- .\}
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [3 \" book-article format
- .rF
- \\*([A\&
- \\*([T,
- \\f2\\*([B\\f1\c
- .if !\\*([n , \\f2edition \\*([n\\f1\c
- .if !\\*([S , \\f2\\*([S\\f1\c
- .if !\\*([V , \\f2vol.\ \\*([V\\f1\c
- .if !\\*([E \{\
- , \\*([E
- .ie !\\*([e (eds.)\c
- .el (ed.)\c\}
- , \\*([I\c
- .if !\\*([C , \\*([C\c
- , \\*([D
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [4 \" edited-book format
- .rF
- \\*([A\&
- .ie \\*([e (ed.).\&
- .el (eds.).\&
- \\f2\\*([T\\f1\c
- .if !\\*([n , \\f2edition \\*([n\\f1\c
- .if !\\*([S , \\f2\\*([S\\f1\c
- .if !\\*([V , \\f2vol.\ \\*([V\\f1\c
- , \\*([I\c
- .if !\\*([C , \\*([C\c
- , \\*([D\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [5 \" edited-proceedings format
- .rF
- \\*([A\&
- .ie \\*([e (ed.).\&
- .el (eds.).\&
- \\f2\\*([J\\f1\c
- .if !\\*([V \& \\f2\\*([V\\f1\c
- .if !\\*([M , \\*([M\c
- , \\*([D\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [6 \" technical-report format
- .rF
- \\*([A\&
- \\*([T\c
- .if !\\*([R , \\*([R\c
- .if !\\*([S , \\*([S\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([M , \\*([M\c
- , \\*([D\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [7 \" manuscript format
- .rF
- \\*([A\&
- \\*([T\c
- .if !\\*([S , \\*([S\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([M , \\*([M\c
- , \\*([D\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [8 \" dissertation format
- .rF
- \\*([A\&
- \\*([T\c
- .if !\\*([Q , \\*([Q dissertation\c
- .if !\\*([S , \\*([S\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([M , \\*([M\c
- , \\*([D\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [9 \" edited-journal
- .rF
- \\*([A\&
- .ie \\*([e (ed.).
- .el (eds.).
- \\*([T,
- \\f2\\*([J\\f1
- .if !\\*([V \\f2\\*([V\\f1\c
- .if !\\*([N , \\*([N
- .ie !\\*([M , (\\*([M \\*([D),
- .el (\\*([D),
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [d \" default format
- .rF
- \\*([A\&
- \\*([T\c
- .if !\\*([E \{\
- , \\*([E
- .ie !\\*([e (eds.)\c
- .el (ed.)\c\}
- .if !\\*([B , \\f2\\*([B\\f1\c
- .if !\\*([S , \\*([S\c
- .if !\\*([I , \\*([I\c
- .if !\\*([J , \\f2\\*([J\\f1
- .if !\\*([V , vol.\ \\*([V\\f1\c
- .if !\\*([N , no.\ \\*([N
- .if !\\*([M , \\*([M\c
- .if !\\*([D , \\*([D\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- SHAR_EOF
- chmod +x 'tmac.refCACM'
- fi
- if test -f 'tmac.refDEF'
- then
- echo shar: "will not over-write existing file 'tmac.refDEF'"
- else
- cat << \SHAR_EOF > 'tmac.refDEF'
- .\" Refer macros default format
- .\" R. Goebel, May 1, 1983
- .\" Documentation: /u/rggoebel/pub/doc/refer.text
- .\" /u/rggoebel/pub/doc/tmac.ref.7.text
- .\" ________________________________________________
- .\"
- .\" reference format selection macro
- .\" notice that last entry is default format
- .de ][
- .ie \\*([lbook .[0
- .el .ie \\*([ljournal-article .[1
- .el .ie \\*([lproceedings-article .[2
- .el .ie \\*([lbook-article .[3
- .el .ie \\*([ledited-book .[4
- .el .ie \\*([ledited-proceedings .[5
- .el .ie \\*([ltechnical-report .[6
- .el .ie \\*([lmanuscript .[7
- .el .ie \\*([ldissertation .[8
- .el .ie \\*([ledited-journal .[9
- .el .[d
- ..
- .\" format in-text citation
- .de rF
- .ne 4
- .ti -5
- .if !\\*([F [\\*([F]
- .br
- ..
- .\" punctuation definition
- .ds >. .
- .ds <. \&
- .ds >, ,
- .ds <, \&
- .ds >; ;
- .ds <; \&
- .ds >: :
- .ds <: \&
- .\" in-text citation brackets
- .ds [. " [
- .ds .] ]
- .\" reference list initialization macro
- .de ]<
- .ft R
- .ls 1
- .in 5
- .sp 2
- .na
- ..
- .\" reference list termination macro
- .de ]>
- .ft P
- .ad
- .in 0
- .sp 2
- ..
- .\" string definition reset macro
- .de ]-
- .rm [V [P [A [T [N [C [B [O [R [I [E [D [L [J [S [M [l [e [n [c
- ..
- .de [0 \" book format
- .rF
- \\*([A (\\*([D),
- \\f2\\*([T\\f1\c
- .if !\\*([n , edition \\*([n\c
- .if !\\*([S , \\*([S\c
- .if !\\*([V , vol.\ \\*([V\c
- , \\*([I\c
- .if !\\*([C , \\*([C\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [1 \" journal-article format
- .rF
- \\*([A (\\*([D),
- \\*([T,
- \\f2\\*([J\\f1\c
- .if !\\*([V \& \\f3\\*([V\\f1\c
- .if !\\*([N (\\*([N)\c
- .if !\\*([M , \\*([M\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [2 \" proceedings-article format
- .rF
- \\*([A (\\*([D),
- \\*([T,
- \\f2\\*([J\\f1\c
- .if !\\*([V \& \\f3\\*([V\\f1\c
- .if !\\*([M , \\*([M\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([E \{\
- , \\*([E
- .ie !\\*([e (eds.)\c
- .el (ed.)\c
- .\}
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [3 \" book-article format
- .rF
- \\*([A (\\*([D),
- \\*([T,
- \\f2\\*([B\\f1\c
- .if !\\*([n , edition \\*([n\c
- .if !\\*([S , \\*([S\c
- .if !\\*([V , vol.\ \\*([V\c
- .if !\\*([E \{\
- , \\*([E
- .ie !\\*([e (eds.)\c
- .el (ed.)\c\}
- , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [4 \" edited-book format
- .rF
- \\*([A (\\*([D,
- .ie \\*([e ed.),
- .el eds.),
- \\f2\\*([T\\f1\c
- .if !\\*([n , edition \\*([n\c
- .if !\\*([S , \\*([S\c
- .if !\\*([V , vol.\ \\*([V\c
- , \\*([I\c
- .if !\\*([C , \\*([C\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [5 \" edited-proceedings format
- .rF
- .ie \\*([e \\*([A (\\*([D, ed.),
- .el \\*([A (\\*([D, eds.),
- \\f2\\*([J\\f1\c
- .if !\\*([V \& \\f3\\*([V\\f1\c
- .if !\\*([M , \\*([M\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [6 \" technical-report format
- .rF
- \\*([A (\\*([D),
- \\*([T\c
- .if !\\*([R , \\*([R\c
- .if !\\*([S , \\*([S\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([M , \\*([M\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [7 \" manuscript format
- .rF
- \\*([A (\\*([D),
- \\*([T\c
- .if !\\*([S , \\*([S\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([M , \\*([M\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [8 \" dissertation format
- .rF
- \\*([A (\\*([D),
- \\*([T\c
- .if !\\*([Q , \\*([Q dissertation\c
- .if !\\*([S , \\*([S\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([M , \\*([M\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [9 \" edited-journal
- .rF
- \\*([A (\\*([D,
- .ie \\*([e ed.),
- .el eds.),
- \\*([T,
- \\f2\\*([J\\f1\c
- .if !\\*([V \& \\f3\\*([V\\f1\c
- .if !\\*([N (\\*([N)\c
- .if !\\*([M , \\*([M\c
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- .de [d \" default format
- .rF
- \\*([A (\\*([D),
- \\*([T\c
- .if !\\*([J , \\f2\\*([J\\f1\c
- .if !\\*([B , \\f2\\*([B\\f1\c
- .if !\\*([S , \\*([S\c
- .if !\\*([V , vol.\ \\*([V\c
- .if !\\*([N , no.\ \\*([N\c
- .if !\\*([E \{\
- , \\*([E
- .ie !\\*([e (eds.)\c
- .el (ed.)\c\}
- .if !\\*([I , \\*([I\c
- .if !\\*([C , \\*([C\c
- .if !\\*([M , \\*([M\c
- .if !\\*([P , \\*([P\c
- .ie \\*([O \&.
- .el \& [\\*([O].
- ..
- SHAR_EOF
- chmod +x 'tmac.refDEF'
- fi
- exit 0
- # End of shell archive
- --
- Patrick Powell, Dept. Computer Science, 136 Lind Hall, 207 Church St. SE,
- University of Minnesota, Minneapolis, MN 55455 (612)625-3543/625-4002
-
-
-