PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Umlaute falsch sortiert im Index



DieterH
07-01-2008, 13:04
In meinen LaTeX-Dokumenten erzeuge ich mit \sindex verschiedene Indizes. Diese werden angelegt.

Folgende Fehler treten dabei auf:
1. Begriffe, die mit einem Umlaut beginnen, werden vor "A", unter dem Begriff "Symbole" angeordnet. Ich verwende eine IndexStyle-Datei.
2. Begriffe, die Umlaute enthalten, werden im Index so angeordnet, dass sie vor anderen Begriffen erscheinen. Beispiel: "Bürger" erscheint vor "Bad".

Wer kann mir eine Lösung meines Problems aufzeigen? Es scheint, als ob "makeindex" byte-weise sortiert; das erklärt die falsche Anordnung, da Umlaute in UTF8 durch zwei Bytes dargestellt werden, wobei das erste Byte wertmäßig unter "a" bzw. "A" liegt.



Umgebungsdaten meines Rechners:
1. SuSE Linux 10.2 einschl. ALLER Updates
2. echo $LANG: de_DE.UTF-8

Wichtige Daten aus Vorspann:
\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\usepackage[OT2,T1]{fontenc}

Das LaTeX-Dokument habe ich zur (nochmaligen) Überprüfung in OpenOffice als TEXT-Datei (kodiert) abgespeichert. Diese neue Kopie und das ursprüngliche Dokument sind laut "diff" IDENTISCH, also der Inhalt des ursprünglichen Dokuments gemäß UTF8 kodiert.

Erzeugung der Indizes:
makeindex -g ...

Danke
Gruss
Dieter

localghost
07-01-2008, 16:01
Fällt mir jetzt auch zum ersten Mal so richtig auf. Es gibt jedoch die Möglichkeit, für eine korrekt Sortierung zu sorgen. Wenn man die Umlaute als Sonderzeichen nicht direkt eingibt, funktioniert die Sortierung.

Ärger\index{"Arger}
böse\index{b"ose}
Merkwürdig ist das schon, wird aber in der Literatur erwähnt. Man muss halt nur beim Setzen eines Index daran denken.


MfG
Thorsten

DieterH
07-01-2008, 19:09
Erzeugt "xindy" mit Umlauten (UTF8 kodiert) ein sauberes Stichwortverzeichnis? Kann jemand aus der Praxis berichten?

Für mich bedeutet die Antwort, dass ich ein Shell-Skript dazwischen packe, welches die Indexeinträge in die "alte" Form schreibt.

Ja, es stimmt schon: Mit Computern lösen wir die Probleme, die wir ohne jene nicht hatten. ;-)

rais
07-01-2008, 22:57
Moin moin,
mit xindy kenn ich mich zwar nicht aus, aber die features (http://xindy.sourceforge.net/features.html) klingen vielversprechend, wenn ich auf die Schnelle auch keinen Hinweis auf UTF8-kodierte Dokumente gefunden hab, aber:


Für mich bedeutet die Antwort, dass ich ein Shell-Skript dazwischen packe, welches die Indexeinträge in die "alte" Form schreibt.

Eines der Probleme dürfte sein, daß der erste LaTeX-Aufruf bei utf8-Kodierung die Umlaute in der .idx-Datei zu `\IeC {\"<Zeichen>}' umsetzt, d. h. Du hast gar keine Umlaute in der .idx-Datei, die Du an makeindex verfüttern willst...
Suche also nicht nach Umlauten;-)
.
MfG,

DieterH
08-01-2008, 12:50
Eines der Probleme dürfte sein, daß der erste LaTeX-Aufruf bei utf8-Kodierung die Umlaute in der .idx-Datei zu `\IeC {\"<Zeichen>}' umsetzt, d. h. Du hast gar keine Umlaute in der .idx-Datei, die Du an makeindex verfüttern willst...
Suche also nicht nach Umlauten;-)
.
MfG,

Rainer,
auch das Umbiegen der `\IeC {\"<Zeichen>}'-Kodierung auf die "alte" Notation (z.B. "a) nutzt nichts. Das Ergebnis ist das gleiche (wie im Eröffnungsbeitrag) beschrieben.

Bleibt wohl nur der Umstieg auf xindy, verbunden mit einer umfangreichen zeitlichen Investition. Was tut man nicht alles ...
... oder gibt es bereits einen Fix für das Problem?

Gruss
Dieter