Hallo zusammen, als blutiger TeX-Anfänger schreibe ich gerade meine Bachelorarbeit. Dabei muss ich den APA-Zitierstil verwenden. Da ich im Text immer nocite verwendet habe geht es vor allem um den richtigen Stil im Literaturverzeichnis. Ich verwende MikTeX.

Mein Minimalbeispiel ist:

Öffne in Overleaf
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=apa]{biblatex}
\DeclareLanguageMapping{ngerman}{ngerman-apa}
\addbibresource{apabsp.bib}
\begin{document}
Das Zitat in Buch\cite{schlau.2000} ist sehr schlau.
\printbibliography
\end{document}

Die Bib-Datei:

Öffne in Overleaf
@BOOK
{schlau.2000,
author = "Schreiber, Schlauer",
title = "Ein schlaues Buch",
publisher = "Verlag",
year = 2000
}

Ich bekomme jedesmal die Fehlermeldung:

Öffne in Overleaf
! Undefined control sequence.
I.21 \DeclareLanguageMappingSuffix
                        {-apa} 
                              ?

Mit authoryear geht es problemlos. Ich habe es auch mal ohne DeclareLanguageMapping versucht (In der Dokumentation steht dass er nicht mehr notwendig sei), geht bei mir aber auch nicht.

Kann mir jemand helfen?

gefragt 26 Dez '17, 12:13

jsd's gravatar image

jsd
111
Akzeptiert: 0%

bearbeitet 31 Dez '17, 06:45

saputello's gravatar image

saputello
20.6k53458

1

Codebeispiele immer in die Frage einfügen.

(26 Dez '17, 19:17) Henri

Ich kann das Problem weder mit biblatex 3.4 von Overleaf noch mit dem aktuellen biblatex 3.9 nachvollziehen. Ich kann daher nur vermuten, dass bei Dir biblatex und biblatex-apa in nicht zusammen passenden Versionen installiert sind (konkret biblatex-apa ist offenbar neuer). Probier mal ein Update Deiner TeX-Distribution. Beachte dabei, dass bei einem Update von biblatex sowohl alle davon abhängigen biblatex-Zusatzpakete (wie eben biblatex-apa) als auch biber aktualisiert werden muss!

(31 Dez '17, 06:41) saputello

\DeclareLanguageMappingSuffix wird in biblatex-apa ab Version 7.5 verwendet, um nicht länger manuelle Sprach-Zuordnungen zu benötigen. biblatex bietet diese Anweisung aber erst seit Version 3.8. Verwendet man eine ältere Version von biblatex, so kommt es zu der genannten Fehlermeldung. Dagegen kann man sich bei Verwendung von biblatex 3.8 die Zeile:

Öffne in Overleaf
\DeclareLanguageMapping{ngerman}{ngerman-apa}

sparen, es genügt:

Öffne in Overleaf
\begin{filecontents*}{\jobname.bib}
@BOOK
{schlau.2000,
author = "Schreiber, Schlauer",
title = "Ein schlaues Buch",
publisher = "Verlag",
year = 2000
}
\end{filecontents*}
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=apa]{biblatex}[2017/11/04]% Es wird min. biblatex 3.8 benötigt!
\addbibresource{\jobname.bib}
\begin{document}
Das Zitat in Buch\cite{schlau.2000} ist sehr schlau.
\printbibliography
\end{document}

Wenn dieses Beispiel (wie derzeit bei Verwendung des Overleaf-Links) in der .log-Datei zu einer Warnung wie:

Öffne in Overleaf
LaTeX Warning: You have requested, on input line 21, version
               `2017/11/04' of package biblatex,
               but only version
               `2016/05/14 v3.4 programmable bibliographies (PK/JW/AB)'
               is available.

führt, dann ist das installierte biblatex definitiv zu alt.

Am besten aktualisierst du sowohl biblatex als auch biblatex-apa als auch biber. MiKTeX-Anwender müssen biber ggf. mit der Admin-Version des Update-Managers durchführen. Sollten weitere biblatex-Pakete installiert sein, so sind auch diese ggf. zu aktualisieren.

Permanenter link

beantwortet 31 Dez '17, 06:58

Ijon%20Tichy's gravatar image

Ijon Tichy
7.4k11019

bearbeitet 31 Dez '17, 07:01

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×168
×102
×11
×5

Frage gestellt: 26 Dez '17, 12:13

Frage wurde angeschaut: 857 Mal

Zuletzt aktualisiert: 31 Dez '17, 07:01