inputenc error 'latin1'

Erstellen von Index, Glossar, Symbolverzeichnis, einer Nomenklatur etc. mit MakeIndex oder Xindy


zooonK
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Mi 16. Dez 2009, 15:29

inputenc error 'latin1'

Beitrag von zooonK »

Miktex / Texnic Center - kriege folgende(n) fehler:
! Package inputenc Error: Keyboard character used is undefined (inputenc) in inputencoding 'latin1'.
See the inputenc package documentation for explanation.
Type H<return> for immediate help.
...
1.92 ...etentrycounter{page}\glsnumberformat{63}}}
ich vermute das hängt mit meinem glossar (paket: glossaries) zusammen. irgendwo in der glossar.tex muss wohl ein falsches zeichen versteckt sein. der fehler tritt elf mal auf mit anderen zahlen im \glsnumberformat. allerdings habe ich keine ahnung was das für eine nummerierung sein soll. und ich habe ca. 500 glossareinträge. hat jemand ne idee, wie man da den / die zeichenfehler suchen kann?

edit: scheinbar bezieht sich der fehler auf die *.glo-datei, die soweit ich weiß von makeglossaries erstellt wird. da taucht die folgende passage auf. läuft da was falsch?
\glossaryentry{Kanonisches Recht?\glossaryentryfield{Kanonisches Recht}{\glsnamefont{Kanonisches Recht}}{Kanonisches Recht (griech. kanon = Regel, Maß, Richtlinie) ist der Fachbegriff für ... zogen sich häufig den Vorwurf der Häresie zu.}{\relax }|setentrycounter{page}\glsnumberformat}{63}

dako5004
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 90
Registriert: Fr 24. Apr 2009, 04:05
Wohnort: Lebach

Beitrag von dako5004 »

Hallo!


Vielleicht hilft es schon, wenn Du statt latin1 latin9 nimmst.

Solche Fehler wie von Dir beschrieben sind bei mir bisher aufgetaucht, wenn ich Text aus anderen Dokumenten kopiert habe. Vielleicht bringt es etwas, wenn Du den Text, den Du im Verdacht hast, löschst und nochmal neu von Hand abtippst.
Der Fehler ist bei mir aber -wenn ich mich recht entsinne- auch schon aufgetreten, wenn ich vorher mal eine geschweifte Klammer vergessen hatte. Das könntest Du herausfinden, indem Du Dein \end{document} Zeile um Zeile verschiebst und dann schaust, ab wann ein Fehler auftritt.
Ich meine mich außerdem zu erinnern, dass ein solcher Fehler schon mal auftrat, wenn eine nicht zulässige Umgebung innerhalb einer \section-Umgebung genutzt wurde. Konkret meine ich, dass sowas passierte, wenn man
\section{Die Überschrift\label{Verweis}} eingibt.

Vielleicht hilft Dir das weiter?


Gruß
Daniel
Ich weiß, dass ich nichts weiß. (Sokrates)

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

Beitrag von KOMA »

Vorab: Da die Texte aus der glo-Datei letztlich aus dem Dokument stammen, sollte sie eigentlich dieselbe Codierung wie das Dokument haben. Allerdings werden Kodierungsfehler meist nicht bei der Verarbeitung der entsprechenden Anweisungen im Dokument gemeldet, weil die Texte dort noch nicht gesetzt, sondern möglichst unverändert in eine andere Datei geschrieben werden. Lediglich wenn das Dokument zwischenzeitlich umkodiert, aber die glo-Datei nicht gelöscht und makeglossaries nicht neu aufgerufen wurde, kann ein Codierungsfehler allein in der Hilfsdatei zu finden sein. Das kann man überprüfen, indem man alle Hilfsdateien löscht, einen LaTeX-Lauf macht, makeglossaries etc. aufruft und einen weiteren LaTeX-Lauf macht. Geht der klar, muss man ggf. noch ein paar LaTeX-Läufe und eventuell auch Aufrufe von makeindex, makeglossaries, bibtex etc. machen.

In Deinem Fall musst Du mal im Dokument suchen, wo der entsprechende Glossary-Eintrag definiert wird. Dort ist vermutlich ein oder mehrere Umlaute falsch. Es kann auch an den Pünktchen liegen. Am besten kommentierst Du den Text erst einmal komplett aus, löschst alle Hilfsdateien und machst dann einen LaTeX-Lauf, einen makeglossaries-Aufruf und einen weiteren LaTeX-Lauf. Geht der klar, musst Du suchen, welche Zeichen falsch sind - oder den Text neu eintippen.

