Why do I get (author?) when I use \citet with natbib?

The plain bibliography style is for numerical references only, while \citet only makes sense for author-year citations. Use natbibs own version of plain, called plainnat, instead, and this works fine. I.e. change to

\bibliographystyle{plainnat}

This is in fact documented on page 7 of natbibs manual:

The authors can only be listed if the .bst file supports author–year citations. The standard .bst files, such as plain.bst are numerical only and transfer no author–year information to LaTeX. In this case, \citet prints “(author?) [21].”


I was getting this problem with a custom-generated bibliography style (using Patrick Daly's custom-bib generator, merlin.mbs). The solution (pointed out to me very helpfully by Patrick) is to generate a style using author-year citations, but use the "numbers" option in the LaTeX document, i.e. in the .dbj file produced by merlin.mbs, uncomment the line

ay,%: Author-year

and in the .tex file specify

\usepackage[numbers]{natbib}

For those who are also confused by these kinds of problem: Please check there should be not space in the cite command. You should write \cite{aa,bb,cc} instead of \cite{aa, bb, cc}.

Tags:

Bibtex