Seite 1 von 1

Idem bei mehr als 3 Autoren im Lit.-Verzeichnis falsch

Verfasst: So 13. Nov 2016, 13:50
von Scissorsweep
Hallo,

habe folgendes Problem (vgl. Mini-Bsp.): Wenn ich zwei Werke zitiere, die jeweils mehr als 3 Autoren haben, bei welchen nur die erste Autorin gleich ist, steht "Dies." im Literaturverzeichnis - es müssten aber alle Namen aufgelistet werden, weil ja nur die erste Autorin dieselbe ist:


Das Ergebnis sieht dann (falsch) so aus:
Bertschek, Irene / Mouse, Mickey / Duck, Donald / Gans, Gustav, Monitoring zu ausgewählten wirtschaftlichen Eckdaten der Kultur- und Kreativwirtschaft 2014, Berlin 2016, zitiert als: Bertschek / Mouse / Duck / Gans, Monitoring 2014.

Dies., Monitoring zu ausgewählten wirtschaftlichen Eckdaten der Kultur- und Kreativ- wirtschaft 2013, Berlin 2015, zitiert als: Bertschek / Müller / Meier / Schulz, Monitoring 2013.
\documentclass{scrbook}
\usepackage{filecontents}
\usepackage[backend=biber,
style=biblatex-juradiss,
maxcitenames=3,
maxbibnames=99,
firstnamefont=italic,
idembib=true,
edbyidem=true,
ibidtracker=false,
citetracker=true,
ibidemfont=italic,
idemfont=italic]{biblatex}
\addbibresource{\jobname.bib}

\begin{filecontents}{\jobname.bib}
   


@book{monitoring_14,
	author = {Bertschek, Irene and Mouse, Mickey and Duck, Donald and Gans, Gustav},
	location = {Berlin},
	year = {2016},
	title = {Monitoring zu ausgewählten wirtschaftlichen Eckdaten der Kultur- und Kreativwirtschaft 2014},
	shorttitle = {Monitoring 2014},
	gender = {pm}
}

@book{monitoring_13,
	author = {Bertschek, Irene and Müller, Mike and Meier, Sepp and Schulz, Stefan},
	location = {Berlin},
	year = {2015},
	title = {Monitoring zu ausgewählten wirtschaftlichen Eckdaten der Kultur- und Kreativwirtschaft 2013},
	shorttitle = {Monitoring 2013},
	gender = {pm}
}
   
\end{filecontents}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage{alnumsec}
\begin{document}
\pagestyle{empty}
\tableofcontents
\newpage
\chapter{erstes Kapitel}
\section{Rechtsprechung seit 2002}


Text2\footcite[45]{monitoring_13}

Text2\footcite[46]{monitoring_14}


\printbibliography
\end{document}

Verfasst: Mo 28. Nov 2016, 18:02
von Scissorsweep
Hat denn keiner eine Idee?

Verfasst: Mo 28. Nov 2016, 18:52
von Gast
Das Problem ist, dass biblatex-juradiss inzwischen schon so alt ist, dass es mit aktuellen Versionen von biblatex gar nicht mehr kompatibel ist. Dein Beispiel bekomme ich mit einem aktuellen System gar nicht mehr zum Fliegen. (Siehe auch http://golatex.de/backend-undefined-bei ... 18365.html)

Mit der Zeit wird das wohl nicht besser werden, wenn biblatex-juradiss keine Updates mehr bekommt. Daher solltest Du wohl darüber nachdenken, auf einen anderen Stil umzusteigen. (Was ein Problem sein kann, denn viele funktionierende Jura-Stile gibt es glaube ich nicht.)

Soweit ich das sehe liegt das Problem darin, dass biblatex-juradiss und authortitle-dw gegen namehash statt fullhash prüfen. Dadurch wird für zu lange Listen von Namen nicht akkurat erkannt, ob sie dieselbe sind oder nicht.

Für Dein Problem reicht
\newbibmacro*{author:output}{%
  \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}
    {\ifbool{bbx:idembib}
      {\ifthenelse{\iffieldequals{namehash}{\bbx@lasthash}\AND
                   \NOT\iffirstonpage}
        {\bibnamedash}
        {\printnames{author}%
         \savefield{namehash}{\bbx@lasthash}}}
      {\printnames{author}%
       \global\undef\bbx@lasthash}%
  \iffieldundef{authortype}
    {}
    {\setunit{\addcomma\space}%
     \usebibmacro{authorstrg}}}
  {}}
