![如果有两位作者,BibTeX 使用不一致的姓名格式](https://linux22.com/image/261493/%E5%A6%82%E6%9E%9C%E6%9C%89%E4%B8%A4%E4%BD%8D%E4%BD%9C%E8%80%85%EF%BC%8CBibTeX%20%E4%BD%BF%E7%94%A8%E4%B8%8D%E4%B8%80%E8%87%B4%E7%9A%84%E5%A7%93%E5%90%8D%E6%A0%BC%E5%BC%8F.png)
我最近开始使用biblatex
(我安装的是 TeX Live 2010)。我的前言语法是:
\usepackage[backend=bibtex,style=authoryear]{biblatex}
当我引用有两位作者的资料时,参考书目条目会使用不一致的格式打印作者姓名。例如,假设我的.bib
文件条目是:
@book{Abramowitz,
author = "Abramowitz, M. and Stegun, I.",
title = "Handbook of Mathematical Functions",
publisher = {Dover Publications},
year = "1965" }
如果我在文档中发出命令\parencite{Abramowitz}
,则参考书目条目将打印如下:
Abramowitz, M. 和 I. Stegun (1965)。《数学函数手册》。Dover Publications。
请注意,第一作者使用的姓名格式与第二作者使用的姓名格式不一致。第一作者使用姓氏在前格式打印,而第二作者使用姓氏在后格式打印。我希望条目打印如下:
Abramowitz, M. 和 Stegun, I. (1965)。《数学函数手册》。Dover Publications。
我该如何做biblatex
我想做的事?这种不一致是一个已知的biblatex
错误吗?
答案1
只需添加\DeclareNameAlias{sortname}{last-first}
到你的序言中即可。
考虑以下输出最小工作示例(MWE):
\begin{filecontents}{\jobname.bib}
@book{Abramowitz,
author = "Abramowitz, M. and Stegun, I.",
title = "Handbook of Mathematical Functions",
publisher = {Dover Publications},
year = "1965" }
\end{filecontents}
\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\DeclareNameAlias{sortname}{last-first}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}