Biber scheint nicht komplett zu kompilieren

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


MistyMorning
Forum-Anfänger
Forum-Anfänger
Beiträge: 17
Registriert: Di 22. Mai 2018, 23:10

Biber scheint nicht komplett zu kompilieren

Beitrag von MistyMorning »

Hallo,
gestern habe ich TexWorks so eingestellt, dass Biber nun mein Standardbearbeitungsprogramm ist. In der Beschreibung (in diesem Forum) stand auch, dass ich nun einmel mit Tex, dann mit Biber und dann wieder mit Tex kompilieren soll. Leider haut das nicht hin. Wenn ich zum ersten Mal kompiliere, funktioniert das Zitieren nicht. Es wird im PDF lediglich der bibtexkey angezeigt. Nach der Kompilierung mit Biber ändert sich nichts. Und ich glaube nicht, dass es wirklich zu einer Kompilierung kommt. Ich erhalte in der Konsole nur folgende Aussagen:
INFO - This is Biber 2.7 (beta)
INFO - Logfile is 'MCHausarbeit.blg'
INFO - Reading 'MCHausarbeit.bcf'
INFO - Found 6 citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'mc.bib' for section 0
INFO - Decoding LaTeX character macros into UTF-8
INFO - Found BibTeX data source 'mc.bib'
INFO - Overriding locale 'de-DE' defaults 'normalization = NFD' with 'normalization = prenormalized'
INFO - Overriding locale 'de-DE' defaults 'variable = shifted' with 'variable = non-ignorable'
INFO - Sorting list 'nyt/global/' of type 'entry' with scheme 'nyt' and locale 'de-DE'
INFO - No sort tailoring available for locale 'de-DE'
INFO - Writing 'MCHausarbeit.bbl' with encoding 'UTF-8'
INFO - Output to MCHausarbeit.bbl
Der lange Kompilierungsvorgang findet gar nicht statt. Wenn ich jetzt noch einmal mit pdfLaTex kompiliere, erhalte ich diese Ausgabe:
! Package inputenc Error: Unicode char � (U+FFFD)
(inputenc)                not set up for use with LaTeX.
See the inputenc package documentation for explanation.
Type  H <return>  for immediate help.
 ...
l.65 ...und Zeit." \cite[vgl.][S. 17]{fuchss} 
                                                  Pernici konzentrierte Ihre...
? 
Nun muss ich die Hilfsdateien löschen und erneut mit pdfLaTex kompilieren. Dann ist der Fehler weg, aber Biber nicht ausgeführt. Wenn ich Biber wieder ausführe, kommt die oben stehende Meldung wieder und so drehe ich mich im Kreis.

Warum haut das nicht hin?????

