我正在使用 BibLaTeX,我想自定义引用标签书目条目以省略作者的姓名首字母,仅显示姓氏和“et al”。
例如,我希望参考书目中的引用显示为“Chang et al. (2011)”,而不是“Chang, Leyen S. et al. (2011)”。
以下是我当前的设置:
\usepackage[style=authoryear, backend=biber, doi=false, url=false,
isbn=false, maxcitenames=1, maxbibnames=1, giveninits=false,
uniquelist=false, uniquename=false, date=year]{biblatex}
但是,这种配置并没有达到预期的效果。我该如何修改 BibLaTeX 设置以实现我想要的引用样式?
以下是一个围兜条目的示例:
@article{chang_supersonic_2011,
title = {Supersonic Mass-Flux Measurements via Tunable Diode Laser Absorption and Nonuniform Flow Modeling},
volume = {49},
issn = {0001-1452, 1533-385X},
url = {https://arc.aiaa.org/doi/10.2514/1.J051118},
doi = {10.2514/1.J051118},
pages = {2783--2791},
number = {12},
journaltitle = {{AIAA} Journal},
shortjournal = {{AIAA} Journal},
author = {Chang, Leyen S. and Strand, Christopher L. and Jeffries, Jay B. and Hanson, Ronald K. and Diskin, Glenn S. and Gaffney, Richard L. and Capriotti, Diego P.},
urldate = {2024-02-16},
date = {2011-12},
langid = {english},
}
答案1
我通常不推荐这样做。通常最好有更详细的参考书目,并至少列出所有相关人员的名字。但其余设置看起来也是为了节省空间而做出的最后一搏,所以就这样吧。
我们定义了一种新的姓名格式,只打印姓氏并使用它。因为只更改sortname
与工作相关的主要姓名()看起来很奇怪,所以我们还更改了default
用于大多数其他目的的姓名格式。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[
backend=biber,
style=authoryear,
maxcitenames=1, maxbibnames=1,
giveninits=false,
uniquelist=false, uniquename=false,
date=year,
doi=false, url=false, isbn=false,
]{biblatex}
\DeclareNameFormat{family}{%
\usebibmacro{name:family}
{\namepartfamily}
{\namepartgiven}
{\namepartprefix}
{\namepartsuffix}%
\usebibmacro{name:andothers}}
\DeclareNameAlias{sortname}{family}
\DeclareNameAlias{default}{family}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite{sigfridsson,aksin,companion}
\printbibliography
\end{document}