refer(1) General Commands Manual refer(1)
refer - find and format bibliographic references
refer [-a] [-b] [-c] [-e] [-fn] [-kx] [-lm,n] [-n] [-p bib] [-skeys] [-Bl.m] [-P] [-S] [file...]
The command is a preprocessor for that finds and formats references for footnotes or endnotes. It is also the base for a series of pro-
grams designed to index, search, sort, and print stand-alone bibliographies, or other data entered in the appropriate form.
Given an incomplete citation with sufficiently precise keywords, will search a bibliographic database for references containing these key-
words anywhere in the title, author, journal, and so forth. The input file (or standard input) is copied to standard output, except for
lines between .[ and .] delimiters, which are assumed to contain keywords, and are replaced by information from the bibliographic database.
The user may also search different databases, override particular fields, or add new fields. The reference data, from whatever source, are
assigned to a set of strings. Macro packages such as print the finished reference text from these strings. By default references are
flagged by footnote numbers.
The following options are available:
-ar Reverses order of first author names. For example, Jones, J. A. instead of J. A. Jones. If n is omitted all author names are
-Bl.m Bibliography mode. Take a file composed of records separated by blank lines, and turn them into *roff input. Label l is
turned into the macro .m with l defaulting to %X and .m defaulting to .AP (annotation paragraph).
-b Creates bare entries: no flags, numbers, or labels.
-ckeys Capitalizes fields whose key letters are in string.
-e Accumulates all references in one list. Default is to create references where encountered in text. Accumulate them until a
sequence of the form
is encountered, and then write out all references collected so far.
-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 Uses specified label in place of numbering for each 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.
-P Places punctuation marks .,:;?! after the reference signal, rather than before. (Periods and commas used to be done with
-n Do not search the default file /usr/dict/papers/Ind. If there is a REFER environment variable, the specified file is searched
instead of the default file; in this case the -n flag has no effect.
-pbib Specifies file to be searched before
-S Produce references in the Natural or Social Science format.
-skeys Uses specified key in sorting references. 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.
To use your own references, put them in the format described below. They can be searched more rapidly by running on them before using
Failure to index results in a linear search. When is used with the or preprocessors should be first, to minimize the volume of data passed
The 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 ``%'', followed by a key-letter,
then a blank, and finally the contents of the field, and continue until the next line starting with ``%''. The output ordering and format-
ting of fields is controlled by the macros specified for (for footnotes and endnotes) or (for stand-alone bibliographies). For a list of
the most common key-letters and their corresponding fields, see An example of a entry is given below.
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.
%A M. E. Lesk
%T Some Applications of Inverted Indexes on the UNIX System
%B UNIX Programmer's Manual
%I Bell Laboratories
%C Murray Hill, NJ
directory of default publication lists
directory of companion programs
addbib(1), sortbib(1), roffbib(1), indxbib(1), lookbib(1)