Bibtex 正在反转同一作者同一年份的两个参考文献

Bibtex 正在反转同一作者同一年份的两个参考文献

以下是主文件中的相关行tex

\usepackage[round]{natbib}

\begin{document}
\bibliography{References/references}
\bibliographystyle{apa}
\end{document}

文件中有两个参考文献bibtex,来自同一作者并于同一年出版:

@article{Author2011a,
author = {Author},
title = {{Title}} 
year = {2011}
}

@article{Author2011b,
author = {Author},
title = {{Title}} 
year = {2011}
}

问题是,当*.bbl使用bibtex命令生成文件时,文档中引用的位置\citep{Author2011a}显示(Author2011b),而其他引用则相反。*.bbl文件内部也是同样的情况。

有人知道什么可能导致这类问题吗?

答案1

嗯,首先,你的 bib 文件中缺少一些逗号,也缺少一些期刊...在接下来的 MWE 中,我添加了两者...

其次,我将 bib 文件中使用的密钥更改为Author2011oneAuthor2011two

现在您可以看到,书目中的印刷(2011a)(2011b)是独立于您在 bib 文件中给定的键创建的。如果您有两个相同的条目,则书目需要将印刷参考更改为“使用年份”+“a”或“使用年份”+“b”,具体取决于相同标题的数量...

以下 MWE

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Author2011one,
  author  = {Author},
  title   = {{Title}}, 
  journal = {missing},
  year    = {2011},
}
@article{Author2011two,
  author  = {Author},
  title   = {{Title}}, 
  journal = {missing},
  year    = {2011},
}
\end{filecontents}


\documentclass[letterpaper, 10pt]{article}

\usepackage[round]{natbib}
\usepackage{lipsum}

\begin{document}

\lipsum[1-3] \citep{Author2011two}
\nocite{*}

\bibliographystyle{apa}
\bibliography{\jobname}

\end{document} 

给你:

由此产生的书目

答案2

交换两个密钥解决了该问题。 生成的引用与 bibtex 生成的一致。

相关内容