Nur noch Frust mit LaTex. Zu kompliziert mit dem Literaturverzeichnis

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


voll-LaTex-Neuling
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: So 21. Mär 2021, 22:35

Nur noch Frust mit LaTex. Zu kompliziert mit dem Literaturverzeichnis

Beitrag von voll-LaTex-Neuling »

Hallo liebes Forum,

ich bin absoluter LaTex-Neuling und inzwischen mehr genervt und entschlossen es wieder zu deinstallieren, als das mich irgendwelche Vorteile bisher überzeugen konnten. Dennoch möchte ich den letzten Versuch wagen und dem Ganzen eine letzte Chance geben und die Profis gucken lassen. In diesem Forum habe ich auch schon so einiges gelesen und versucht bei mir umzusetzen. Auch die ganzen Einsteigertipps und co. habe ich durch. Also bitte die nicht mehr als Affektantwort erstmal wieder ranholen.
Ich benutze Linux Mint, 5.4.0-65-generic
TeXstudio 2.12.22 (Build: 2.12.22+debian-1build1)
Nutze Qt-Version 5.12.8, kompiliert mit Qt 5.12.5 R

Seit gut 3 Tagen à 15 Stunden versuche ich nun irgendwie ein Literaturverzeichnis im Dokuement zu etablieren. Ich brauche Bücher und Links von Webseiten.

Minimalauszug aus der Tex Datei

% Globale Einstellungen
\documentclass[12pt,a4paper,ngerman]{scrreport} %Wählen für Studienarbeit
%\documentclass[12pt,a4paper,onside,ngerman]{scrartcl} %Wählen kurzfristig für Strukturierung des Inhaltsverzeichnisses
%\usepackage[all]{hypcap}  %Springen zu Gleitobjekten möglich
\usepackage{geometry} %Seitenränder
\usepackage{setspace} %Zeilenabstand
\usepackage{caption}
\usepackage{scrlayer-scrpage} %Für Kopfzeile
\pagestyle{scrheadings} %Für Kopfzeile
\geometry{a4paper, top = 25mm, bottom = 20mm, left = 30mm, right = 40mm, head = 42pt}

% Sprache und Schrift
\usepackage[ngerman]{babel} %Neue deutsche Rechtschreibung und Umlaute
\usepackage[T1]{fontenc} %Fontencoding?!
\usepackage[T1]{fontenc}

% Bilder im Dokument benutzen
\usepackage{graphicx} %Bilder einfügen können

% Tabellen im Dokument benutzen
%\usepackage{tabulary} %Tabellen

% Mathematik im Dokument benutzen
%\usepackage{amsmath} %Mathe
%\usepackage{amssymb} %Mathematische Symbole

% Literaturangaben und -verwaltung
%\usepackage{multibib}
%\usepackage{hyperref}
\usepackage[backend=biber, style=alphabetic,]{biblatex} %Literaturverwaltung benötig
\addbibresource{Literaturdatenbank.bib} %Dateiname der gesammelten Literatur (gleiches Verzeichnis)

\begin{document}
	\chapter{Hauptteil 25-30 Seiten}
		\section{IST-Analyse der Netzwerkumgebung}
		Text..."FTTH" \cite{DTGlasfaser}
		Anderes FTTH\cite*{DTGlasfaser}

\printbibliography
\end{document}

Wenn ich diese mit dem Doppelpfeil (zweimal) ausführe, dann erhalte ich folgende Meldung:

INFO - This is Biber 2.14 (beta)
INFO - Logfile is 'Belegarbeit Unternehmensumstellung zu Home-Office.blg'
INFO - Reading 'Belegarbeit Unternehmensumstellung zu Home-Office.bcf'
INFO - Found 1 citekeys in bib section 0
INFO - Processing section 0
INFO - Globbing data source 'Literaturdatenbank.bib'
INFO - Globbed data source 'Literaturdatenbank.bib' to Literaturdatenbank.bib
INFO - Looking for bibtex format file 'Literaturdatenbank.bib' for section 0
INFO - LaTeX decoding ...
INFO - Found BibTeX data source 'Literaturdatenbank.bib'
WARN - BibTeX subsystem: /tmp/biber_tmp_x97P/Literaturdatenbank.bib_234812.utf8, line 3, warning: 14 characters of junk seen at toplevel
ERROR - BibTeX subsystem: /tmp/biber_tmp_x97P/Literaturdatenbank.bib_234812.utf8, line 10, syntax error: found "file", expected end of entry ("}" or ")") (skipping to next "@")
INFO - WARNINGS: 1
INFO - ERRORS: 1

Prozess endete mit Fehler(n)

Schaue ich im Terminal nach, gibt es den keinen Ordner namens /tmp/biber...

Und bei log steht

Zeile 126		Citation 'DTGlasfaser' on page 7 undefined
Zeile 127		Citation 'DTGlasfaser' on page 7 undefined
Zeile 271		Empty bibliography

Ich komme einfach auf keine Lösung, was mit diesem undefined gemeint sein soll, ich habe anfangs JabRef zum erstellen genommen und den Internetlink als MISC angelegt. Später hatte ich bei der Hochschuldoku die hier irgendwo verlinkt ist, dass das nicht MISC heißen soll sondern online. Das hatte ich dann mit TexStudio abgeändert.

Hier noch die .bib Datei

Encoding: UTF-8

