библиографиядрайвер - исправление ошибок

библиографиядрайвер - исправление ошибок

Я написал драйвер библиографии для вывода @jurisdiction в библиографии. @jurisdiction уже определен в jura2. Отсутствует только драйвер.

Проблема моего подхода к решению заключается в том, что учреждение и первый \textendash не отображаются.

IS: Дата 27 марта 1952 г. – IV R 356/51 U, BStBl. III 1952, S. 122. СЛЕДУЕТ: BFH-Urteil vom 27. März 1952 – iV R 356/51 U, BStBl. III 1952, С. 122.

\documentclass[paper=a4, 12pt, parskip=half]{scrreprt}

\begin{filecontents}{literatur.bib}
  @jurisdiction{IV35651U,
gericht = {BFH},
dokumententyp = {Urteil},
entscheidungsdatum = {1952-03-27},
aktenzeichen = {IV R 356/51 U},
fundstelle = {BStBl. III 1952, S. 122},
}
\end{filecontents}

\usepackage{polyglossia}
\setdefaultlanguage[spelling=new,babelshorthands=true]{german}
\usepackage{luacode}
%\setromanfont{Arial}
%\setsansfont{Arial}
\usepackage[backend=biber,style=jura2,sorting=nty]{biblatex}  
\addbibresource{literatur.bib}


% ----------------------------------------------------------------------------
% Driver; @jurisdiction;biblatex backend=biber style=jura2
% ----------------------------------------------------------------------------
\DeclareBibliographyDriver{jurisdiction}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \printfield{institution}%
  \setunit{\textendash}%
  \printfield{usera}%
  \setunit{\addspace}%
  \printtext{vom}%
  \setunit{\addspace}%
  \usebibmacro{date}%
  \setunit{\addspace\textendash\addspace}%
   \printfield{userb}%
   \setunit{\addcomma\addspace}%
   \printfield{userd}%
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}} 
  
  \begin{document}
 
 Referenz\footcite[][]{IV35651U} 
 
  \printbibliography %[nottype=jurisdiction]
  \end {document}

Извлечение из файла .bbx jura 2

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Änderungen betr. 'jurisdiction'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\DeclareStyleSourcemap{
  \maps[datatype=bibtex]{
  \map[overwrite=false]{
    \pertype{jurisdiction}
    \step[fieldsource=gericht,
          fieldtarget=institution]
    \step[fieldsource=dokumententyp,
          fieldtarget=usera]
    \step[fieldsource=entscheidungsdatum,
          fieldtarget=date]
    \step[fieldsource=aktenzeichen,
          fieldtarget=userb]
    \step[fieldsource=datenbank,
          fieldtarget=userc]
    \step[fieldsource=fundstelle,
          fieldtarget=userd]
    \step[fieldsource=ecli,
          fieldtarget=usere]
    \step[fieldsource=entscheidungsname,
          fieldtarget=userf]
  }}}

решение1

Тебе нужно

  \printlist{institution}%

а не \printfield{institution}%в драйвере. Вам нужно сопоставить \print<type>команду с <type>соответствующим полем. institution— это буквальный список, поэтому \printlistздесь требуется.

Я не могу проверить это с вашим кодом, так как у меня нет Arial, который является коммерческим шрифтом, к которому у меня нет доступа. Однако, используя шрифты по умолчанию, можно увидеть, что эта модификация исправляет проблему.

учреждение в библиографической записи

\documentclass[paper=a4, 12pt, parskip=half]{scrreprt}

\begin{filecontents}{literatur.bib}
  @jurisdiction{IV35651U,
gericht = {BFH},
dokumententyp = {Urteil},
entscheidungsdatum = {1952-03-27},
aktenzeichen = {IV R 356/51 U},
fundstelle = {BStBl. III 1952, S. 122},
}
\end{filecontents}

\usepackage{polyglossia}
\setdefaultlanguage[spelling=new,babelshorthands=true]{german}
\usepackage{luacode}
\usepackage[backend=biber,style=jura2,sorting=nty]{biblatex}  
\addbibresource{literatur.bib}
\DeclareBibliographyDriver{jurisdiction}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \printlist{institution}%
  \setunit{\textendash}%
  \printfield{usera}%
  \setunit{\addspace}%
  \printtext{vom}%
  \setunit{\addspace}%
  \usebibmacro{date}%
  \setunit{\addspace\textendash\addspace}%
  \printfield{userb}%
  \setunit{\addcomma\addspace}%
  \printfield{userd}%
  \iftoggle{bbx:related}
  {\usebibmacro{related:init}%
    \usebibmacro{related}}
  {}%
  \usebibmacro{finentry}} 

\begin{document}
  
Referenz\footcite[][]{IV35651U} 

\printbibliography 
\end{document}

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