Literaturverzeichnis erscheint nicht, läuft dennoch fehlerfr

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


Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Tja, dann schau doch nochmal in die blg-Datei. Die beißt nicht. Vielleicht ist da ja wieder ein großes "WARN" oder sogar ein "ERROR", das erklärt, was nicht läuft.

Gast

Beitrag von Gast »

Der Screenshot zeigt, dass Du in der Tat die Option "Erweiterung bei bekannten Dateitypen ausblenden" aktiviert hast. Nur die Dateiendungen von (für Windows) unbekannten Typen wird angezeigt. Insbesondere wird dadurch die Dateiendung der .blg (Leistungsüberwachungsdatei, wie oben bereits erwähnt; an der Stelle bin ich ein bisschen enttäuscht, weil ich das Gefühl habe, dass Du meine Beiträge nicht liest, schon auf Seite 1 schrieb ich "(Windows erkennt .blg-Dateien als Leistungsüberwachgungsdateien, aber sie sind dennoch einfache Textdateien, die mit jedem Text-Editor geöffnet und betrachtet werden können.)", auf Seite 3 dann nochmal "Wie oben erwähnt wird z.B. die .blg-Datei als Leistungsüberwachungsdatei erkannt." und dann steht direkt darunter in Deinem Beitrag "Interessanter Weise habe ich eine Leistungsüberwachtungdatei, was ist mit der (diese hat wirklich als Typ das dort stehen, die .blg- Datei war noch eine andere, weitere Datei)?") und höchstwahrscheinlich der .log-Datei (Textdokument, das ist nicht ganz eindeutig, aber der verdacht liegt sehr, sehr nahe) nicht angezeigt, was dann für Verwirrung sorgt. (Es ist wahrscheinlich klar, aber die beiden genannten Dateien sind einfache Textdateien, die mit jedem Text-Editor geöffnet und gelesen werden können. Eventuell muss man dafür aber Windows' Drang umgehen, die Dateien falsch zuzuordnen.) Daher empfehle ich immer, die genannte Option zu deaktivieren, damit man immer alle Dateiendungen sieht.

Einträge aus Deiner .bib-Datei werden, wie bereits erwähnt, nur dann in das Literaturverzeichnis übernommen, wenn sie mit einem der \...cite-Befehle zitiert wurden oder mit \nocite{<key>} explizit bzw. mit \nocite{*} (für alle Einträge auf einmal) zum Verzeichnis hinzugefügt werden. Das Verhalten ist bei biblatex und BibTeX gleich.

Wie ebenfalls angesprochen, hat \printbibliography kein obligatorisches Argument und nimmt insbesondere nicht den Dateinamen der .bib-Datei als Argument. Wenn Du das also wie ein \printbibliography{Literatur_test} dahinter schreibst, dann wird einfach nur der Dateiname im Dokument gedruckt, das ist selten gewollt (hier sogar mit einem ungewollten Ausflug in den Mathemodus).

Die .bib-Datei wird in der Präambel mit \addbibresource angegeben. Statt \addbibresource{filename.bib} könnte man auch \bibliography{filename} (ohne die .bib-Erweiterung) schreiben, aber es wird im Allgemeinen \addbibresource empfohlen. In jedem Falle ist aber \addbibresource und auch \bibliography in der Präamebl zu verwenden. Wenn sie innerhalb von \begin{document}...\end{document} stehen, geht es nicht.

Jetzt aber zum eigentlichen Fehler. Wir hatten ja schon etabliert, dass prinzipiell alles geht, und in dem Dokumentencode ist auch ansonsten kein problematischer Code vorhanden, der für Fehler sorgen würde (wohl aber solltest Du statt \mark... und \section lieber nach der heading-Option von \printbibliography sehen oder von KOMA-Script die bibliography-Einstellungen nehmen). Das Problem ist die .bib-Datei mit den Test-Einträgen
@book{Kurzname-0000,
author={Name, Name, Name},
title={Titel},
year= 0000,
publisher={Verlag},
location={Stadt, Land},
edition={0}
}

@book{Kurzname-0001,
author={Name},
title={Titel},
year= 0000,
publisher={Verlag & Verlag & Verlag},
location={Stadt, Land},
}
Das & ist für LaTeX ein spezielles Zeichen, wenn Du ein "&" Ausgeben möchtest, musst Du \& schreiben. Siehe https://tex.stackexchange.com/q/34580/35864

Ferner ist author={Name, Name, Name}, gerade so kein Syntax-Fehler, Du solltest aber bedenken, dass mehrere Namen immer mit and getrennt werden müssen, egal welche Ausgabe erwartet wird, Kommas kommen nur zum Einsatz um Vornamen und Nachnamen innerhalb desselben Namens zu trennen. Siehe https://tex.stackexchange.com/q/557/35864 und https://tex.stackexchange.com/q/36396/35864

Wenn Du diese Fehler in der .bib-Datei korrigierst, werden sie aufgrund asynchronen Ausführung von LaTeX und Biber nicht gleich im nächsten LaTeX-Lauf korrekt sein (erst muss Biber die Datei neu einlesen, das geht unter Umständen aber nicht, wenn der vorherige LaTeX-Lauf einen Fehler hatte: ein Teufelskreis). Daher bietet es sich an, wieder alle Hilfsdateien zu löschen, damit man sich nicht in den Fehlern verheddert.

GiFi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 15. Jun 2019, 20:13

Beitrag von GiFi »

An Gast:
Ich habe durchaus jeden Beitrag gelesen, aber gerade, wenn es so Neuland ist, ist es manchmal schwer, den Überblick zu behalten, tut mir leid. Ich hatte eben auch eine Leistungsüberwachungsdatei und eine .blg- Datei zeitgleich, was mich irritiert hat, weil ich nicht wusste, welche nun welche ist etc.

Das \nocite hatte ich, wie direkt unmittelbar danach erwähnt, sofort angefügt, als auch das \printbibliography geändert, siehe:
GiFi hat geschrieben:Mein Dokumentenende sieht jetzt so aus:
\printbibliography
\nocite{*}
%\nocite{Kurzname-0000}
%\nocite{Kurzname-0001}
\end{document}
Ich wollte beide Varianten ausprobieren, wobei ich später sicherlich das * benötige, leider kompiliert auch das nicht.

Wenn ich das angegebene Beispiel versuche ebenfalls zu konstruieren mit:
 \bibliography{Literatur_test} 
,

bekomme ich die Fehlermeldung:

! LaTeX Error: Can be used only in preamble.

Wenn ich es außerhalb des Dokumentenbeginns packe, läuft es zwar fehlerfrei durch, aber ich habe immer noch kein Literaturverzeichnis.

GiFi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 15. Jun 2019, 20:13

Beitrag von GiFi »

Ich habe nun das mit dem & zu \& geändert, dennoch - und auch nach Löschung der gesamten Hilfsdateien im Vorhinein - wird mir KEIN Literaturverzeichnis angezeigt, auch wenn ich es sehr gehofft hatte und auch Alles hoffentlich nach Hinweisen gemacht habe.

Leistungsüberwachungsdatei gibt mir nichts, was ich als Fehler identifizieren würde:

[0] Config.pm:304> INFO - This is Biber 2.12
[0] Config.pm:307> INFO - Logfile is 'TESTFORUM.blg'
[32] biber-MSWIN64:315> INFO - ===
[60] Biber.pm:371> INFO - Reading 'TESTFORUM.bcf'
[153] Biber.pm:886> INFO - Using all citekeys in bib section 0
[168] Biber.pm:4093> INFO - Processing section 0
[183] Biber.pm:4254> INFO - Looking for bibtex format file 'Literatur_test.bib' for section 0
[187] bibtex.pm:1523> INFO - LaTeX decoding ...
[196] bibtex.pm:1340> INFO - Found BibTeX data source 'Literatur_test.bib'
[217] UCollate.pm:68> INFO - Overriding locale 'de-DE' defaults 'normalization = NFD' with 'normalization = prenormalized'
[217] UCollate.pm:68> INFO - Overriding locale 'de-DE' defaults 'variable = shifted' with 'variable = non-ignorable'
[217] Biber.pm:3921> INFO - Sorting list 'nyt/global//global/global' of type 'entry' with template 'nyt' and locale 'de-DE'
[218] Biber.pm:3927> INFO - No sort tailoring available for locale 'de-DE'
[220] bbl.pm:636> INFO - Writing 'TESTFORUM.bbl' with encoding 'UTF-8'
[221] bbl.pm:739> INFO - Output to TESTFORUM.bbl

Ansonsten konnte ich auch nur noch Folgendes als evtl. kritisch entdecken, wobei ich eher nicht davon ausgehe:


]
chapter without number
[2

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Fange mal mit dieser Datei an:
\documentclass{book}
\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}
\begin{document}
\nocite{*}
abc
\printbibliography
\end{document}

