Biblatex \citeauthor стиль

Biblatex \citeauthor стиль

Я использую 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}}

Связанный контент