1

I use the footbib package to do references for an acknowledgment page. This keeps the references self contained in a footnote.

If I use the plainnat style then it breaks. I have a working example which needs two files (I'm guessing it can be done in one, but I'm not sure how).

latex file:

\documentclass{article}
\usepackage[oneside,firstcite(page)]{footbib}

\footbibliographystyle{nature} 
%\footbibliographystyle{plainnat} 
\footbibliography{references}
\renewcommand*\putfootcitelabel[1]{#1} 

\begin{document}
   Hello\footcite{Muller1993}
\end{document}

The second file called references.bib is:

@BOOK{Muller1993,
  title = {Inorganic Sructural Chsmistry},
  publisher = {John Wiley \& Sons Ltd.},
  year = {1993},
  author = {Ulrich M\"{u}ller},
}

So to compile you do latex -> bibtex on the <project>.fb.aux file -> latex -> latex. The <project>.aux file doesn't matter.

Now there is a commented out line in the project file \footbibliographystyle. If you swap it with the commented one, then it breaks after you try to do a latex compile following the bibtex one.

I get this error: ! Package footbib Error: Missing \bibitem on input line 2 of footbib_test.fb.bbl.

Any one know why or how to fix it?

2
  • I want to recommend the package biblatex.
  • You can edit the file <foo>.fb.bbl manually. Than you have to change the order at the beginning:

BEFORE

\begin{thebibliography}{1}
\providecommand{\natexlab}[1]{#1}
\providecommand{\url}[1]{\texttt{#1}}
\expandafter\ifx\csname urlstyle\endcsname\relax
  \providecommand{\doi}[1]{doi: #1}\else
  \providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi

AFTER

\providecommand{\natexlab}[1]{#1}
\providecommand{\url}[1]{\texttt{#1}}
\expandafter\ifx\csname urlstyle\endcsname\relax
  \providecommand{\doi}[1]{doi: #1}\else
  \providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi
\begin{thebibliography}{1}
  • Copy the file plainnat.bst in your working folder an change the function

FUNCTION {begin.bib} as follows:

FUNCTION {begin.bib}
{   preamble$ empty$
    'skip$
    { preamble$ write$ newline$ }
  if$
  "\providecommand{\natexlab}[1]{#1}"
  write$ newline$
  "\providecommand{\url}[1]{\texttt{#1}}"
  write$ newline$
  "\expandafter\ifx\csname urlstyle\endcsname\relax"
  write$ newline$
  "  \providecommand{\doi}[1]{doi: #1}\else"
  write$ newline$
  "  \providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi"
  write$ newline$
  "\begin{thebibliography}{" number.label int.to.str$ * "}" *
  write$ newline$
}

plainnat should be used in combination with natbib.

Finally I want to repeat my offer: Change to biblatex

  • Thanks for this solution Marco, I found the biblatex package to be too complicated to deal with though. I have to submit my thesis in a week and the package gave warnings about most of my references and threw up 120 errors with unhelpful messages. Maybe for another project, when I'm starting from scratch. – aghsmith Sep 8 '11 at 14:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.