squba
Forum-Anfänger
Forum-Anfänger
Beiträge: 18
Registriert: Sa 3. Nov 2012, 11:02

Package inputenc Error: Keyboard character used is undefined

Beitrag von squba »

Hallo,

wie beim Threadersteller bekomme auch ich die Fehlermeldung, dass ein falsches Zeichen verwendet wurde.

Dieses Zeichen kommt definitiv in der .bib-Datei vor. Ich verwende JabRef zur Verwaltung meiner Literatur. Da ich jetzt erst angefangen habe JabRef zu nutzen, hab ich erst 3 Literatureinträge drin.

Zum Fehler: Zitiere ich ein Werk, wo in JabRef keine Umlaute vorkommen, läuft LaTeX durch und auch BibTex läuft durch. Zitiere ich jetzt jedoch ein Werk, in welchem in der .bib datei Umlaute vorkommen, kommt die im Titel angegebene Fehlermeldung. Ich habe auch schon die Daten in JabRef alle gelöscht und neu per Hand eingegeben um Zeichenfehler durch Copy/Paste zu verhindern, außerdem habe ich sämtliche Umlaute mit {\"...} eingegeben.

In dem Log-Fenster zeigt mir TexMaker folgendes an:
"! Package inputenc Error: Keyboard character used is undefined
(inputenc) in inputencoding `utf8'.
See the inputenc package documentation for explanation.
Type H <return> for immediate help."[\i]

Außerdem noch folgendes:
l.30 \end
{document}
You need to provide a definition with \DeclareInputText
or \DeclareInputMath before using this key.
LaTeX Font Info: Try loading font information for T1+cmtt on input line 29[\i]

(Die angegebenen Zeilen können vom Minimalbeispiel unten abweichen, da ich dieses aus dem Originaldokument herauskopiert und zusammengewürgelt habe.)

Ich weiß nicht, wo ich den Fehler suchen soll und wäre über Hilfe sehr dankbar.
Ich nutze als Editor TexMaker3.5 und JabRef2.9 zum Verwalten meiner Literatureinträge.

Hier ein Minimalbeispiel:
%% KOMA-Script Report-Klasse:
\documentclass[12pt,			% Schriftgröße 12
	a4paper,					% Papierformat A4
	oneside, % oder twoside		% einseitiger Druck
	BCOR=10mm,					% Berücksichtigung Binderand = 10mm
	pagesize,					% flexible Auswahl des Papierformats
	bibliography=totoc,			% Literaturverzeichnis im 													% Inhaltsverzeichnis
	listof=totoc,				% Tabellen- und Abbildungsverzeichnis im 								% Inhaltsverzeichnis 
	titlepage,					% Titlepage mit \maketitle einbinden 
	headlines=1.5,
	captions=bottombeside]{scrreprt}

%% Formatierung und Schriftart
\usepackage[T1]{fontenc}				% Berücksichtigung der Umlaute
\usepackage[utf8]{inputenc}				% UTF-8 Zeichenkodierung
\usepackage[ngerman]{babel}				% neue deutsche Rechtschreibung
\usepackage{lmodern}					% Schriftart Latin Modern
\usepackage[onehalfspacing]{setspace}	% 1,5facher Zeilenabstand


\usepackage{blindtext}

%% Strafen fuer Hurenkinder und Schusterjungen
\clubpenalty = 10000
\widowpenalty = 10000
\displaywidowpenalty = 10000

%% Glossar
\usepackage[ngerman]{translator}
\usepackage[style=super,nonumberlist]{glossaries}
\makeglossaries

%% Abkürzungsverzeichnis
\usepackage[german]{nomencl}
\renewcommand{\nomname}{Glossar und Abkürzungsverzeichnis}
\renewcommand{\nomlabel}[1]{\hfil \textbf{#1}\hfil}
\makenomenclature

%% Literaturverzeichnis
\usepackage[babel,german=quotes]{csquotes}
\usepackage[backend=bibtex8]{biblatex}
%\bibliographystyle{plain}
\bibliography{quellen_BV}

\begin{document}

\author{Max Mustermann}
\title{Mein Dokument}
\maketitle
\tableofcontents

\chapter{Das erste Kapitel}
\section{Erstes Unterkapitel}
\blindtext
\section{Noch mal}
\blindtext\\

Hier steht ein Zitat \cite{Banken2010}.       % mit Umlauten
Dies sehen wir auch bei \cite{Keller2013}.  % keine Umlaute

\printbibliography
\end{document}
System: Win 7, 64 Bit
Distribution: MikTEX 2.9, 32 Bit
Editor: TEXMaker 4.2
Literatur: JabRef 2.10

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Hallo, BibTeX ist nicht für den Einsatz von unicode geeignet.

Schau bitte in die wichtigen Hinweise des Unterordners Literaturverzeichnis.

Dich dürfte außerdem Wie überprüfe ich die Eingabekodierung in meinem Editor? interessieren.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

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

Beitrag von u_fischer »

Jabref speichert die bib-Dateien standardmäßig in ansinew/cp1252.
(Das müsste auch am Anfang der bib-Datei stehen). Stelle jabref auf utf8 um oder teile biblatex mit, dass die bib-Datei in ansinew ist (siehe Dokumentation von biblatex).

Grundsätzlich solltest du aber überlegen auf backend=biber umzustellen. Bei bibtex gibt es immer die Gefahr, dass es utf8-Zeichen zerlegt.

squba
Forum-Anfänger
Forum-Anfänger
Beiträge: 18
Registriert: Sa 3. Nov 2012, 11:02

Beitrag von squba »

Zunächst vielen Dank für die Lösungsansätze.
Ich habe mir ein Einsteigerbuch für LaTeX besorgt (von 2013) und da steht explizit drin, dass ich backend=bibtex8 aufrufen soll, da biber standartmäßig noch nicht mit jeder LaTeX Distribution kommt. Und bibtex8 soll ja mit Umlauten umgehen können. Und in einer anderen Antwort zu diesem Problem wurde geraten, die Kodierung von JabRef nicht auf utf8 einzustellen, hab ISO8859_1 drin....

Aber ich werde in Zukunft auf biber umstellen, diese Arbeit will ich jedoch noch mit bibtex8 abschließen, da die Zeit drängt und Mittwoch Abgabe ist.
System: Win 7, 64 Bit
Distribution: MikTEX 2.9, 32 Bit
Editor: TEXMaker 4.2
Literatur: JabRef 2.10

Besserwisser

Beitrag von Besserwisser »

squba hat geschrieben:da biber standartmäßig noch nicht mit jeder LaTeX Distribution kommt.
Welche Distribution soll das sein? Es gibt derzeit zwei große TeX-Distributionen, TeX-Live (auch MacTeX basiert darauf) und MiKTeX. Laut CTAN-Eintrag für biber enthalten beide biber.

bibtex8 kann übrigens nicht mit utf8 umgehen! Wenn Du also bibtex8 verwenden willst, dann darfst Du Deine LaTeX-Dateien auch nicht utf8 codieren oder musst biblatex sagen, wie die Literaturdatenbank codiert ist, wie das Ulrike schon erwähnt hat.

squba
Forum-Anfänger
Forum-Anfänger
Beiträge: 18
Registriert: Sa 3. Nov 2012, 11:02

Beitrag von squba »

Ich beziehe mich bei meinen Aussagen auf das aktuelle (2013) Buch "Wissenschaftliche Arbeiten schreiben mit LaTex" von J. Schlosser. Zumindest steht auf S. 175, dass bibtex8 auch mit 8-Bit-Zeichen umgehen kann und man demnach backend=bibtex8 wählen soll. Auch die Aussage mit biber steht auf der selben Seite.

Aber gut, ich werde mich demnächst mal mit biber auseinandersetzen.

Noch eine Frage hab ich allerdings. Da ich mir im Laufe der Zeit eine LaTeX-Vorlage zusammengebastelt habe und Pakete mehr oder weniger schneller veralten - gibt es (und falls ja, wo) eine Möglichkeit schnell herauszufinden, ob man noch auf dem aktuellsten Stand ist bzw. ob man veraltete Pakete nutzt?
System: Win 7, 64 Bit
Distribution: MikTEX 2.9, 32 Bit
Editor: TEXMaker 4.2
Literatur: JabRef 2.10

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

Beitrag von u_fischer »

Wenn du aber utf8 benützt, dann hast du nicht nur 8bit Zeichen, sondern auch 16 oder 24bit-Zeichen.


Und wenn dein Hauptdokument utf8 aber deine bib-Datei ansinew (cp1252) benützt, dann muss du das biblatex irgendwie mitteilen. Das kann nicht hellsehen und daher nicht wissen, dass deine bib-Datei eine andere Kodierung benützt. Sihe 2.4.3 Sorting and Encoding Issues und 2.4.3.4 Specifying Encodings in der biblatex-Dokumentation.

Antworten