我正在使用amsalpha
。bibtex
在我看来,引用的顺序是按照按键的字母顺序排列的。
是否可以将其更改为按作者的字母顺序排列?
我举个例子。假设我们有
[CD13] 猫和狗,......
[第 13 章] 牛和马,……
[CL13] 猫和狮子,……
我宁愿
[CD13] 猫和狗,......
[CL13] 猫和狮子,……
[第 13 章] 牛和马,……
谢谢! :)
答案1
首先,我认为按作者姓名排序不是一个好主意。如果有人阅读了你的文本并找到了引文标签 CD13,她很快就会想在参考书目中找到它,因此参考书目应该按标签排序。
话虽如此,出于纯粹的教学原因,您的方案可以按如下方式实施:
- 复制
amsalpha.bst
,比如amsalpha2.bst
,并将其放在 BibTeX 可以找到的地方。 - 使用编辑器打开
amsalpha2.bst
并找到函数FUNCTION {presort}
注释掉以下四行:
FUNCTION {presort} { calc.label %sort.label %% commented out %" " %% commented out %* %% commented out type$ "book" = type$ "inbook" = or 'author.editor.sort { type$ "proceedings" = 'editor.organization.sort { type$ "manual" = 'author.organization.sort 'author.sort if$ } if$ } if$ %* %% commented out " " * year field.or.null sortify * " " * title field.or.null sort.format.title * #1 entry.max$ substring$ 'sort.key$ := }
这样,如果存在作者姓名,则作者姓名将成为首要排序标准,而不是标签。现在您可以将amsalpha2
其用作参考书目样式。