何时 \DeclareNameAlias{author}{family-given} 和 \DeclareNameAlias{sortname}{family-given} 会产生不同的结果?

何时 \DeclareNameAlias{author}{family-given} 和 \DeclareNameAlias{sortname}{family-given} 会产生不同的结果?

我的foo.bib是这样的:

@book{tgt,
  title = {The Great Title},
  author = {Jane Doe and Ron Wonder},
  year = {2022},
  publisher = {Macmillan},
  address = {Paris},
}

我的 LaTeX 代码如下:

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\DeclareNameAlias{author}{family-given}
\addbibresource{foo.bib}
\begin{document}

A proof can be found at \textcite{tgt}.

\printbibliography
\end{document}

我得到的输出:

    证明可以在 Doe and Wonder (2022) 中找到。

参考

Doe,Jane 和 Wonder,Ron (2022)。伟大的称号。巴黎:麦克米伦。

但是如果我将 LaTeX 代码更改为:

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\DeclareNameAlias{sortname}{family-given}
\addbibresource{foo.bib}
\begin{document}

A proof can be found at \textcite{tgt}.

\printbibliography
\end{document}

我仍然得到完全相同的输出。

\DeclareNameAlias{author}{family-given}和有什么区别\DeclareNameAlias{sortname}{family-given}?在什么情况下,这两种对名字、姓氏进行排序的方式会产生不同的结果?

答案1

不是author唯一可以出现在条目头部的名称。如果您引用整个条目@collection(例如gaonkarbiblatex-example.bib),则将editor出现在author位置。在某些情况下,您甚至可以在那里使用translator

sortname适用于authoreditor并且translator位于“主要名称”位置。author仅适用于作者。为了保持一致性,我始终使用sortname

比较

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber, style=authoryear]{biblatex}

\DeclareNameAlias{sortname}{family-given}

\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{sigfridsson,vizedom:related,gaonkar,westfahl:frontier,nussbaum}

\printbibliography
\end{document}

请注意,有些样式没有定义sortname,因此您可能需要说

\DeclareNameAlias{author}{sortname}
\DeclareNameAlias{editor}{sortname}
\DeclareNameAlias{translator}{sortname}

首先看到效果。

相关内容