С помощью стилей biblatex и verbose-trad2 я хотел бы поменять местами фамилию и имя.для встроенных ссылок.
Поведение по умолчанию:
Джон ДОУ, Название, место: издатель, год
для встроенных ссылок (в моем случае, в сноске с footcite
командой) и:
DOE, Джон, Название, место: издатель, год
в библиографии в конце документа.
Я хотел бы иметь как встроенные, так и конечные ссылки в следующем формате (похожем на стиль бибиографии).
DOE, Джон, Название, место: издатель, год
PS: Есть несколько близких вопросов (например,Вот этот), но только для конечной библиографии (и без встроенных ссылок). \DeclareNameAlias{sortname}{last-first}
работает только для конечных ссылок (не для встроенных).
решение1
Вам также придется установить default
, так как команды cite в verbose-trad2
* временно установлены \DeclareNameAlias{sortname}{default}
(и по умолчанию ... default
) \DeclareNameAlias{default}{given-family}
.
Так что просто выдайте
\DeclareNameAlias{sortname}{family-given}
\DeclareNameAlias{default}{family-given}
в преамбуле. Обратите внимание, что default
используется также в нескольких других местах, поэтому это изменение также влияет на библиографию. Если вы хотите модификацию, которая влияет только на цитаты, см. ниже.
МВЭ
\documentclass{article}
\usepackage[style=verbose-trad2, backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}
\DeclareNameAlias{sortname}{family-given}
\DeclareNameAlias{default}{family-given}
\begin{document}
A\footcite{wilde}
B\footcite{cicero}
\printbibliography
\end{document}
дает
* Код можно найти в verbose-trad2.cbx
, шестая строка ниже является проблемной.
\newbibmacro*{cite:full}{%
\usebibmacro{cite:full:citepages}%
\global\toggletrue{cbx:fullcite}%
\printtext[bibhypertarget]{%
\usedriver
{\DeclareNameAlias{sortname}{default}}
{\thefield{entrytype}}}%
\usebibmacro{shorthandintro}}
Это показывает нам, что другим решением было бы
\DeclareNameAlias{sortname}{family-given}
\renewbibmacro*{cite:full}{%
\usebibmacro{cite:full:citepages}%
\global\toggletrue{cbx:fullcite}%
\printtext[bibhypertarget]{%
\usedriver
{}
{\thefield{entrytype}}}%
\usebibmacro{shorthandintro}}
Но, конечно, это длиннее. Эффект немного другой, так как это повлияет только на формат имени в длинных цитатах и больше нигде.
редактироватьЕсли вы используете устаревшую версию, просмотрите историю изменений кода до версии 3.3.biblatex
. См.Форматирование имени Biblatex 3.3.