GiFi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 15. Jun 2019, 20:13

Beitrag von GiFi »

Da kommen 84 Bücherangaben und 9 Seiten.

Ich habe den Fehler aber endlich tatsächlich gefunden - ich hatte es nicht so verstanden, als wäre das ein Problem, nur "bessere Form":

Sobald ich \markboth, \markright und \section herausnehme, erscheint mein Literaturverzeichnis.

Nun habe ich damit aber leider ein anderes Problem. Ich habe diese Einteilung (mit Zeilen- und Randabstand etc.) nun überall verwendet...

GiFi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 15. Jun 2019, 20:13

Beitrag von GiFi »

Nachdem ich nun alle Dateien auch in der "großen" Datei gelöscht habe, erscheint endlich mein Literaturverzeichnis.

Nun ist noch das Problem, dass die Titel nicht so gestaltet sind, wie die Anderen und das die Aufzählung ganz seltsam erfolgt:

(siehe Anhang)
Dateianhänge
NEU.JPG
NEU.JPG (30.47 KiB) 2959 mal betrachtet

Gast

Beitrag von Gast »

Kann ich nicht nachvollziehen. In
\documentclass[
  paper=A4,
  pagesize,
  10pt,
  DIV=10,
  BCOR=1cm,
  headinclude,
  bibliography=totoc,
  index=totoc,
  openany
]{scrbook}
\usepackage[english,ngerman]{babel}

