BibTeX 按“von”而不是姓氏对作者进行字母排序

BibTeX 按“von”而不是姓氏对作者进行字母排序

我有一个 BibTeX 条目

作者=尤利乌斯·冯·布劳恩

排序在v而不是 之下B。我将其写成上面的样子或写成

作者=冯·布劳恩,朱利叶斯

@inbook或带有各种引号。使用或似乎也无所谓@book

我在用

\bibliographystyle{plain}

我已经测试过,使用样式abbrvacmsiam可以得到相同的排序顺序,而ieeetrunsrt对引用不进行排序。

答案1

您可以通过以下方式进行修改plain.bst(通过 查找本地副本kpsewhich plain.bst

FUNCTION {sort.format.names}

并改变该函数中的行

      s nameptr "{vv{ } }{ll{ }}{  ff{ }}{  jj{ }}" format.name$ 't :=

      s nameptr "{ll{ }}{  ff{ }}{vv{ } }{  jj{ }}" format.name$ 't :=

这是构建排序键的行,von 部分是vv,此更改将其移至jjjunior 部分的 之前。调用此新文件,rplain.bst我们得到

示例输出

\documentclass{article}

\begin{document}
\nocite{*}
\bibliographystyle{rplain}
\bibliography{test}
\end{document}

test.bib

@Article{And,
  author =   {And, A.},
  title =    {Duck relations},
  journal =  {J. Ducks},
  year =     2000
}

@Article{And:Duck,
  author =   {von And, J.},
  title =    {Duck progress},
  journal =  {J. Ducks},
  year =     2000
}

@Article{Anders,
  author =   {Anders, D.},
  title =    {Duck news},
  journal =  {J. Ducks},
  year =     2000
}

@Article{Duck,
  author =   {Duck, D.},
  title =    {Duck ideas},
  journal =  {J. Ducks},
  year =     2000
}

或者,您可以通过 custom-bib 包创建自己的书目样式。运行

latex makebst

并回答问题;一种选择是在排序时忽略 von parts。

相关内容