Is there a way to automatically add initials to citations if and only if there are two authors with the same last name, cited in the same article, using BibTeX and natbib
? (I'd rather not switch from natbib
, but would consider another package that provides Chicago or APA style author-year citations.)
This is essentially the same question as this one, but that question is about biblatex
, and I would prefer to use BibTeX because of this answer to another question.
This similar question has a nice answer, but the sole answer is designed to always add first initials for the two authors with the same last name. If I don't cite one of the authors, I don't want the initial added when I cite the other author. It would be easy to define two versions of the \disambiguate
command suggested in the answer–one version for use when I cite both authors, and one for use when I only cite one–but it would be better if I didn't have to remember to change this as I add and remove citations.
An MWE:
\documentclass{article}
\usepackage{natbib}
\begin{document}
More than one author has made this point \citep{CGeertz:Negara,
HGeertz:BalineseTemple}. Here's how the citation should look
(C. \citealt{CGeertz:Negara}; H. \citealt{HGeertz:BalineseTemple}).
\bibliographystyle{chicago}
\bibliography{my}
\end{document}
my.bib:
@Book{CGeertz:Negara,
author = {Geertz, Clifford},
title = {Negara: The Theatre State in 19th Century Bali},
publisher = {Princeton},
year = {1981},
}
@Book{HGeertz:BalineseTemple,
author = {Geertz, Hildred},
title = {The Life of a Balinese Temple},
publisher = {University of Hawaii Press},
year = {2004},
}
Best Answer
The
apacite
package (which can be used withnatbib
) does this automatically. Note however, if both authors also have the same initial, (as originally stated in your question title but not your actual example) it will fail.The proper APA citation form for these is "FirstName LastName (Year)" and in the bibliography "LastName, F. [FirstName] (Year)". The
apacite
package explicitly says it can't deal with such cases.Output of two author citation
Output of one author citation
biblatex-apa
deals with this correctlyAlthough you said you didn't want to use
biblatex
, thebiblatex-apa
package does deal with these cases properly: