BibLatex für Anfängerinnen

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


IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

BibLatex für Anfängerinnen

Beitrag von IrenaSekuta »

Hallo zusammen,

nachdem ich nun mit bibtex weiß, wie ich ein Literaturverzeichnis erstelle und es auch in mein Dokument einbinde, habe ich mich an Biblatex gewagt. Anbei mein Minimalbeispiel (hierbei ist Lit.bib der Name meiner Bibtex-Datei; die Latex-Datei heißt Literatur.tex):
\documentclass[open = right,
               parskip = half,
               toc=listof
               ]{scrreprt}
               
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{biblatex}

\begin{document}

\title{Literaturverzeichnis mit BibLaTeX}
\author{Irena Sekuta}
\date{Today}
\maketitle

%Inhaltsverzeichnis
\tableofcontents

\chapter{Kapitel 1}
Hier soll nun eine Referenz auf ein Zitat erscheinen \cite{mu01}.

\bibliography{Lit}
\end{document}
Naja, das Literaturverzeichnis wird natürlich nicht erzeugt. Da ich hier gelernt habe, bei Problemen zuerst in die Logdatei zu schauen, meine ich das Problem erkannt zu haben. Hier der Auszug aus meiner Log-Datei:
Kapitel 1.
REQ:2:bibtex:
binary=bibtex
infile=Literatur
:REQ
REQ:1:latex:REQ

LaTeX Warning: Citation 'mu01' on page 3 undefined on input line 22.


Package biblatex Warning: '\bibliography' must be given in preamble.
(biblatex) Ignoring command on input line 24.

[3


] (Literatur.aux)

LaTeX Warning: There were undefined references.


Package biblatex Warning: Please (re)run BibTeX on the file(s):
(biblatex) Literatur.aux
(biblatex) and rerun LaTeX afterwards.
Zunächst einmal verstehe ich nicht, was hiermit gemeint ist:

Package biblatex Warning: '\bibliography' must be given in preamble.
(biblatex) Ignoring command on input line 24.
Sollten dem einen oder anderen die Informationen hier nicht genügen, poste ich bei Bedarf auch mehr Auszüge aus der Log-Datei.
Auch den letzten Hinweis in obigem Auszug habe ich beherzigt, mit folgendem Ergebnis:
This is BibTeX, Version 0.99cThe top-level auxiliary file: Literatur.aux
The style file: biblatex.bst
I found no \bibdata command---while reading file Literatur.aux
Warning--I didn't find a database entry for "mu01"
Biblatex version: 0.8b
(There was 1 error message)
Gruß,

Irena

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

WARNUNG: Dieser Beitrag ist kein Kochrezept, sondern erklärt Hintergründe. Dieser Beitrag ist ausschließlich für Leser gedacht, die daran interessiert sind zu verstehen, was passiert. Wer sich selbst nicht zu dieser Gruppe zählt, sollte den Rest dieses Beitrags nicht lesen!

Die Präambel (engl. preamble) eines LaTeX-Dokuments ist der Teil vor \begin{document}. Mit diesem Wissen ist nun auch klar, was die Warnung von biblatex bezüglich \bibliography meint. Die Anweisung aus Zeile 24 muss vor \begin{document} verschoben werden.

Da biblatex in der Warnung darauf hinweist, dass es die Anweisung an der aktuellen Position ignoriert, also nicht ausführt, ist auch zu verstehen, dass es kein Literaturverzeichnis wie gewünscht gibt. Dazu muss man nur noch wissen, dass \bibliography unter anderem die Anweisung \bibdata in die aux-Datei schreibt und BibTeX daraus die Information gewinnt, welche bib-Datei zu verarbeiten ist. Deshalb auch die Meldung von BibTeX über die fehlende \bibdata-Anweisung. Ohne zu verarbeitende bib-Datei findet es natürlich auch die "database entries" nicht.

So fügt sich also eines zum anderen.

IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

Beitrag von IrenaSekuta »

Hallo KOMA,

vielen Dank für die Erklärung.

Du schreibst:
Die Präambel (engl. preamble) eines LaTeX-Dokuments ist der Teil vor \begin{document}. Mit diesem Wissen ist nun auch klar, was die Warnung von biblatex bezüglich \bibliography meint. Die Anweisung aus Zeile 24 muss vor \begin{document} verschoben werden.
Ich gebe zu, dass ich im Nachhinein schon wusste, was die Präambel eines Latex-Dokumentes ist, ich jedoch nicht auf die Idee kam, dieses Wissen konsequent zu nutzen, da ich vorher mit Bibtex arbeitete und es dort anders war. So lässt sich zumindest erahnen, wie es kommen kann, dass Fehlermeldungen nicht verstanden werden.

Ferner führst Du aus:
Dazu muss man nur noch wissen, dass \bibliography unter anderem die Anweisung \bibdata in die aux-Datei schreibt und BibTeX daraus die Information gewinnt, welche bib-Datei zu verarbeiten ist. Deshalb auch die Meldung von BibTeX über die fehlende \bibdata-Anweisung.
Du hast sicherlich recht, aber dieses "...dazu muss man [...] wissen..." ist auf Dauer frustrieren, da ich nicht weiß, wo ich denn dieses Wissen erwerben kann. Da in der Dokumentation kein einziges Minimalbeispiel vorhanden ist an dem frau sich orierntieren kann, wie Biblatex zu verwenden ist, ist es eben sehr schwer, sich das von Dir angesprochene Wissen zu erwerben.

Leider bin ich keine Entwicklerin von Latex, so wie Du es offenkundig bist, sodass ich eben schlicht und ergreifend (Minimal)beispiele benötige, um ein Vorhaben umzusetzen, da mir dieses "..dazu muss man [...] wissen..." eben schlicht und ergreifend fehlt.

Zum anderen bin ich "nur" eine Userin, d.h. ich nutze Latex lediglich als Mittel zum Zweck, genauso wie ich ein Auto benutze um von Punkt A nach Punkt B zu gelangen, ohne genau wissen und verstehen zu können, wie das Auto in seinen Einzelheiten genau funktioniert. Aus diesem Grund würde ich mir bei den Dokumentationen etwas mehr "Userfreudlichkeit" wünschen, d.h. mehr Beispiele an denen frau sich entlanghangeln könnte.

Hoffend, dass Du dich durch meinen Beitrag nicht wieder verletzt fühlst, danke ich Dir für deine fundierten Erklärungen. Dank deinen Beiträgen wie auch denen anderer User verstehe ich zwar immer noch nicht genau, was unter der Motorhaube von Latex passiert, jedoch komme ich immer sicherer von Punkt A nach B auch wenn ich dabei ab und an den einen wie auch anderen erkenntnisreichen Umweg benötige.

Wünsche noch einen schönen Tag!

Gruß,

Irena

Benutzeravatar
domwass
TeX-Entwickler
TeX-Entwickler
Beiträge: 617
Registriert: Di 26. Aug 2008, 12:44
Kontaktdaten:

Beitrag von domwass »

IrenaSekuta hat geschrieben:Du hast sicherlich recht, aber dieses "...dazu muss man [...] wissen..." ist auf Dauer frustrieren, da ich nicht weiß, wo ich denn dieses Wissen erwerben kann.
Hier zum Beispiel... Im Ernst: das meiste habe ich durch Anwendung gelernt und dadurch, dass ich in Newsgroups mitgelesen habe. Mit der Zeit lernt man die Zusammenhänge besser verstehen.
Leider bin ich keine Entwicklerin von Latex, so wie Du es offenkundig bist, sodass ich eben schlicht und ergreifend (Minimal)beispiele benötige, um ein Vorhaben umzusetzen, da mir dieses "..dazu muss man [...] wissen..." eben schlicht und ergreifend fehlt.

Zum anderen bin ich "nur" eine Userin, d.h. ich nutze Latex lediglich als Mittel zum Zweck, genauso wie ich ein Auto benutze um von Punkt A nach Punkt B zu gelangen, ohne genau wissen und verstehen zu können, wie das Auto in seinen Einzelheiten genau funktioniert.
Ich bin auch kein Entwickler (im Gegensatz zu Markus), sondern nur ein Anwender. Und ich verstehe auch oft nicht, wie die Zusammenhänge 'unter der Haube' genau sind -- ich hätte dein Problem zum Beispiel nicht so kleinschrittig und eindeutig erklären können wie Markus. Aber, um bei deiner Fehlermeldung zu bleiben, was eine Präambel ist, weiß man als LaTeX-Anwender sehr schnell, so dass man in diesem Fall recht leicht auf die Lösung kommen kann, ohne genau zu wissen, wie die Programme im Einzelnen interagieren.
Aus diesem Grund würde ich mir bei den Dokumentationen etwas mehr "Userfreudlichkeit" wünschen, d.h. mehr Beispiele an denen frau sich entlanghangeln könnte.
Schau mal in den Ordner $LOCALTEXMF/doc/latex/biblatex/examples, dort findest du zu jedem biblatex-Stil ein Beispiel als .tex- und .pdf-Datei.

