Natbib+harvard.bst:同一年的论文排列顺序错误

Natbib+harvard.bst:同一年的论文排列顺序错误

我有一个参考书目,其中某位作者在同一年写了两篇论文。 Bibtex 按标题字母顺序对它们进行排序,但我希望按时间顺序列出它们。 (因此在下面的例子中,“通用语法”应该在“英语作为形式语言”之前。)翻转顺序的适当方法是什么?

梅威瑟:

\documentclass{article}
\usepackage{natbib}
\begin{document}

... formal semantics in the  Montagovian tradition \citep{montague1970aug,montague1970befl,montague1973ptq}. 

\bibliographystyle{harvard}
\bibliography{test}
\end{document}

这生成了文本“蒙塔戈维亚传统中的形式语义学(Montague,1970b,a,1973)”,而我实际上想要的是“1970a,b,1973”。

MWE 的 test.bib 文件:

@incollection{montague1973ptq,
  title={The proper treatment of quantification in ordinary {English}},
  author={Montague, Richard},
  booktitle={Approaches to natural language},
  editor={Hintikka, K. Jaakko J. and Moravcsik, Julius M.E. and Suppes, Patrick},
  pages={221--242},
  year={1973},
  publisher={Dordrecht}
}

@article{montague1970aug,
  title={Universal grammar},
  author={Montague, Richard},
  journal={Theoria},
  volume={36},
  number={3},
  pages={373--398},
  year={1970},
  publisher={Blackwell Synergy}
}

@incollection{montague1970befl,
  title={English as a formal language},
  author={Montague, Richard},
  booktitle={Linguaggi nella Societa e nella Tecnica},
  editor={Visentini, Bruno and others},
  publisher={Edizioni di Comunità},
  pages={189--224},
  year={1970}
}

答案1

由于排序顺序为 1. 年份,2. 按标题按字典顺序排列,因此您可以为标题提供一个模拟参数:将其写入您的 LaTeX 文档中

\newcommand{\mockalph}[1]{}

并分别插入标题为

title={{\mockalph{bbbbb}}Universal grammar},

title={{\mockalph{ccccc}}English as a formal language},

这样排序将相对于bbbbbccccc,无论如何都不会被打印。

为什么不是aaaaa第一次?好吧,如果你发现一本由 Montague 写的书在《通用语法》之前出版过,……

答案2

使用sort选项

\usepackage[sort]{natbib}

相关内容