@online{DTGlasfaser,
  author = {Deutsche Telekom},
  title  = {Glasfaser: Internet im Gigabit-Bereich},
  month  = mar,
  year   = {},
  url    = {https://www.telekom.com/de/konzern/deta ... eed-605388},
  urldate = {}
  file   = {Die Anschlussvarianten der Telekom:DTGlasfaser - SCHNELL, SCHNELLER, GLASFASER_Die Anschlussvarianten der Telekom.jpg:JPG-Bild},
  organization  = {Deutsche Telekom},
  language = {deutschl},
}

Und die .blg Datei

[0] Config.pm:304> INFO - This is Biber 2.14 (beta)
[0] Config.pm:307> INFO - Logfile is 'Belegarbeit Unternehmensumstellung zu Home-Office.blg'
[64] biber:322> INFO - === So Mär 21, 2021, 22:56:49
[79] Biber.pm:415> INFO - Reading 'Belegarbeit Unternehmensumstellung zu Home-Office.bcf'
[135] Biber.pm:943> INFO - Found 1 citekeys in bib section 0
[148] Biber.pm:4256> INFO - Processing section 0
[148] Utils.pm:75> INFO - Globbing data source 'Literaturdatenbank.bib'
[148] Utils.pm:91> INFO - Globbed data source 'Literaturdatenbank.bib' to Literaturdatenbank.bib
[158] Biber.pm:4455> INFO - Looking for bibtex format file 'Literaturdatenbank.bib' for section 0
[158] bibtex.pm:1653> INFO - LaTeX decoding ...
[160] bibtex.pm:1471> INFO - Found BibTeX data source 'Literaturdatenbank.bib'
[179] Utils.pm:293> WARN - BibTeX subsystem: /tmp/biber_tmp_x97P/Literaturdatenbank.bib_234812.utf8, line 3, warning: 14 characters of junk seen at toplevel
[179] Utils.pm:309> ERROR - BibTeX subsystem: /tmp/biber_tmp_x97P/Literaturdatenbank.bib_234812.utf8, line 10, syntax error: found "file", expected end of entry ("}" or ")") (skipping to next "@")
[179] Biber.pm:128> INFO - WARNINGS: 1
[179] Biber.pm:132> INFO - ERRORS: 1

Ich kann nicht nachvollziehen, wieso das alles so mega kompliziert gemacht sein muss. Da sucht man sich doch ewig dumm und dusselig wenn man nicht schon 50 Jahre Nutzererfahrung. Wie bekommt man denn in LaTex einigermaßen vernünftig die Fehlermeldungen beseitigt? Selbst mit Paint kann ich schneller Pixel für Pixel arbeiten und das ist sicherlich nicht das, was die Erfinder von LaTex im Sinn hatten.
Danke schon Mal für die Hilfestellung und entschuldigung schon jetzt für die bestimmt 2 oder 3 grauen Haare die ich bei euch Antwortgebenden verursachen werde.

Gruß LaTex-Volldepp oder wie ich mich hier nannte :D


Gast.

Beitrag von Gast. »

In der bib-Datei fehlt bei urldate das Komma am Ende.

Du lädst fontenc zweimal.


voll-LaTex-Neuling
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: So 21. Mär 2021, 22:35

Re: Nur noch Frust mit LaTex. Zu kompliziert mit dem Literaturverzeichnis

Beitrag von voll-LaTex-Neuling »

Gast, Du solltest dich als Gott registrieren ! Das fehlende Komma war der Knackpunkt.
Wie um himmels willen hast Du den Fehler denn finden können? Aus den Fehlermeldungen doch sicherlich nicht. Wie löst man LaTex Probleme ohne Tage Zeit investieren zu müssen?

Fontec ist behoben, habe noch nicht ganz aufgeräumt gehabt. Danke dafür.


Gast.

Beitrag von Gast. »

Erfahrung: Die Meldung von Biber deutet auf einen nicht richtig zusammengebauten Eintrag hin.


voll-LaTex-Neuling
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: So 21. Mär 2021, 22:35

Re: Nur noch Frust mit LaTex. Zu kompliziert mit dem Literaturverzeichnis

Beitrag von voll-LaTex-Neuling »

Jetzt, wo ich an dieser Stelle ein bisschen weiter gekommen bin, fällt mir die nächste Unstimmigkeit auf.
Die Hochschule hat vorgegeben, dass wir Internetquellen angeben dürfen, diese aber bei der Literatur wie ein Sammelband angeben sollen. Nun wusste ich ehrlich gesagt gar nicht so recht, was damit gemeint ist und bin zu dem Entschluss gekommen, dass ein Lexikon gemeint ist, wie Brockhaus damals. Die Übersetzung ins Englische brachte mich dann auf collection, welche hier: https://mirror.informatik.hs-fulda.de/t ... buch.pdf#9 auch auftauchte. Dementsprechend habe ich die .bib Datei angepasst:

@collection{DTGlasfaser,
	editor	= {Deutsche Telekom},
	title  = {Glasfaser: Internet im Gigabit-Bereich},
	year   = {2021},
	month  = {mar},
	language = {deutsch},
	url    = {https://www.telekom.com/de/konzern/deta ... eed-605388},
	urldate = {20.03.2021},

Aus den Hinweisen der Hochschule heraus, ergibt sich für die Darstellung des "Sammelbandes" die Formatierung:
(Verfasser [Nachname, Vorname]) (Überschrift des Artikels im Internet), in:(Internet URL)(Hrsg.)(Buchname):(Irgend eine andere Angabe, noch nicht verstanden welche), (Irgend ein Name, nicht verstanden welcher), (S.12-18)

Nun habe ich aber auch in der .bib das URL Datum angelegt, dass habe ich oft gelesen, dass es mit dazu gehört. Das wird bei mir nicht angezeigt. Ist collection doch die falsche Wahl?

Und in der Fußzeile ist auch nichts von der URL zu sehen. Das habe ich doch richtig verstanden das es IMMER in der Fußzeile und im Literaturverzeichnis auftaucht, oder ist es doch anders?


Gast.

Beitrag von Gast. »

voll-LaTex-Neuling hat geschrieben:
Mo 22. Mär 2021, 02:02

Nun habe ich aber auch in der .bib das URL Datum angelegt, dass habe ich oft gelesen, dass es mit dazu gehört. Das wird bei mir nicht angezeigt.

In der blg-Datei müsste stehen:

WARN - Entry 'DTGlasfaser' (Literaturdatenbank.bib): Invalid format '20.03.2021' of date field 'urldate' - ignoring

Die Meldung dürfte selbsterklärend sein.


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

Re: Nur noch Frust mit LaTex. Zu kompliziert mit dem Literaturverzeichnis

Beitrag von MoeWe »

Die Sache mit dem etwas anderen Dateinamen in der Fehlermeldung ist ärgerlich, liegt aber daran, dass Biber eine Arbeitskopie Deiner .bib-Datei in einem temporären Verzeichnis speichert, um die Dateicodierung und ähnliche Dinge leichter ändern zu können.

Mit etwas gutem Willen kann man aber erkennen, dass in

[179] Utils.pm:293> WARN - BibTeX subsystem: /tmp/biber_tmp_x97P/Literaturdatenbank.bib_234812.utf8, line 3, warning: 14 characters of junk seen at toplevel
[179] Utils.pm:309> ERROR - BibTeX subsystem: /tmp/biber_tmp_x97P/Literaturdatenbank.bib_234812.utf8, line 10, syntax error: found "file", expected end of entry ("}" or ")") (skipping to next "@")

einfach nur Zeile 3 und 10 Deiner Literaturdatenbank.bib gemeint sind.

Diese beiden Zeilen sind dann auch gleich die interessanten Meldungen von Biber, da sie die einzigen Warnungen (WARN) und Fehler (ERROR) sind.

Ignorieren wir zunächst die Warnung in Zeile 3 (die von dem Encoding: UTF-8 in Zeile 1 kommt) und sehen uns den Fehler an. Mit verkürztem Dateinamen steht da

[179] Utils.pm:309> ERROR - BibTeX subsystem: Literaturdatenbank.bib, line 10, syntax error: found "file", expected end of entry ("}" or ")") (skipping to next "@")

Eine Faustregel in TeX und auch verwandten Dingen ist, dass Fehler nicht unbedingt immer genau dort gemeldet werden, wo das eigentliche Problem liegt. Manchmal manifestieren sich Fehler erst später. Es ist also immer eine gute Idee, auch mal ein paar Zeilen weiter nach oben (und zur Sicherheit auch nach unten) zu sehen.

Was sagt Biber uns hier also: Er dachte, der Eintrag DTGlasfaser wäre in Zeile 10 zu Ende. Stattdessen steht da jetzt file = {...},. Warum dachte Biber, dass der Eintrag zu Ende ist? Nun, nach jedem Feld in der .bib-Datei muss man ein Komma setzen. Nur nach dem letzten Feld in einem Eintrag ist das Komma optional: Nach urldate = {} steht kein Komma, also sollte der Eintrag dort zu Ende sein. Aber dann kommt file = {...},. Die Lösung ist also genau was schon erklärt wurde, es muss ein Komma her.

Wobei man leere Felder eigentlich auch ganz weglassen kann. Hier scheint es mir sinnvoll, das Abrufdatum azugeben (ich nehme das heutige Datum; date-Felder werden bei biblatex unabhängig von der gewünschten Ausgabe immer im ISO8601-Format, also YYYY-MM-DD-Format, befüllt). Das Feld year sollte nicht leer bleiben, wenn Du bei month etwas angibst. (Wie kannst Du den Monat der Veröffentlichung aber nicht das Jahr wissen?) Auf der Seite selbst habe ich keinen Hinweis auf das Veröffentlichungsdatum gefunden, im Quellcode steht 2020-08-11. Das klingt zumindest nicht umplausibel. Ob Du Dich darauf verlassen willst, musst Du wissen.

Wichtig außerdem: Namen, die keine Person bezeichnen, aber ein Leerzeichen beinhalten, sollten mit zusätzlichen geschweiften Klammern versehen werden, da Biber/BibTeX sonst versucht, sie als Personennamen mit Vorname und Nachname zu verstehen, was keine guten Resultate liefert: https://tex.stackexchange.com/q/10808/35864

Das lannguage-Feld ist in den seltensten Fällen wirklich sinnvoll. Wenn es genutzt wird, sollte es aber mit dem englischen Sprachnamen gefüllt werden (optional mit dem Präfix lang), also german.

Ich halte es ferner für wenig sinnvoll, bei organization auch "Deutsche Telekom" zu schreiben, wenn es schon im author-Feld steht. Die Dopplung ist unnütz.

@online{DTGlasfaser,
  author    = {{Deutsche Telekom}},
  title     = {Glasfaser: Internet im Gigabit-Bereich},
  date      = {2020-08-11},
  url       = {https://www.telekom.com/de/konzern/deta ... eed-605388},
  urldate   = {2021-03-22},
  file      = {Die Anschlussvarianten der Telekom:DTGlasfaser - SCHNELL, SCHNELLER, GLASFASER_Die Anschlussvarianten der Telekom.jpg:JPG-Bild},
  language  = {german},
}

Meiner Meinung nach ist es nicht zwingend sinnvoll, eine Onlinequelle wie einen Eintrag in einem Sammelband zu setzen. Wenn das aber von der Hochschule verlangt wird und Du nicht so viel Spielraum hast, dann kannst Du es natürlich so machen.

Beachte dabei aber, dass @collection der Eintragstyp für einen gesamten Sammeldband ist; einen Eintrag in so einem Sammelband bezeichnet man mit @incollection. Die Frage ist jetzt nur, was sich die Uni da vorstellt.

@incollection{DTGlasfaser,
  author    = {{Deutsche Telekom}},
  title     = {Glasfaser: Internet im Gigabit-Bereich},
  date      = {2020-08-11},
  url       = {https://www.telekom.com/de/konzern/deta ... eed-605388},
  urldate   = {2021-03-22},
  editor    = {{Deutsche Telekom}},
  booktitle = {Internetseite der Telekom},
  file      = {Die Anschlussvarianten der Telekom:DTGlasfaser - SCHNELL, SCHNELLER, GLASFASER_Die Anschlussvarianten der Telekom.jpg:JPG-Bild},
  language  = {german},
}

ist doch Quatsch.

Wobei man darüber nachdenken könnte hier @inbook zu nehmen, da Verfasser der Unterseite und der gesamten Seite übereinstimmen

@inbook{DTGlasfaser,
  author    = {{Deutsche Telekom}},
  title     = {Glasfaser: Internet im Gigabit-Bereich},
  date      = {2020-08-11},
  url       = {https://www.telekom.com/de/konzern/deta ... eed-605388},
  urldate   = {2021-03-22},
  booktitle = {Internetseite der Telekom},
  file      = {Die Anschlussvarianten der Telekom:DTGlasfaser - SCHNELL, SCHNELLER, GLASFASER_Die Anschlussvarianten der Telekom.jpg:JPG-Bild},
  language  = {german},
}

Viel besser wirds dadurch aber auch nicht.


Ob die URL in einer Fußnote auftaucht, hängt sehr vom verwendeten Stil und vom Zitierbefehl ab. Mit style=alphabetic, bekommst Du alphanumerische Zitatkürzel, die aus Autornamen und Publikationsjahr bestehen. Standardmäßig gibt das einfach nur Zitat der Form [SR98] direkt im Fließtext. Da sind also gar keine Fußnoten. Die Quellen werden erst am Ende im Literaturverzeichnis aufgeschlüsselt.

Es gibt fußnotenbasierte Stile wie style=verbose, die bei einem Erstzitat einfach den gesamten Literaturverzeichniseintrag in die Fußnote schreiben und danach verkürzt mit Autor und Titel zitieren. Es gibt bei den meisten Stilen auch die Möglichkeit, mit \fullcite oder \footfullcite ein Vollzitat zu erzwingen. Was für Dich das beste Vorgehen ist, hängt von Deinen Vorgaben ab. Generell würde ich davon abraten, Zitierstile zu mischen und bestimmte Dinge in Fußnoten und andere in den Text zu wurschteln. Aber mir ist bewusst, dass es Vorgaben und manchmal auch persönliche Präferenzen gibt, bestimmte Quelltypen (insbesondere Internetquellen) gesondert zu behandeln.


voll-LaTex-Neuling
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: So 21. Mär 2021, 22:35

Re:

Beitrag von voll-LaTex-Neuling »

Gast. hat geschrieben:
Mo 22. Mär 2021, 02:52
voll-LaTex-Neuling hat geschrieben:
Mo 22. Mär 2021, 02:02

Nun habe ich aber auch in der .bib das URL Datum angelegt, dass habe ich oft gelesen, dass es mit dazu gehört. Das wird bei mir nicht angezeigt.

In der blg-Datei müsste stehen:

WARN - Entry 'DTGlasfaser' (Literaturdatenbank.bib): Invalid format '20.03.2021' of date field 'urldate' - ignoring

Die Meldung dürfte selbsterklärend sein.

Nein, diese Meldung kam bei mir nicht. Dafür habe ich die Empfehlung gesehen, dass ich das Paket csquotes mit laden soll. Was das ist und wie es beim darstellen hilft weiss ich nicht. Jedenfalls erhalte ich jetzt neue Fehlermeldungen:

Package biblatex Warning: Biber reported the following issues
(biblatex)                with 'DTGlasfaser':
(biblatex)                - Entry 'DTGlasfaser' (Literaturdatenbank.bib): Inval
id format '20.03.2021' of date field 'urldate' - ignoring.


Package biblatex Warning: The following entry could not be found
(biblatex)                in the database:
(biblatex)                z
(biblatex)                Please verify the spelling and rerun
(biblatex)                LaTeX afterwards.

Eine Internetrecherche brachte mich dann auf diese Erkenntnis: urldate = {yyyy-mm-dd}
Und die hat bei mir funktioniert. Nun steht auch "besucht am 20.03.2021" mit im Literaturverzeichnis. Ich freue mich :)


voll-LaTex-Neuling
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: So 21. Mär 2021, 22:35

Re: Nur noch Frust mit LaTex. Zu kompliziert mit dem Literaturverzeichnis

Beitrag von voll-LaTex-Neuling »

Danke MoeWe, großer Einsatz.

Ich habe dein Hinweis mit incollection wahr genommen. Klingt auch irgendwie richtig und habe die .bib Datei angepasst.

Encoding: UTF-8

@incollection{DTGlasfaser,
	author	= {Deutsche Telekom},
	title  = {Glasfaser: Internet im Gigabit-Bereich},
	booktitle = {telekom.com},
	year   = {2020},
	month  = {08},
	url    = {https://www.telekom.com/de/konzern/deta ... eed-605388},
	urldate = {2021-03-20},
}

Ich habe nun gar kein Literaturverzeichnis mehr. Jetzt meckert er wieder herum, wie am Anfang.

		\cite{DTGlasfaser}

Citation 'DTGlasfaser' on page 7 undefined

Dabei habe ich alle Muss und Kann Einträge, die erwartet werden aufgeführt, die relevant sind. Die Einträge sind in geschweiften Klammern und die Zeile schließt mit einem Komma ab. Das urldate ist auch im richtigen Format. Was gibt es denn da jetzt noch zum herum zicken?


voll-LaTex-Neuling
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: So 21. Mär 2021, 22:35

Re: Nur noch Frust mit LaTex. Zu kompliziert mit dem Literaturverzeichnis

Beitrag von voll-LaTex-Neuling »

Ok, habe selbst noch Unstimmigkeiten gefunden nach dem ich die .bib noch einmal mit deinen Einträgen verglichen habe.

  • Den Author hattest Du in doppelten geschweiften Klammern. Wieso muss das so?
  • year und month habe ich ersetzt durch date. Datum habe ich auch im Quelltext gefunden und würde dem vertrauen, ja.

Und siehe da, nun habe ich wieder ein Literaturverzeichnis. Ich vertraue jetzt einfach Mal darauf, dass es jetzt so passt. Ich kann mich schließlich nicht ewig daran aufhalten.


Antworten