Добавление запятой после НАЗВАНИЯ (перед годом) в цитате

Добавление запятой после НАЗВАНИЯ (перед годом) в цитате

Этот вопрос можно рассматривать как расширение этого (Как добавить запятую между автором и годом), который, однако, не содержит ответа на мой вопрос.

В этом же контексте я пытаюсь изменить стиль цитирования таким образом, чтобы между автором и годом стояла запятая, например:

(Автор, 2016)

. Мне удалось добиться этого, изменив файл biblatex.def следующим образом.

\renewcommand*{\nameyeardelim}{\addcomma\space}

Моя проблема сейчас в том, что я не могу найти \titleyeardelimили какой-то "стандартный" (если такой существует) разделитель, который используется в случаях, когда автор отсутствует и вместо него используется название. Соответственно я получаю

(Название 2016)

во всех моих цитатах вместо требуемого:

(Название, 2016)

Заранее благодарю за любую помощь!

решение1

Начиная с версии 3.3 biblatex, появилась команда \nonameyeardelim, которую можно переопределить

\renewcommand*{\nonameyeardelim}{\addcomma\space}

Если вы используете более старую версию, biblatexвам нужно будет изменить сам макрос cite, используя тот authoryearстиль, который есть

\providecommand*{\nonameyeardelim}{\nameyeardelim}
\renewcommand*{\nonameyeardelim}{\nameyeardelim}

\renewbibmacro*{cite}{%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
       {\usebibmacro{cite:label}%
        \setunit{\nonameyeardelim}}%% <-- this line needed to be changed
       {\printnames{labelname}%
        \setunit{\nameyeardelim}}%
     \usebibmacro{cite:labelyear+extrayear}}
    {\usebibmacro{cite:shorthand}}}

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