Zitationsfehler und Literatur falsch im Inhaltsverzeichnis

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


Bert
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Do 3. Nov 2022, 11:36

Zitationsfehler und Literatur falsch im Inhaltsverzeichnis

Beitrag von Bert »

Hallo,

ich schreibe gerade an meiner Masterarbeit, aber die Zitation bereitet mir Probleme. Bei meiner Bachelorarbeit konnte ich IEEE als Zitationsstil verwenden, muss aber nun aufgrund der Vorgaben mit APA arbeiten. Leider funktionieren meine bisherigen Bemühungen nicht und ich habe bisher keinen passenden Artikel gefunden, der mir helfen kann.

Ich habe einiges ausprobiert und bin bisher mit apacite am weitesten gekommen. Allerdings wird mir das Literaturverzeichnis als normales chapter bzw. als section des vorherigen Kapitels mit angezeigt.
Sobald ich den Befehl \cite{} eingebe, erhalte ich folgende Fehlermeldungen:

Undefined control sequence. ...en. \cite{}
Argument of \@@cite has an extra }. ...en. \cite{}
Paragraph ended before \@@cite was complete. ...en. \cite{}

Dabei erhalte ich als Ausgabe "(Altenhofer,)".

Wie bekomme ich es hin, dass das Literaturverzeichnis eigenständig angezeigt wird und die Zitation im Text funktioniert?

Um jede Hilfe bin ich dankbar.
Dateianhänge
Einleitung.tex
(319 Bytes) 52-mal heruntergeladen
Beispiel.tex
(1.36 KiB) 59-mal heruntergeladen
MasterarbeitLiteratur.bib
(335 Bytes) 50-mal heruntergeladen

MoeWe
Forum-Meister
Forum-Meister
Beiträge: 801
Registriert: Fr 30. Aug 2019, 15:35
Kontaktdaten:

Re: Zitationsfehler und Literatur falsch im Inhaltsverzeichnis

Beitrag von MoeWe »

Echten APA-Stil aus der siebten Auflage des APA Manual bekommst Du in der LaTeX-Welt derzeit nur von biblatex-apa.
\documentclass[american]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber, style=apa]{biblatex}


\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{sigfridsson,worman}
ipsum \autocite{nussbaum}

As \textcite{sigfridsson} showed

\printbibliography
\end{document}
Da wir dann biblatex nutzen, müssen wir dieses Dokument mit Biber kompilieren und nicht mit BibTeX. Unter Umständen musst Du dafür Deinen Editor konfigurieren https://texwelt.de/fragen/1909/wie-verwende-ich-biber-in-meinem-editor.

apacite implementiert ebenso wie biblatex-apa6 (und alte Versionen von biblatex-apa) den APA-Stil der sechsten Auflage des APA Manuals.

Zu Deinem eigentlichen Code: Du machst es den Leuten hier im Forum einfacher, wenn Du den Code einfach direkt in den Fragetext einbettest. Idealerweise kombinierst Du alles so, dass Du nur einen Codeblock brauchst. Tipps dazu findest Du in der Minimalbeispiel-Anleitung.

Es fällt auf, dass Du eine Menge von Paketen lädst. Weißt Du, was die machen und warum Du sie lädst? Brauchst Du dir wirklich alle? Einige Kombinationen sind auf jeden Fall redundant. So lädt hyperref das Paket url schon von sich aus. Es bringt also nichts, url nach hyperref selbst zu laden. Das Paket units ist inzwischen doch recht betagt und die meisten würden Dir wohl für den Zweck siunitx ans Herz legen. chngcntr wird auch schon seit ein paar Jahren nicht mehr benötigt (zwei mal laden musste man es aber nie).

Den Fehler, den Du bekommst, kannst Du verhindern, indem Du apacite nach hyperref lädst. Damit ist apacite eine von wenigen Ausnahmen, da normalerweise geraten wird, hyperref als letztes Paket zu laden. Da das ungewöhnlich ist, steht das sogar in der apacite-Dokumentation (§8.2 hyperref, backref, and url).

Was die Verzeichnisebene angeht, so hat apacite eine Heuristik, die versucht herauszufinden, ob Du mehrere Verzeichnisse (eins pro Kapitel) oder nur ein gesamtes Literaturverzeichnis hast.
apacite-Dokumentation hat geschrieben:Moreover, apacite is configured such that it takes a section as default if it is in the main matter (signified by \mainmatter) of the document. In the back matter (\backmatter) the bibliography is put in a chapter. This is also the case if \chapter is defined but \mainmatter not. (Is this possible? Perhaps for reports?) Consequently, the sectionbib option is only useful in specific circumstances. The nosectionbib forces the bibliography to be a chapter, provided \chapter is defined. (I figured a chapterbib option would be a bit confusing, so I stuck with nosectionbib.)
scrreprt hat zwar \chapters und eigentlich keinen Mechanismus, um zwischen \mainmatter und \backmatter umzuschalten, müsste also ein \chapter bekommen, aber das Laden von scrlayer-scrpage definiert einen Befehl, den apacite zum Erkennen von \mainmatter nimmt, sodass apacite denkt, wir wären in der Mainmatter. Schalte die automatische Erkennung von apacite mit der genannten Option nosectionbib ab.