Gruß,
Dominik.-

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Mein »dazu muss man wissen« bezieht sich auf den Satz davor, ist also im Sinn von »um das zu verstehen, muss man noch wissen« zu verstehen.

phi
Moderator
Moderator
Beiträge: 420
Registriert: Fr 6. Feb 2009, 21:28

Beitrag von phi »

IrenaSekuta hat geschrieben:
Dazu muss man nur noch wissen, dass \bibliography unter anderem die Anweisung \bibdata in die aux-Datei schreibt und BibTeX daraus die Information gewinnt, welche bib-Datei zu verarbeiten ist. Deshalb auch die Meldung von BibTeX über die fehlende \bibdata-Anweisung.
Du hast sicherlich recht, aber dieses "...dazu muss man [...] wissen..." ist auf Dauer frustrieren, da ich nicht weiß, wo ich denn dieses Wissen erwerben kann.
Markus hat wohl eher nicht gemeint, dass man unbedingt über den \bibdata-Befehl Bescheid wissen muss, um biblatex zu verwenden. Er wollte nur erklären, wodurch die BibTeX-Fehlermeldung zustande kommt. \bibdata ist übrigens in der biblatex-Dokumentation, Abschnitt 4.1, durchaus beschrieben.
IrenaSekuta hat geschrieben:Da in der Dokumentation kein einziges Minimalbeispiel vorhanden ist an dem frau sich orierntieren kann, wie Biblatex zu verwenden ist, ist es eben sehr schwer, sich das von Dir angesprochene Wissen zu erwerben.
Die Minimalbeispiele sind vorhanden, nur leider ziemlich verstreut. Einige Beispiele sind in den Abschnitten 3.10 und 4.1 zu finden.
IrenaSekuta hat geschrieben:Zum anderen bin ich "nur" eine Userin, d.h. ich nutze Latex lediglich als Mittel zum Zweck, genauso wie ich ein Auto benutze um von Punkt A nach Punkt B zu gelangen, ohne genau wissen und verstehen zu können, wie das Auto in seinen Einzelheiten genau funktioniert. Aus diesem Grund würde ich mir bei den Dokumentationen etwas mehr "Userfreudlichkeit" wünschen, d.h. mehr Beispiele an denen frau sich entlanghangeln könnte.
Das ist durchaus wünschenswert. Dass so wenige Beispiele vorhanden sind, ist wahrscheinlich einerseits dem generellen Stil von Philipp Lehman, andererseits dem Betastatus von biblatex geschuldet.

IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

Beitrag von IrenaSekuta »

Hallo zusammen,

ich möchte es noch einmal deutlich machen, damit keine Missverständnisse entstehen:

Mir ist durchaus die Energie bewusst, die Autoren in die Entwicklung ihrer Pakete inverstieren ohne dafür einen einzigen cent zu sehen. Ich wollte auch nicht pauschal ausdrücken, dass alle Paketbeschreibungen schlecht sind oder im Speziellen die Dokumentation des biblatex-Pakets miserable ist! Ich hätte mir nur gewünscht, dass am Anfang der Dokumentation eine Art Beispiel gebracht wird, wie ich es z.B. als Minimalbeispiel angefüht gabe.

Ich habe mich sicherlich missverständlich ausgedrückt. Sorry !!! In Zukunft werde ich besonders darauf achten, meine Kritik mehr als Anregung zu schmücken, um so konstruktiv und nicht destruktiv zu wirken. Ich war einfach nur frustriert, dass ich es noch nicht einmal geschafft habe, ein derart "einfaches" Vorhaben umzusetzen und den Frust habe ich leider hier in einer missverständlichen Art und Weise zum Ausdruck gebracht.

Bitte um Entschuldigung!

Gruß,

Irena

Antworten