未提供卷/卷标题时缺少逗号

未提供卷/卷标题时缺少逗号

在添加时INCOLLECTION我意识到,如果条目没有卷,jurabib 会在书名和地址之间省略逗号。请比较以下 MWE:

\documentclass[]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{filecontents}
\usepackage[]{jurabib}

\renewcommand*{\bibatsep}{,}

\begin{filecontents}{literatur.bib}

@INCOLLECTION{Althoff_Freiwilligkeit,
  author     = {Gerd Althoff},
  title      = {Freiwilligkeit und Konsensfassaden. Emotionale Ausdrucksformen in der Politik des Mittelalters},
  booktitle  = {Pathos, Effekt, Gef\"uhl},
  pages      = {S.\,145\,--\,161},
  year       = {2004},
  address    = {Berlin},
  howcited   = {1},
  shorttitle = {Freiwilligkeit und Konsensfassaden}
}

\end{filecontents}
\begin{document}
Test\footcite{Althoff_Freiwilligkeit}.

\bibliography{literatur}
\bibliographystyle{jurabib}

\end{document}

附有输出截图: 在此处输入图片描述

我已经在使用@Ulrike Fischer 的修复程序(为什么 jurabib 会产生太多空白?),我认为这是相关的,但我不知道如何修复\incolledformat以打印这个逗号。

答案1

您可能想尝试对原始进行以下重新定义\incolledformat。更改的行标有new,并链接到此问题。

\makeatletter
\renewcommand*{\incolledformat}[5]{%
 \bibBTsep{} %
 \ifjb@edby
    #3%
    \ifx\relax#1\relax
     \ifx\relax#5\relax\else
      \ifx\relax#4\relax
        \bibatsep{}%
      \else
        \bibatsep{}\space%
      \fi
     \fi
    \else
        \ifx\relax#5\relax
            \ifjb@humanbst@loaded\edbysep{}\fi
            \unskip\unskip\unskip\unskip\unskip\unskip\space\Edbyname{} %
        \else
            \edbysep{}%
            \Edbyname{} %
        \fi
        \begingroup
            #1%
        \endgroup
    \fi
    \ifx\relax#4\relax\else
      \ifx\relax#1\relax\else
        \ifx\relax#5\relax
          .\space%
        \else
          \bibatsep{} %
        \fi
      \fi
      \Volumename~#4%
    \fi
    \ifx\relax#1\relax
     \ifx\relax#4\relax\else.\fi % volume empty
    \else
      \ifjb@humanbst@loaded\else
        \ifjbchicago\else.\fi
      \fi
    \fi
 \else
  \ifx\relax#1\relax\else
      \begingroup
          #1 % editor
      \endgroup
      \ifx\relax#2\relax\else#2\fi
      \bothaesep%
    \fi
    #3%
    \ifx\relax#4\relax
      \unskip\bibatsep{} %<------ new https://tex.stackexchange.com/q/520741/35864
    \else
      \ifx\relax#5\relax\space\else,\space\fi% volume and booktitleaddon
      \volumeformat{#4}%
    \fi
 \fi
}
\makeatother

当然,这可以与 Ulrike 对相关问题的回答结合起来

\documentclass[]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{filecontents}
\usepackage[]{jurabib}

\renewcommand*{\bibatsep}{,}

\makeatletter
\renewcommand*{\incolledformat}[5]{%
 \bibBTsep{} %
 \ifjb@edby
    #3%
    \ifx\relax#1\relax
     \ifx\relax#5\relax\else
      \ifx\relax#4\relax
        \bibatsep{}%
      \else
        \bibatsep{}\space%
      \fi
     \fi
    \else
        \ifx\relax#5\relax
            \ifjb@humanbst@loaded\edbysep{}\fi
            \unskip\unskip\unskip\unskip\unskip\unskip\space\Edbyname{} %
        \else
            \edbysep{}%
            \Edbyname{} %
        \fi
        \begingroup
            #1%
        \endgroup
    \fi
    \ifx\relax#4\relax\else
      \ifx\relax#1\relax\else 
        \ifx\relax#5\relax
          .\space%
        \else
          \bibatsep{} %
        \fi
      \fi
      \Volumename~#4%
    \fi
    \ifx\relax#1\relax
     \ifx\relax#4\relax\else.\fi % volume empty
    \else
      \ifjb@humanbst@loaded\else
        \ifjbchicago\else.\fi
      \fi
    \fi
 \else 
  \ifx\relax#1\relax\else
      \begingroup
          #1 % editor
      \endgroup
      \ifx\relax#2\relax\else#2\fi
      \bothaesep%
    \fi
    #3%
    \ifx\relax#4\relax
      \unskip\bibatsep{} %<------ new https://tex.stackexchange.com/q/520741/35864
    \else
     \unskip %<------ new https://tex.stackexchange.com/q/450988/35864
      \ifx\relax#5\relax\space\else,\space\fi% volume and booktitleaddon
      \volumeformat{#4}%
    \fi
 \fi
}
\makeatother

\begin{filecontents}{\jobname.bib}
@INCOLLECTION{Althoff_Freiwilligkeit,
  author     = {Gerd Althoff},
  title      = {Freiwilligkeit und Konsensfassaden. Emotionale Ausdrucksformen in der Politik des Mittelalters},
  booktitle  = {Pathos, Effekt, Gef\"uhl},
  pages      = {S.\,145\,--\,161},
  year       = {2004},
  address    = {Berlin},
  howcited   = {1},
  shorttitle = {Freiwilligkeit und Konsensfassaden}
}
@INCOLLECTION{Lehnswesen,
  author = {Oliver Auge},
  title = {Lehnrecht, Lehnswesen},
  booktitle = {Hand\-w\"orterbuch zur Deutschen Rechtsgeschichte},
    pages = {Sp.\,717\,--\,736},
  year = {2016},
  editor = {Albrecht Cordes and Hans-Peter Haferkamp and Heiner L\"uck and Dieter Werkm\"uller},
  volume = {III},
  address = {Berlin},
  shorttitle = {Lehnrecht, Lehnswesen in: HRG~III, 2.\,Auflage},
  volumetitle = {Konfliktbew\"altigung\,--\,Nowgorod}
}
\end{filecontents}
\begin{document}
Test\footcite{Althoff_Freiwilligkeit,Lehnswesen}.

\bibliography{\jobname}
\bibliographystyle{jurabib}
\end{document}

Althoff,Gerd:自由和意识。中产阶级政治中的情感表达形式,《情感、效果和困境》,柏林,2004 年,第 145–161 页

相关内容