我正在使用 BibLatex,其配置如下:
\usepackage[backend = biber,
language = english ,
style = alphabetic ,
firstinits = true,
isbn = false,
url = false,
doi = false,
sorting = nyt,
backref=true
]{biblatex}
是否可以将当前的 \citeauthor‘姓氏样式’(例如“Doe”)更改为‘缩写名字姓氏’样式(例如“J. Doe”)?
答案1
默认情况下\citeauthor
使用labelname
格式。使用你的设置,你可以简单地使用
\DeclareNameAlias{labelname}{given-family}
这种方法效果很好,因为您不使用labelname
引用中的格式(您的风格是alphabetic
),并且您已经有了giveninits=true
(在旧版本中giveninits
被称为firstinits
),所以我们只能得到首字母。
使用labelname
你可能需要的其他风格
\DeclareCiteCommand{\citeauthor}
{\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\usebibmacro{prenote}}
{\ifciteindex
{\indexnames{labelname}}
{}%
\printnames[given-family]{labelname}}
{\multicitedelim}
{\usebibmacro{postnote}}
反而。
如果你没有giveninits=true
启用,请使用
\DeclareNameFormat{g-family}{%
\usebibmacro{name:given-family}
{\namepartfamily}
{\namepartgiveni}
{\namepartprefix}
{\namepartsuffix}%
\usebibmacro{name:andothers}}
\DeclareCiteCommand{\citeauthor}
{\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\usebibmacro{prenote}}
{\ifciteindex
{\indexnames{labelname}}
{}%
\printnames[g-family]{labelname}}
{\multicitedelim}
{\usebibmacro{postnote}}