仅在引文和参考书目中显示姓氏

仅在引文和参考书目中显示姓氏

我想在使用 biblatex 和 biber 时,在引文和参考书目中仅显示姓氏(作者、编辑等)。我已经尝试过:

\renewcommand*{\mkbibnamefirst}[1]{}
\renewcommand*{\mkbibnameprefix}[1]{}
\renewcommand*{\mkbibnameaffix}[1]{}

但这会在省略部分的位置留下多余的空格。有什么想法吗?

答案1

细节将取决于风格(您不会在问题中显示),但一般方法应该如下。

首先,我们定义一种只打印姓氏的名称格式。然后我们告诉biblatex将这种新格式用于default格式,sortname(与作品相关的主要名称,通常是authoreditor,在authoryear- 和authortitle-like 书目中)和(在- 和-like 引文中的labelname格式)。authoryearauthortitle

根据您的风格,可能并非所有这些都是必要的,您也可能需要重新定义更多的名称格式。

如果您无条件地抑制名字,您应该确保该uniquename功能已关闭uniquename=false(再次,是否必须这样做取决于风格)。

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

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


\DeclareNameFormat{family}{%
  \usebibmacro{name:family}
    {\namepartfamily}
    {\namepartgiven}
    {\namepartprefix}
    {\namepartsuffix}%
  \usebibmacro{name:andothers}}

\DeclareNameAlias{default}{family}

\DeclareNameAlias{sortname}{default}
\DeclareNameAlias{labelname}{default}

\addbibresource{biblatex-examples.bib}

\begin{document}
\autocite{sigfridsson,cicero,gaonkar:in}
\printbibliography
\end{document}

引用和参考书目仅包含姓氏。

相关内容