Soweit ich das sehe, musst Du für eine echte Lösung mindestens
\makeatletter
\renewbibmacro*{editor}{%
  \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}}
    {\ifbool{bbx:idembib}
      {\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
                   \NOT\iffirstonpage}
         {\bibnamedash}
         {\printnames{editor}%
          \savefield{fullhash}{\bbx@lasthash}}}%
      {\printnames{editor}%
       \global\undef\bbx@lasthash}%
     \usebibmacro{editorstringpunct}%
     \usebibmacro{editorstrg}%
     \ifbool{bbx:idembib}
       {}
       {\labelnamepunct}%
     \clearname{editor}}
    {}}

\renewbibmacro*{editor+others}{%
  \ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{editor}}
    {\ifbool{bbx:idembib}
      {\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
                   \NOT\iffirstonpage}
         {\bibnamedash}
         {\printnames{editor}%
          \savefield{fullhash}{\bbx@lasthash}}}%
      {\printnames{editor}}%
     \usebibmacro{editorstringpunct}%
     \usebibmacro{editor+othersstrg}%
     \ifbool{bbx:idembib}
       {}
       {\labelnamepunct}%
     \clearname{editor}}
    {\global\undef\bbx@lasthash}}

\renewbibmacro*{translator}{%
  \ifthenelse{\ifusetranslator\AND\NOT\ifnameundef{translator}}
    {\ifbool{bbx:idembib}
      {\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
                   \NOT\iffirstonpage}
         {\bibnamedash}
         {\printnames{translator}%
          \savefield{fullhash}{\bbx@lasthash}}}%
      {\printnames{translator}}%
     \usebibmacro{editorstringpunct}%
     \usebibmacro{translatorstrg}%
     \ifbool{bbx:idembib}
       {}
       {\labelnamepunct}%
     \clearname{translator}}
    {\global\undef\bbx@lasthash}}

\renewbibmacro*{translator+others}{%
  \ifthenelse{\ifusetranslator\AND\NOT\ifnameundef{translator}}
    {\ifbool{bbx:idembib}
      {\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
                   \NOT\iffirstonpage}
         {\bibnamedash}
         {\printnames{translator}%
          \savefield{fullhash}{\bbx@lasthash}}}%
      {\printnames{translator}}%
     \usebibmacro{editorstringpunct}%
     \usebibmacro{translator+othersstrg}%
     \ifbool{bbx:idembib}
       {}
       {\labelnamepunct}%
     \clearname{translator}}
    {\global\undef\bbx@lasthash}}

\renewbibmacro*{author:output}{%
  \ifthenelse{\ifuseauthor\AND\NOT\ifnameundef{author}}
    {\ifbool{bbx:idembib}
      {\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthash}\AND
                   \NOT\iffirstonpage}
        {\bibnamedash}
        {\printnames{author}%
         \savefield{fullhash}{\bbx@lasthash}}}
      {\printnames{author}%
       \global\undef\bbx@lasthash}%
  \iffieldundef{authortype}
    {}
    {\setunit{\addcomma\space}%
     \usebibmacro{authorstrg}}}
  {}}

\renewbibmacro*{useeditor}{%
  \ifnamesequal{author}{editor}
    {\ifbool{bbx:edbyidem}
      {\midsentence*\bibstring[\mkidem]{idem\thefield{gender}}%
       \addspace}%
      {\printnames[byeditor]{editor}%
       \usebibmacro{editorstringpunct}%
       \savefield{fullhash}{\bbx@lasthash}}}%
    {\printnames[byeditor]{editor}%
     \usebibmacro{editorstringpunct}%
     \savefield{fullhash}{\bbx@lasthash}}%
   \usebibmacro{editorstrg}%
   \clearname{editor}%
   \setunit{\labelnamepunct}\newblock}

\renewbibmacro*{usetranslator}{%
  \ifnamesequal{author}{translator}
    {\ifbool{bbx:edbyidem}
      {\midsentence*\bibstring[\mkidem]{idem\thefield{gender}}%
       \addspace}%
      {\printnames[byeditor]{translator}%
       \usebibmacro{editorstringpunct}%
       \savefield{fullhash}{\bbx@lasthash}}}%
    {\printnames[byeditor]{translator}%
     \usebibmacro{editorstringpunct}%
     \savefield{fullhash}{\bbx@lasthash}}%
   \usebibmacro{translatorstrg}%
   \clearname{translator}%
   \setunit{\labelnamepunct}\newblock}
\makeatother
haben.

Verfasst: Do 1. Dez 2016, 17:02
von Scissorsweep
Vielen herzlichen Dank für die Hilfe - die 'long version' funktioniert in meinem Fall.

Dass mein Stil veraltet ist, weiß ich leider ... deshalb update ich auch nicht mehr.