All die Effekte kannst Du im folgenden Beispiel ausprobieren
\documentclass[ngerman]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage{babel}

\usepackage[automark]{scrlayer-scrpage}% oder mal auskommentieren

\usepackage{hyperref}
\usepackage{apacite}
%\usepackage[nosectionbib]{apacite}

\begin{filecontents}{\jobname.bib}
@book{elk,
  author    = {Anne Elk},
  title     = {A Theory on Brontosauruses},
  year      = {1972},
  publisher = {Monthy \& Co.},
  location  = {London},
}
\end{filecontents}


\begin{document}
\tableofcontents
\chapter{Lorem}
Lorem \cite{elk}

\bibliographystyle{apacite}
\bibliography{\jobname}
\end{document}
Wenn Du aber eh mit der Seitenzählung rumspielst und eine Art Trennung von \frontmatter, \mainmatter und \backmatter hast, dann kannst Du auch darüber nachdenken, gleich die Buchklasse scrbook zu nehmen. Da gibt es nämlich die entsprechenden Befehle.

Bert
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Do 3. Nov 2022, 11:36

Re: Zitationsfehler und Literatur falsch im Inhaltsverzeichnis

Beitrag von Bert »

Vielen Dank für deine Antwort. Das mit dem Zitieren sollte jetzt hoffentlich funktionieren.

Allerdings tritt nun das nächste Problem auf, sodass ich nicht kompilieren kann.
Es werden nämlich die Fehler "Undefined control sequence. \AddToHook" sowie "Missing \begin{document}. \AddToHook{b" in der translations.sty-Datei angezeigt.

Ich habe bereits die neueste Version von TexStudio heruntergeladen, sodass es daran eigentlich nicht liegen sollte.

Könnt ihr mir da auch noch einmal weiterhelfen?

MoeWe
Forum-Meister
Forum-Meister
Beiträge: 801
Registriert: Fr 30. Aug 2019, 15:35
Kontaktdaten:

Re: Zitationsfehler und Literatur falsch im Inhaltsverzeichnis

Beitrag von MoeWe »

Ich schlage vor, dafür ein neues Thema aufzumachen.

Es hilft auch sehr, wenn Du uns ein Minimalbeispiel (ein Dokument, das den Fehler mit so wenig Code wie möglich reproduziert) zeigst. Außerdem ist es hilfreich, die Fehlermeldung vollständig aus der .log-Datei herauszukopieren und nicht nur die Zusammenfassung Deines Editors.

Die neuste Version von TeXStudio hilft Dir hier wahrscheinlich nicht. Es wohl eher so, dass Deine TeX-Distribution (MikTeX oder TeX Live) in einigen Stellen veraltet ist. Die musst Du aktualisieren: https://tex.stackexchange.com/q/55437/35864

ich meine ja nur

Re: Zitationsfehler und Literatur falsch im Inhaltsverzeichnis

Beitrag von ich meine ja nur »

Bert hat geschrieben:
Di 8. Nov 2022, 07:37
Ich habe bereits die neueste Version von TexStudio heruntergeladen, sodass es daran eigentlich nicht liegen sollte.
TeXstudio ist nur der Editor. Du verwendest offenbar ein (sehr) altes LaTeX, aber ein neues translations (wird von biblatex geladen). Was du aktualisieren musst, ist daher die von dir verwendete TeX-Distribution. Übrigens spielt bei allen von LaTeX gemeldeten Fehlern spielt der Editor eine untergeordnete Rolle.

Bei der TeX-Distribution MiKTeX geht das über die MiKTeX Console. Bei MiKTeX-Installationen für alle Benutzer (was am häufigsten anzutreffen ist), muss man dazu zuerst das Angebot, in den Administrator-Modus zu wechseln, annehmen und eine erste Aktualisierung durchführen. Danach startet man die MiKTeX Console neu und führt eine Aktualisierung im Benutzermodus durch.

Bei Vanilla TeX Live macht man die Aktualisierung über tlmgr bzw. eine der grafischen Oberflächen dafür. Unter Linux muss man dazu je nachdem, wie man es installiert sudo bemühen, häufig in der Form sudo -i -- tlmgr update --all --self.

Bei TeX-Live-Paketen aus einer Linux-Distribution ist man häufig aufgeschmissen. Allerdings hat man dann normalerweise auch alle Pakete in der dazu passenden Version, so dass der genannte Fehler nicht auftreten sollte.

Bei MacTeX verwendet man TeX Live Utility für das Update oder wie für Vanilla TeX Live tlmgr.

Bert
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Do 3. Nov 2022, 11:36

Re: Zitationsfehler und Literatur falsch im Inhaltsverzeichnis

Beitrag von Bert »

Danke für eure Hinweise. Hatte gerade einfach nur eine kleine Denkblockade mit dem Aktualisieren...
Jetzt klappt alles so wie es sollte :D

Antworten