Hier nochmal meine Präambel:
\documentclass[a4paper,12pt]{scrreprt}
\usepackage[left=4cm, right=2cm, top=3cm, bottom=2cm]{geometry} %Seitenränder
\usepackage{setspace} %Zeilenabstand
\onehalfspacing %Zeilenabstand
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[backend=biber,style=authoryear-icomp,sorting=nyt,dashed=false]{biblatex} %Literaturverzeichnis
\usepackage[babel,german=guillemets]{csquotes} %Literaturverzeichnis
\addbibresource{mc.bib} %Literaturverzeichnis
\usepackage{graphicx} %Grafik
\newcommand*{\quelle}[1]{\par\raggedright\footnotesize Quelle:~#1} %Quelle direkt unter Bild
%\DeclareNameAlias{sortname}{first-last} %Sortiert das Literaturverzeichnis (Vorname-Nachname)

\begin{document}
TEXT \cite[vgl.][S. 17]{fuchss}
\cleardoublepage
\pagenumbering{Roman}
\printbibliography[title=Quellen]
\end{document}
\grid

markusv
Forum-Meister
Forum-Meister
Beiträge: 947
Registriert: Do 3. Sep 2015, 17:20
Wohnort: Leipzig

Re: Biber scheint nicht komplett zu kompilieren

Beitrag von markusv »

MistyMorning hat geschrieben:Wenn ich zum ersten Mal kompiliere, funktioniert das Zitieren nicht. Es wird im PDF lediglich der bibtexkey angezeigt.
Das ist auch "richtig" so. Es werden neben der PDF auch Hilfsdateien angelegt, die u.a. biber benötigt, um die Literatureinträge zu ordnen, ins Verzeichnis zu schreiben etc. Daher ja auch die weiteren Schritte.
MistyMorning hat geschrieben:Nach der Kompilierung mit Biber ändert sich nichts.
Auch das ist nachvollziehbar, da du ja nicht mit pdflatex kompilierst, um eine neue PDF-Ausgabe zu bekommen, sondern mit biber, um Hilfsdateien zu verarbeiten bzw. weitere zu erstellen, die nun in den verbleibenden pdflatex-Läufen benötigt werden, um alles zu ordnen und entsprechend auszugeben.
MistyMorning hat geschrieben:Und ich glaube nicht, dass es wirklich zu einer Kompilierung kommt. Ich erhalte in der Konsole nur folgende Aussagen:
INFO - This is Biber 2.7 (beta)
INFO - Logfile is 'MCHausarbeit.blg'
INFO - Reading 'MCHausarbeit.bcf'
INFO - Found 6 citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'mc.bib' for section 0
INFO - Decoding LaTeX character macros into UTF-8
INFO - Found BibTeX data source 'mc.bib'
INFO - Overriding locale 'de-DE' defaults 'normalization = NFD' with 'normalization = prenormalized'
INFO - Overriding locale 'de-DE' defaults 'variable = shifted' with 'variable = non-ignorable'
INFO - Sorting list 'nyt/global/' of type 'entry' with scheme 'nyt' and locale 'de-DE'
INFO - No sort tailoring available for locale 'de-DE'
INFO - Writing 'MCHausarbeit.bbl' with encoding 'UTF-8'
INFO - Output to MCHausarbeit.bbl
Das sieht auf den ersten Blick gar nicht so verkehrt aus.
MistyMorning hat geschrieben:Der lange Kompilierungsvorgang findet gar nicht statt. Wenn ich jetzt noch einmal mit pdfLaTex kompiliere, erhalte ich diese Ausgabe:
! Package inputenc Error: Unicode char � (U+FFFD)
(inputenc)                not set up for use with LaTeX.
See the inputenc package documentation for explanation.
Type  H <return>  for immediate help.
 ...
l.65 ...und Zeit." \cite[vgl.][S. 17]{fuchss} 
                                                  Pernici konzentrierte Ihre...
? 
Mit dem "langen" Kompilierungsvorgang meinst du den von pdflatex? Meiner Erfahrung nach dauert (natürlich je nach Anzahl der Literatur-Einträge) der biber-Lauf nicht so lange, wie ein Lauf mit pdflatex, also auch hier eigentlich nichts zu meckern. Der Fehler scheint ein falsches Zeichen im Text oder in der bib-Datei zu sein, wobei ich auf die bib-Datei und den Autoreneintrag tippe, da es offensichtlich in der Zeile der Referenz auftritt. Ein echtes Minimalbeispiel könnte hier weiterhelfen
MistyMorning hat geschrieben:Nun muss ich die Hilfsdateien löschen und erneut mit pdfLaTex kompilieren. Dann ist der Fehler weg, aber Biber nicht ausgeführt. Wenn ich Biber wieder ausführe, kommt die oben stehende Meldung wieder und so drehe ich mich im Kreis.
Korrigiere den Fehler und führe den Kompilierungsvorgang so aus, wie es in den wichtigen Hinweisen beschrieben ist.

Mit einer korrekten bib-Datei läuft dein Code super:
\begin{filecontents}{mc.bib}
@misc{fuchss,
author={Fuchs, S.},
title={Der Fuchs und die Gans},
year={1886}
}
\end{filecontents}
\documentclass[a4paper,12pt]{scrreprt}
\usepackage[left=4cm, right=2cm, top=3cm, bottom=2cm]{geometry} %Seitenränder
\usepackage{setspace} %Zeilenabstand
\onehalfspacing %Zeilenabstand
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[backend=biber,style=authoryear-icomp,sorting=nyt,dashed=false]{biblatex} %Literaturverzeichnis
\usepackage[babel,german=guillemets]{csquotes} %Literaturverzeichnis
\addbibresource{mc.bib} %Literaturverzeichnis
\usepackage{graphicx} %Grafik
\newcommand*{\quelle}[1]{\par\raggedright\footnotesize Quelle:~#1} %Quelle direkt unter Bild
%\DeclareNameAlias{sortname}{first-last} %Sortiert das Literaturverzeichnis (Vorname-Nachname)

\begin{document}
TEXT \cite[vgl.][17]{fuchss}
\cleardoublepage
\pagenumbering{Roman}
\printbibliography[title=Quellen]
\end{document}
Wäre Microsoft Word für das Schreiben von Büchern entwickelt worden,
würde es Microsoft Book heißen.

Unkomplizierte und schnelle LaTeX-Hilfe, bspw. Erstellung von Vorlagen und Bewerbungen:
Help-LaTeX@web.de

Gast

Beitrag von Gast »

Das Prinzip hat markusv ja schon richtig erklärt. Man erlaube mir nur die kurze Anmerkung, dass ein Biber-Durchlauf durchaus etwas länger dauern kann. Biber ist in Perl geschrieben und kann auch einiges mehr als BibTeX, das obendrein in C geschrieben wurde, daher muss man leider mit kleinen Perfomanceeinbrüchen rechnen, auf moderner Hardware hält sich das alles aber in Grenzen (nur merke ich immer, wenn ich BibTeX nutze, wie wahnsinnig schnell es im Vergleich ist). Eine sehr ausführliche Erklärung zum Thema "wie funktionieren BibTeX und Biber" gibt es auch bei TeX.SX https://tex.stackexchange.com/q/63852/35864 (die Funktionsweise von BibTeX und Biber ist ähnlich, daher kann man den erklärenden Teil für beide lesen).

Die Ausgabe von Biber zeigt, dass der Biber-Lauf zu funktionieren scheint und ohne Fehler abgeschlossen wird. Allerdings macht mich
INFO - This is Biber 2.7 (beta)
stutzig. Du hast eine Beta-Ausgabe einer veralteten Biber-Version. Beta-Versionen sind für den Produktivgebrauch selten eine gute Idee, wenn es auch was Stabiles gibt. Und Biber 2.7 gehört zu biblatex 3.7, das vor eineinhalb Jahren veröffentlicht wurde, aktuell ist biblatex 3.11 mit Biber 2.11.

Insbesondere deutet eine Beta-Version darauf hin, dass Du Biber händisch installiert hast. Das sollte man im Allgemeinen tunlichst vermeiden. Biber und biblatex - wie alle anderen Pakete auch - sollten immer über Deine TeX-Distribution installiert und aktualisiert werden.

Wenn Du Biber aktualisieren möchtest, denke daran, dann auch biblatex auf den neusten Stand zu bringen und am besten auch alle anderen Pakete zu aktualisieren. Wirf dann bitte die manuell installierten Versionen weg und installier die Pakete über Deine TeX-Distribution (bei TeX live tlmgr bei MikTeX über MikTeX Console oder in älteren Versionen den Package Manager).

Wahrscheinlich hat das aber mit dem eigentlichen Problem nichts zu tun. Die Meldung
! Package inputenc Error: Unicode char � (U+FFFD)
(inputenc)                not set up for use with LaTeX.
deutet darauf hin, dass sich irgendwo ein merkwürdiges Unicode-Zeichen verbirgt. Wenn das nur nach einem Biber-Lauf passiert, dann ist es sehr wahrscheinlich, dass dieses Zeichen in der .bib-Datei wohnt. Leider gibt die Meldung nicht her, welches Zeichen das ist. Du musst also selbst auf die Suche gehen. Es könnten irgendwelche merkwürdigen Leerzeichen sein (Unicode hat da einige von), oder besondere Zeichen für Binde- oder Gedankenstriche. Mit einem guten Editor kannst Du in Deiner .bib-Datei nach nicht-ASCII-Zeichen suchen, das wäre ein Anfang (https://stackoverflow.com/a/20890052). Dinge wie ö, ä, ß, é sind natürlich OK, aber mit manchen Dingen kann TeX nicht umgehen. Ansonsten kann auch eine Binärsuche helfen, bei der Du systematisch immer die Hälfte Deiner .bib-Datei löschst, um herauszufinden, ob sie den Fehler verursacht. Dabei ist darauf zu achten, dass vor jedem neuen Testvorgang die temporären Dateien gelöscht werden sollten (.aux, .bbl, .bcf, ...), denn dieser Fehler überlebt unter Umständen in der .bbl, auch wenn er in der .bib-Datei beseitigt wurde, und kann auch die .bcf-Datei zerstören, sodass weitere Biber-Aufrufe zunächst ins Leere gehen. Ein Hinweis könnte sein, dass das ganze im Zitat auftritt, das könnte bedeuten, dass sich das problematische Zeichen im Namen der Autoren des Werkes fuchss versteckt. Ob das der Fall ist oder nur eine falsche Fährte, musst Du selbst untersuchen.

Noch ein Paar Kommentare zu Deinem Code:
sorting=nyt ist die Voreinstellung bei style=authoryear-icomp und kann daher entfallen.
Ferner kann biblatex das "S." für Seitenzahlen selbst hinzufügen, daher ist
\cite[vgl.][17]{fuchss}
\cite[vgl.][S. 17]{fuchss} vorzuziehen.
Statt \DeclareNameAlias{sortname}{first-last} schrebt man Seit biblatex 3.3 besser \DeclareNameAlias{sortname}{given-family}.
Die Option babel von csquotes heißt übrigens schon seit fast acht Jahren autostyle.
Wer csquotes lädt, sollte es auch ruhig nutzen.
\enquote{Raum und Zeit.}
statt "Raum und Zeit.".

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

Beitrag von u_fischer »

! Package inputenc Error: Unicode char � (U+FFFD) 
Hm. Bist du dir sicher, dass die bib-Datei utf8 kodiert ist? Wie sieht denn der Eintrag von fuchss aus?

MistyMorning
Forum-Anfänger
Forum-Anfänger
Beiträge: 17
Registriert: Di 22. Mai 2018, 23:10

Beitrag von MistyMorning »

Vielen Dank für Eure Antworten und Eure Hilfe.

Ich denke, ich komme dem ganzen näher. Im folgenden (mit der Hoffnung, dass es korrekt erstellt wurde) mein VM:
\documentclass[a4paper,11pt]{scrreprt}
\usepackage[left=4cm, right=2cm, top=3cm, bottom=2cm]{geometry} %Seitenränder
\usepackage{setspace} %Zeilenabstand
\onehalfspacing %Zeilenabstand
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[backend=biber,style=authoryear-icomp,sorting=nyt,dashed=false]{biblatex} %Literaturverzeichnis
\usepackage[babel,german=guillemets]{csquotes} %Literaturverzeichnis
\addbibresource{mc.bib} %Literaturverzeichnis

\begin{document}
\tableofcontents
\chapter{Einführung}
\section{Zielsetzung}
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. \cite [vgl.][S. 361]{backruf} At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. `Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.' \cite[vgl.][S. 17]{fuchss} %At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. \cite[vgl.][S. 3]{pernici}

\printbibliography[title=Quellen]
\end{document}
Ich habe zuerst nach \cite [vgl.][S. 361]{backruf} mit % auskommentiert und alles hat funktioniert. Wenn ich nun den o. s. Code kompiliere, erscheint die Fehlermeldung:
! Package inputenc Error: Unicode char � (U+FFFD)
(inputenc)                not set up for use with LaTeX.

See the inputenc package documentation for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.16 ...voluptua.' \autocite[vgl.][S. 17]{fuchss} 
                                                  %At vero eos et accusam et...

? 
Das heißt, es muss an der .bib liegen. Die sieht übrigens so aus:
% This file was created with JabRef 2.10.
% Encoding: ISO8859_1


@Book{backruf,
  Title                    = {Business Innovation: Das St. Galler Modell},
  Author                   = {A. Back and C. Ruf},
  Editor                   = {C. P. Hoffmann and S. Lennerts and C. Schmitz and W. Stölzle and F. Uebernickel},
  Publisher                = {Springer Fachmedien Verlag},
  Year                     = {2016},

  Owner                    = {mres},
  Timestamp                = {2018.04.08}
}

@Book{fuchss,
  Title                    = {Mobile Computing},
  Author                   = {T. Fuchß},
  Publisher                = {Carl Hanser Verlag München},
  Year                     = {2009},

  Owner                    = {mres},
  Timestamp                = {2018.04.08}
}

@Book{pernici,
  Title                    = {Mobile Information Systems},
  Author                   = {B. Pernici},
  Editor                   = {B. Pernici},
  Publisher                = {Springer-Verlag Berlin Heidelberg},
  Year                     = {2006},

  Owner                    = {mres},
  Timestamp                = {2018.04.08}
}
Jetzt fällt mir auch gerade auf, dass ganz oben Encoding: ISO8859_1 steht. Wie kann ich das in UTF-8 ändern?

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

Beitrag von u_fischer »

Jetzt fällt mir auch gerade auf, dass ganz oben Encoding: ISO8859_1 steht. Wie kann ich das in UTF-8 ändern?
Irgendwo in jabref gibt es dazu eine Option.


Gast

Beitrag von Gast »

Da hatte Ulrike wohl ganz den richtigen Riecher. Das Problem ist in der falschen Codierung natürlich das ß aus Fuchß.

Die .bib-Datei wird von JabRef nicht als UTF-8 codiert. Du kannst das ändern, indem Du auf "File > library properties" klickst und in dem sich daraufhin öffnenden Fenster in der obersten Zeile die "library encoding" von ISO8859_1 zu UTF-8 umstellst. Danach solltest Du die Datei noch speichern und dann funktioniert es hoffentlich.

Bei pernici sieht es etwas merkwürdig aus, dass B. Pernici sowohl Autor als auch Herausgeber ist. Meinen Recherchen zufolge sollte es eigentlich eine @collection sein und Frau Pernici ist nur Herausgeberin und nicht Autorin.
@collection{pernici,
  Title      = {Mobile Information Systems},
  subtitle   = {Infrastructure and Design for Adaptivity and Flexibility},
  Editor     = {B. Pernici},
  Publisher  = {Springer},
  location   = {Berlin},
  Year       = {2006},
}
Auch bei fuchss sollte der Verlagsort in das Feld location und nicht zum Verlag in publisher gequetscht werden. Meine anderen Kommentare von heute Morgen gelten natürlich noch immer.

Gast

Beitrag von Gast »

Da UTF8 inzwischen AFAIK die Voreinstellung von JabRef ist, solltest Du auch vorsichtshalber noch kontrollieren, dass oben im Hauptfenster »BibLaTeX Modus« steht. Falls das nicht der Fall ist, solltest Du mit Datei→In den BibLaTeX-Modus wechseln den Modus wechseln.

MistyMorning
Forum-Anfänger
Forum-Anfänger
Beiträge: 17
Registriert: Di 22. Mai 2018, 23:10

Beitrag von MistyMorning »

Es funktioniert.

Vielen vielen Dank Euch allen!!!!!

Die Codierung der .bib-Datei war falsch! Ich habe sie umgestellt und alles läuft.

Antworten