Undefined control sequence.

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


WillieEener
Forum-Newbie
Forum-Newbie
Beiträge: 5
Registriert: Mi 19. Jun 2019, 11:50

Undefined control sequence.

Beitrag von WillieEener »

Hallo liebes LaTeX-Forum,

ich verwende LaTeX noch nicht lange. Genauer gesagt habe ich es erst vor kurzem angefangen zu nutzen. Ein Freund hat mir ein Dokument aufgesetzt und ich komme sehr gut damit klar.

Gestern habe ich Literaturrecherche betrieben (ich arbeite mit Zotero) und häufig meine .bib-Datei überschrieben, da ich neue Quellen abgespeichert habe und diese sofort in mein Dokument übernehmen wollte.

Kompiliert habe ich das ganze Dokument über längere Zeit nicht.

Und jetzt habe ich ein Problem:
Beim Kompilieren kommt nun ein Fehler:
Zeile 161 Undefined control sequence. \printbibliography[heading = none]
Leider weiß ich gar nicht, woran das liegen kann. Eine Quelle, die ich einarbeitete, ist sehr alt und ich musste sie händisch in mein Zitationsprogramm eintragen. Ich habe mich da aber klar an die Struktur gehalten ...

Ich weiß, dass eine Ferndiagnose kompliziert ist, aber kann mir jemand bei meinem Problem helfen? Welche Informationen könnten euch bei der Problemfindung helfen?

Danke im Voraus

Willie

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

Beitrag von u_fischer »

Schau in die log-Datei damit du die echte Fehlermeldung und nicht eine (missverständliche) Kurzfassung deines Editor siehst.

WillieEener
Forum-Newbie
Forum-Newbie
Beiträge: 5
Registriert: Mi 19. Jun 2019, 11:50

Beitrag von WillieEener »

Oh, danke. Davon wusste ich noch nichts.

Ich kann das folgende auslesen:
! Undefined control sequence.
<argument> ...ically Modified Silica Particles:\x 
                                                  {2009} A Simple Particulat...
l.161     \printbibliography[heading = none]
                                            
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
Hm, ich habe die entsprechende Quelle entfernt, neu hinzugefügt und wirklich untersucht, ob irgendetwas daran komisch ist (Sonderzeichen, ein "\" oder so etwas) und habe nichts daran entdeckt.
Selbst wenn ich die entsprechende Publikation auskommentiere und nicht nutze, kommt der Fehler weiterhin.

Gast

Beitrag von Gast »

Du hast höchstwahrscheinlich ein schmales Leerzeichen (U+2009: THIN SPACE) in "Modified Silica Particles: A Simple" nach dem Doppelpunkt. Ersetze das einfach durch ein normales Leerzeichen, das ist hier eh angebrachter.

Es kann durchaus sein, dass der Fehler noch auftritt, obwohl Du ihn in der .bib-Datei schon behoben hast. Das liegt daran, dass die alten Daten noch in den temporären Dateien vorhanden sind und sich durch ein unglückliches Zusammenwirken der Fehler festfahren. Am einfachsten lässt sich das Problem lösen, indem Du die temporären Dateien (.aux, .bbl, .bcf, ... besonders wichtig ist hier die .bbl) löschst und dann neu mit LaTeX, Biber, LaTeX, LaTeX kompilierst.

WillieEener
Forum-Newbie
Forum-Newbie
Beiträge: 5
Registriert: Mi 19. Jun 2019, 11:50

Beitrag von WillieEener »

Ah! Das
\x
bedeutete in diesem Fall, dass an jener Stelle der Fehler ist. Danke!

In diesem Fall waren zwei schmale Leerzeichen hinter dem Doppelpunkt. Genial ...
Nachdem ich das in Zotero ersetzt habe, die entsprechenden temporären Dateien gelöscht habe und den Rechner neu gestartet habe (ohne den letzten Schritt kam der Fehler immer noch), konnte ich nun fehlerfrei kompilieren.

Sehr schön! Habt vielen Dank.
Ich habe viel gelernt :).

Gast

Beitrag von Gast »

WillieEener hat geschrieben:Ah! Das
\x
bedeutete in diesem Fall, dass an jener Stelle der Fehler ist.
Fast. Biber hat hier ein Unicode-Zeichen, mit dem er nicht umgehen konnte (also das schmaler Leerzeichen U+2009) durch \x{<Codepoint>} ersetzt. Der Befehl \x ist aber nicht definiert, daher bekommst Du den Fehler "Undefined control sequence." Das \x ist also der Fehler. Du bekommst aber nicht bei jedem beliebigem Fehler ein \x angezeigt.

Antworten