REFER(1) BSD REFER(1)
NAME
refer - find and insert literature references in documents
SYNOPSIS
refer [ options ] [ file ... ]
DESCRIPTION
refer is a preprocessor for nroff(1) or troff(1) that finds and formats
references for footnotes or endnotes. It is also the base for a series
of programs designed to index, search, sort, and print standalone
bibliographies, or other data entered in the appropriate form.
Given an incomplete citation with sufficiently precise keywords, refer
will search a bibliographic database for references containing these
keywords anywhere in the title, author, journal, etc. The input file (or
standard input) is copied to standard output, except for lines between .[
and .] delimiters. These delimiters are assumed to contain keywords, and
are replaced by information from the bibliographic database. You may
also search different databases, override particular fields, or add new
fields. The reference data, from whatever source, are assigned to a set
of troff strings. Macro packages such as ms(7) print the finished
reference text from these strings. By default, references are flagged by
footnote numbers.
References can can be searched more rapidly by running indxbib(1) on them
before using refer; failure to index results in a linear search. When
refer is used with the eqn, neqn or tbl preprocessors, refer should be
first, to minimize the volume of data passed through pipes.
To use your own references, put them in the format described below. The
refer preprocessor and associated programs expect input from a file of
references composed of records separated by blank lines. A record is a
set of lines (fields), each containing one kind of information. Fields
start on a line beginning with a percent sign (%), followed by a key-
letter, then a blank, and finally the contents of the field, and continue
until the next line starting with a percent sign. The output ordering and
formatting of fields is controlled by the macros specified for
nroff/troff (for footnotes and endnotes) or roffbib (for stand-alone
bibliographies). For a list of the most common key-letters and their
corresponding fields, see addbib(1).
OPTIONS
The following options are available:
-an Reverse the first n author names (Jones, J. A. instead of J. A.
Jones). If n is omitted, all author names are reversed.
-b Bare mode: do not put any flags in text (neither numbers nor
labels).
-ckeys Capitalize (with CAPS SMALL CAPS) the fields whose key-letters
are in keys.
-e Instead of leaving the references where encountered, accumulate them
until a sequence of the form
.[
$LIST$
.]
is encountered, and then write out all references collected so far.
Collapse references to same source.
-fn Set the footnote number to n instead of the default of 1 (one).
With labels rather than numbers, this flag is a no-op.
-kx Instead of numbering references, use labels as specified in a
reference data line beginning %x; by default x is L.
-lm,n
Instead of numbering references, use labels made from the senior
author's last name and the year of publication. Only the first m
letters of the last name and the last n digits of the date are used.
If either m or n is omitted, the entire name or date, respectively,
is used.
-n Do not search the default file /usr/dict/papers/Ind. If there is a
REFER environment variable, the specified file will be searched
instead of the default file; in this case the -n flag has no effect.
-p bib
Take the next argument bib as a file of references to be searched.
The default file is searched last.
-skeys
Sort references by fields whose key-letters are in the keys string;
permute reference numbers in text accordingly. Implies -e. The
key-letters in keys may be followed by a number to indicate how many
such fields are used, with + taken as a very large number. The
default is AD which sorts on the senior author and then date; to
sort, for example, on all authors and then title, use -sA+T.
-Bl.m
Bibliography mode. Take a file composed of records separated by
blank lines, and turn them into troff input. Label l will be turned
into the macro .m with l defaulting to %X and .m defaulting to .AP
(annotation paragraph).
-P Place punctuation marks .,:;?! after the reference signal, rather
than before. (Periods and commas used to be done with strings.)
-S Produce references in the Natural or Social Science format.
EXAMPLE
The following example shows the format of a refer entry.
%A M. E. Lesk
%T Some Applications of Inverted Indexes on the UNIX System
%B UNIX Programmer's Manual
%V 2b
%I Bell Laboratories
%C Murray Hill, NJ
%D 1978
FILES
/usr/dict/papers directory of default publication lists
/usr/lib/refer directory of companion programs
BUGS
Blank spaces at the end of lines in bibliography fields will cause the
records to sort and reverse incorrectly. Sorting large numbers of
references causes a core dump.
SEE ALSO
addbib(1), sortbib(1), roffbib(1), indxbib(1), lookbib(1)