\usepackage[style=authoryear, backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson}
\newpage
\markboth{Literaturverzeichnis}{Literaturverzeichnis}
\markright{Literaturverzeichnis}
\section{Literaturverzeichnis}
\printbibliography
\end{document}
Ist das Literaturverzeichnis da. Es ist nur auf einer neuen Seite hinter der Seite mit der \section{Literaturverzeichnis}, da in book-artigen Klassen die Überschrift des Literaturverzeichnisses standardmäßig als \chapter* gesetzt wird und damit eine neue Seite anfängt.

Mit KOMA-Mitteln würde man das in etwa so machen
\documentclass[
  paper=A4,
  pagesize,
  10pt,
  DIV=10,
  BCOR=1cm,
  headinclude,
  bibliography=leveldown,
  bibliography=numbered,
  index=totoc,
  openany
]{scrbook}
\usepackage[english,ngerman]{babel}

\usepackage[style=authoryear, backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson}

\printbibliography
\end{document}
mit biblatex-Mitteln so:
\documentclass[
  paper=A4,
  pagesize,
  10pt,
  DIV=10,
  BCOR=1cm,
  headinclude,
  index=totoc,
  openany
]{scrbook}
\usepackage[english,ngerman]{babel}

\usepackage[style=authoryear, backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson}

\printbibliography[heading=subbibnumbered]
\end{document}
Bei aktuellen Versionen von KOMA-Script und biblatex sind die beiden Optionen äquivalent. Bei älteren Versionen oder anderen Klassen tut eventuell nur eine von beiden Optionen das Gewünschte.

GiFi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 15. Jun 2019, 20:13

Beitrag von GiFi »

Super, vielen Dank! Das mit subbibnumbered funktioniert.

Alles letztes Problem ist nun nur noch, dass die Schriftgröße meine ich etwas größer ist, als bei den gewöhnlichen Überschriften und wie kann ich das standardmäßige "Literatur" in "Literaturverzeichnis" umändern?

Gast

Beitrag von Gast »

Die Schriftgröße sollte dieselbe sein wie bei allen anderen \section-Überschriften. Wenn nicht: bitte Minimalbeispiel, das das eindeutig reproduziert.

"Literaturverzeichnis" statt "Literatur" gibt es mit
\DefineBibliographyStrings{german}{%
  bibliography = {Literaturverzeichnis},
  references   = {Literaturverzeichnis},
}
in der Präambel oder mit
\printbibliography[title=Literaturverzeichnis]

Antworten