biblatex печатает "family=, familyi=" и т.д. в библиографии

biblatex печатает "family=, familyi=" и т.д. в библиографии

Моя цель — использовать BiBLaTeX со стилем numeric-comp и способом сортировки имен авторов family-given/given-family, со всеми именами, выделенными жирным шрифтом. Вот мой MWE:

\documentclass{scrreprt}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}

\usepackage[
backend=biber,
style=numeric-comp,
sorting=none,
]{biblatex}

\addbibresource{test.bib}

\DeclareNameAlias{sortname}{family-given/given-family-bold}
\DeclareNameFormat{family-given/given-family-bold}{\mkbibbold{%
        \ifnumequal{\value{listcount}}{1}
        {\ifgiveninits
            {\usebibmacro{name:family-given}
                {\namepartfamily}
                {\namepartgiveni}
                {\namepartprefix}
                {\namepartsuffix}}
            {\usebibmacro{name:family-given}
                {\namepartfamily}
                {\namepartgiven}
                {\namepartprefix}
                {\namepartsuffix}}%
            \ifboolexpe{%
                test {\ifdefvoid\namepartgiven}
                and
                test {\ifdefvoid\namepartprefix}}
            {}
            {\usebibmacro{name:revsdelim}}}
        {\ifgiveninits
            {\usebibmacro{name:given-family}
                {\namepartfamily}
                {\namepartgiveni}
                {\namepartprefix}
                {\namepartsuffix}}
            {\usebibmacro{name:given-family}
                {\namepartfamily}
                {\namepartgiven}
                {\namepartprefix}
                {\namepartsuffix}}}%
        \usebibmacro{name:andothers}}}

    \DeclareNameAlias{sortname}{given-family-bold}

    \DeclareNameAlias{author}{given-family-bold}
    \DeclareNameAlias{editor}{given-family-bold}
    \DeclareNameAlias{translator}{given-family-bold}

    \usepackage{filecontents}

    \begin{filecontents}{test.bib}
        @book{Doe86,
            author = {Doe, John},
            year = {1986},
            title = {some book},
        }
    \end{filecontents}


\begin{document}

I'm citing \cite{Doe86}

\printbibliography

\end{document}

Странно, но он выдает следующий вывод, независимо от того, как часто я компилирую (и latex, и biber). Что я делаю не так?

введите описание изображения здесь

решение1

С текущей версией biblatexя бы использовал обертки имен, чтобы применить жирный шрифт к именам. Если вы хотите смешанный family-given/given-familyпорядок, вам все равно нужно переопределить формат имени (потому что по умолчанию для числовых стилей используется given-familyпорядок).

\documentclass{scrreprt}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}

\usepackage[
  backend=biber,
  style=numeric-comp,
  sorting=none,
]{biblatex}

\DeclareNameAlias{sortname}{family-given/given-family}

\DeclareNameAlias{author}{sortname}
\DeclareNameAlias{editor}{sortname}
\DeclareNameAlias{translator}{sortname}

\DeclareNameWrapperFormat{sortname}{\mkbibbold{#1}}

\DeclareNameWrapperAlias{author}{sortname}
\DeclareNameWrapperAlias{editor}{sortname}
\DeclareNameWrapperAlias{translator}{sortname}

\addbibresource{biblatex-examples.bib}

\begin{document}
I'm citing \cite{sigfridsson,nussbaum}

\printbibliography
\end{document}

**Sigfridsson, Emma и Ulf Ryde**. «Сравнение методов получения атомных зарядов из электростатического потенциала и моментов». В: Journal of Computational Chemistry 19.4 (1998), стр. 377–395. doi: 10.1002/(SICI)1096-987X(199803)19:4<377::AID-JCC1>3.0.CO;2-P.//**Nussbaum, Martha**. «De Motu Animalium» Аристотеля. Принстон: Princeton University Press, 1978. (жирный текст отмечен двойными звездочками)


Проблема с кодом из вопроса была в том, что он определял один формат имени ( family-given/given-family-bold), но затемиспользовалдругой, несуществующий формат ( given-family-bold). Несуществующие форматы приводят к странному выводу, который вы получили. Это можно было бы переработать следующим образом (но я все же предпочитаю решение выше).

\documentclass{scrreprt}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}

\usepackage[
  backend=biber,
  style=numeric-comp,
  sorting=none,
]{biblatex}


\DeclareNameFormat{family-given/given-family-bold}{%
  \mkbibbold{%
    \ifnumequal{\value{listcount}}{1}
      {\ifgiveninits
          {\usebibmacro{name:family-given}
              {\namepartfamily}
              {\namepartgiveni}
              {\namepartprefix}
              {\namepartsuffix}}
          {\usebibmacro{name:family-given}
              {\namepartfamily}
              {\namepartgiven}
              {\namepartprefix}
              {\namepartsuffix}}%
          \ifboolexpe{%
              test {\ifdefvoid\namepartgiven}
              and
              test {\ifdefvoid\namepartprefix}}
          {}
          {\usebibmacro{name:revsdelim}}}
      {\ifgiveninits
          {\usebibmacro{name:given-family}
              {\namepartfamily}
              {\namepartgiveni}
              {\namepartprefix}
              {\namepartsuffix}}
          {\usebibmacro{name:given-family}
              {\namepartfamily}
              {\namepartgiven}
              {\namepartprefix}
              {\namepartsuffix}}}%
    \usebibmacro{name:andothers}}}

\DeclareNameAlias{sortname}{family-given/given-family-bold}

\DeclareNameAlias{author}{sortname}
\DeclareNameAlias{editor}{sortname}
\DeclareNameAlias{translator}{sortname}


\addbibresource{biblatex-examples.bib}

\begin{document}
I'm citing \cite{sigfridsson,nussbaum}

\printbibliography
\end{document}

Результат тот же.

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