A L^{A}TEX Package to Place Bibliography Entries in Text

Patrick W. Daly

This paper describes package bibentry version 1.4 from 2000/06/20

Summary

The stripped version of this file contains the following brief description:

% Bibliography Entries in Text
%
% In place of \bibliography{database}, enter \nobibliography{database}
% No bibliography is written at this point, but afterwards,
% \bibentry{key}  prints the bibliography entry for citation <key>
% (whereas \cite{key} prints the citation, not the bib entry)
%
% If \bibliography is also to be given, then issue the starred variant
% \nobibliography* (without argument).

1 Introduction

This package allows one to be able to place bibliographic entries anywhere in the text. It is to be used to produce annotated bibliographies, such as

For an intoduction to this topic, see Jones, J. R., Basics on this topic, J. Last Resorts, 13, 234–254, 1994. For more advanced information, see ….

The idea is that the full reference is used, not just the citation Jones [1994].

2 Invoking the Package

The macros in this package are included in the main document with the \usepackage command of L^{A}TEX 2ε,

\documentclass[..]{...}
\usepackage{bibentry}

3 Usage

This package must be used with BibTEX, not with a hand-written thebibliography environment.

Strictly speaking, there must be a .bbl file; whether this is generated by BibTEX or by hand is unimportant.

\nobibliography The bibliography entries are stored with the command \nobibliography{⟨bibfiles⟩}, which is like the usual \bibliography{⟨bibfiles⟩} except no bibliography is printed. The .bbl file is read in as usual but the thebibliography is redefined so that all the entries are stored, not printed.

\bibentry The text of the entries may be printed with the command

     \bibentry{⟨key⟩}

These commands may only be issued after \nobibliography, for otherwise the reference texts are not known.

The final period of the original text will be missing, so that one can add punctuation as one pleases.

Regular \cite (or the natbib versions) may be issued anywhere as usual.

\nobibliography* If a regular list of references is to be given too, with the \bibliography{⟨bibfiles⟩} command, issue the starred version \nobibliography* (without argument) in order to store the bib entry texts. This will load the same .bbl file as \bibliography, but will avoid messages from BibTEX about multiple \bibdata commands and warnings from L^{A}TEX about multiply defined citations.

The processing procedure is as usual:

1. L^{A}TEX the file;

2. Run BibTEX;

3. L^{A}TEX the file twice.

4 Caveats

The entries in the .bbl must be of the form

     \bibitem[⟨label⟩]{⟨key⟩}

Text of the reference entry.

     \bibitem. . .

That is, there must be a new line after the {⟨key⟩} (or at least a space) and a blank line before the next \bibitem. The final period in the text will be removed, if present, allowing one to place the \bibentry commands in mid-sentence. Of course, there may be other periods within the text that might look funny.

The bibentry package will work with natbib with its native \bibitem format, and with standard L^{A}TEX. Nothing else can be guaranteed.

It will also work with Donald Arseneau’s url package. This is highly recommended (almost obligatory) if the references contain Internet addresses (URLs) and any of my bibliography styles are being used. My styles pack the URL text into the \url command. Without the url package, this command defaults to \texttt which does a horrible job of printing URL addresses, especially if they contain special characters.

The use of both \nobibliography* and \bibliography together is limited and perhaps unsatisfactory. There is only one .bbl file, and hence one list of references. Since \nobibliography* does not have its own list of database files, one cannot take the \bibentry citations from separate databases. Also, any \bibentry citation must appear in the list of references, something that one might reasonably not care for. (It must be in the .bbl file else its text cannot be stored

for \bibentry use.)

It would be better if \nobibliography and \bibliography could be used independently of each other, with different databases, different .bbl files. However, this involves enormous complications, with separate .aux files and naming problems for the .bbls.