Sonderfall: ein Autor, mehrere Jahre (APA-Stil in Biblatex)

Sonderfall: ein Autor, mehrere Jahre (APA-Stil in Biblatex)

Ich versuche, den APA-Zitationsstil im Biblatex-Paket mithilfe von authoryear-comp darzustellen. Der von mir verwendete Sonderfall ist, dass beim ersten Zitat im Text alle Autorennamen ausgedruckt werden, bei den nächsten Zitaten jedoch alle Autoren außer dem ersten in „et al.“ zusammengefasst werden. Das Problem des Codeausschnitts, den ich zum Anpassen verwende, besteht darin, dass die Funktionalität von authoryear-comp unterbrochen wird, sodass die Referenzen eines einzelnen Autors (z. B. MacDonald, 2011, 2015) nicht mehr gruppiert werden (z. B. MacDonald 2011, MacDonald 2015).

Der problematische Codeausschnitt ist dieser:

\AtEveryCitekey{%
    \ifciteseen{}{\defcounter{maxnames}{99}\clearfield{namehash}}}

Kann mir jemand helfen, dieses seltsame Verhalten zu beheben? Hier ist der gesamte Code:

\documentclass[a4paper, 11pt]{article}
\usepackage[top=0.85in,left=1in, right=1in, footskip=0.75in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage[style=authoryear-comp,citetracker=true, mincitenames=1, maxcitenames=2, maxbibnames=6, uniquename=false, uniquelist=false, dashed=false, giveninits=true, doi=false, isbn=false, url=false]{biblatex}

%%% To make the all names visible at the first reference
\AtEveryCitekey{%
    \ifciteseen{}{\defcounter{maxnames}{99}\clearfield{namehash}}}

%%% Use '&' instead of 'and' in parencite and bibliography list
\renewcommand*{\finalnamedelim}{%
    \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
    \addspace\&\space}

%%% Use 'and' in textcite
\DeclareDelimFormat[textcite]{finalnamedelim}{\addspace{and}\space}

\AtEveryBibitem{\clearfield{month}}
\AtEveryBibitem{\clearfield{day}}
\AtEveryBibitem{\clearfield{eprint}}

\begin{filecontents}{\jobname.bib}
    @article{macdonald2015,
        title = {On Having a Farm},
        volume = {42},
        journaltitle = {Journal of Science and Stuff},
        author = {MacDonald, O.},
        date = {2015}
    }
    @article{macdonald2016,
        title = {Noise reduction in livestock},
        volume = {43},
        journaltitle = {Journal of Science and Stuff},
        author = {MacDonald, O.},
        date = {2016}
    }
    
\end{filecontents}
\addbibresource{\jobname.bib}

\title{A document}
\begin{document}
    \maketitle
    In this text I cite \parencite{macdonald2015, macdonald2016} for the mwe. 
    And now i cite the same clever fellow \parencite{macdonald2015, macdonald2016} again.
    \printbibliography
\end{document}

Antwort1

Wenn Sie (echten) APA-Stil möchten, ist es wahrscheinlich am besten, einfach biblatex-apa's style=apa,(für den APA-Stil der 7. Ausgabe) oder biblatex-apa6's style=apa6,(für den APA-Stil der 6. Ausgabe – die erste Zitierung zeigt alle Autoren, nachfolgende nur „First + et al.“ ist ein Merkmal der 6. Ausgabe, in der 7. Ausgabe heißt es durchgehend „et al.“) zu verwenden. Der APA-Stil ist ziemlich komplex und der Versuch, alle seine Feinheiten nachzubilden, style=authoryear-comp,kann eine Weile dauern.

Verwenden Sie Stiloptionen nur, wenn sie wirklich erforderlich sind. Die Dinge sind bereits für die richtige APA-Konformität eingerichtet und zusätzliche Optionen würden wahrscheinlich nur alles durcheinander bringen. Dasselbe gilt für den Großteil des zusätzlichen biblatexCodes in der Präambel des Beispieldokuments.

\documentclass[a4paper, 11pt]{article}
\usepackage[top=0.85in,left=1in, right=1in, footskip=0.75in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage[backend=biber, style=apa]{biblatex}

\begin{filecontents}{\jobname.bib}
@article{macdonald2015,
  title = {On Having a Farm},
  volume = {42},
  journaltitle = {Journal of Science and Stuff},
  author = {MacDonald, O.},
  date = {2015}
}
@article{macdonald2016,
  title = {Noise reduction in livestock},
  volume = {43},
  journaltitle = {Journal of Science and Stuff},
  author = {MacDonald, O.},
  date = {2016}
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
  In this text I cite \parencite{macdonald2015, macdonald2016} for the mwe. 
  And now i cite the same clever fellow \parencite{macdonald2015, macdonald2016} again.
  \printbibliography
\end{document}

Wenn Sie nicht den eigentlichen APA-Stil, sondern nur etwas „wie APA“ möchten, hängt es von Ihren genauen Anforderungen ab, ob es eine gute Idee ist, Ihren Stil auf oder auf einem Stil der generischen Familie aufzubauen style=apa,. style=apa6,( authoryearAllgemein gesagt sind die APA-Stile schwieriger zu ändern, da sie speziell zur Umsetzung der komplexen APA-Anforderungen entwickelt wurden, während die generischen Stile von Endbenutzern geändert werden sollen.)

verwandte Informationen