我在 Mac 上使用 TexShop(Tex Live 2010)。我尝试使用内置的芝加哥引用样式。但是当我尝试引用同一作者、同一年、有三位以上不同作者的论文时,我发现了一个错误。
例如:
\RequirePackage{filecontents}
\begin{filecontents*}{my.bib}
@article{author1,
author = {Author, F. and Author, S and Author, T},
journal = {Journal A},
title = {First Paper},
year = {2000}}
@article{author2,
author = {Author, F. and Author, S and Author, T and Author, F.},
journal = {Journal B},
title = {Second Paper},
year = {2000}}
\end{filecontents*}
\documentclass[a4paper,12pt]{article}
\usepackage{natbib}
\begin{document}
Some words \citep{author1, author2}.
\bibliographystyle{chicagoa}
\bibliography{my}
\end{document}
然后得到了这样的结果:“Author et al., 2000,?”,而我想要的是“Author et al., 2000a,b”这样的东西。
我猜这是一个相当古老的已知错误,所以欢迎任何评论。
答案1
考虑切换到biblatex
它具有先进的姓名/姓名列表消歧机制。在下面的例子中,我尝试模拟样式chicagoa
在姓名列表引用方面的行为;但是,对于参考书目,可能需要进行额外的格式调整。
\documentclass[a4paper,12pt]{article}
\usepackage[style=authoryear-comp,natbib=true,maxbibnames=99,maxcitenames=2,
uniquelist=false]{biblatex}
% Remove "In: " for articles (courtesy to Herbert)
\renewbibmacro{in:}{%
\ifentrytype{article}{%
}{%
\printtext{\bibstring{in}\intitlepunct}%
}%
}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@article{author1,
author = {Author, F. and Author, S and Author, T},
journal = {Journal A},
title = {First Paper},
year = {2000}}
@article{author2,
author = {Author, F. and Author, S and Author, T and Author, F.},
journal = {Journal B},
title = {Second Paper},
year = {2000}}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
Some words \citep{author1, author2}.
\printbibliography
\end{document}