Xindy / Texindy als Teil von MikTeX unter Windows 10 64bit zur Erstellung von Indexverzeichnissen mit UTF8
Beim Einsatz von MikTex 2.9 (basic-miktex-2.9.6161-x64.exe) in Verbindung mit dem letzten Repository Update zeigt sich beim Versuch "xindy" bzw. "texindy" zur Erstellung von Indexverzeichnissen unter Windows 10 64bit einzusetzen das folgende Problem:
Xindy:
C:\Program Files\MiKTeX 2.9\scripts\xindy\xindy.pl: Cannot locate xindy modules directory at C:\Program Files\MiKTeX 2.9\scripts\xindy\xindy.pl line 403.
FAILURE
Texindy:
C:\Program Files\MiKTeX 2.9\scripts\xindy\texindy.pl: not a symlink as required for TeX Live at C:\Program Files\MiKTeX 2.9\scripts\xindy\texindy.pl line 423.
FAILURE
Hintergrund für den Einsatz von "xindy" bzw. "texindy": die Verwendung eines in UTF8 kodierten Dokuments:
% fonts are generated based on an encoding matching European characters, e.g.
% when using German umlauts. There, a single character is used when e.g.
% rendering ä instead of a '..' and an 'a'
\usepackage[T1]{fontenc}
% handles the input character encoding so that German umlauts just can be
% inserted as is without the need to use \"a instead!. When using UTF8 the
% 'makeindex' command is not sufficient for creating index files like for the
% abbreviations dictionary as it does not support UTF8! Therefore, use 'texindy'
% respectively 'xindy' instead!
\usepackage[utf8]{inputenc}
% guarantees translating the automatically generated document contents like
% 'table of contents', 'literature' in the given language. Additionally, the
% word wrap rules are loaded according to the specified language.
\usepackage[english,ngerman]{babel}
Die Installation von MikTex erfolgte in einem Verzeichnis mit Leerzeichen (hier: Program Files). Allerdings enthält das texindy-Skript in der aktuellen Version bereits die hier angemerkte Korrektur für diesen Fall:
[http://tex.stackexchange.com/a/251801/9237][1]
Zum Einsatz kommt das LaTeX-Build-Werkzeug "arara". Da "arara" selbst ohne Regeln für "texindy" kommt habe ich diese unter Anleitung von:
[http://www.dickimaw-books.com/latex/thesis/html/arara.html][2]
selbst angelegt.
Die im Zentraldokument im Kopf angegebenen arara-Direktiven lauten:
% arara: pdflatex: { synctex: on }
% arara: texindy: { language: german, codepage: utf8 }
% arara: pdflatex: { synctex: on }
% arara: pdflatex: { synctex: on }
Wirft man einen Blick in die obigen Perl-Codestellen von "xindy" bzw. "texindy" fällt auf, dass logische Fehler für den Fall eines Einsatzes von 64bit-Betriebssystemen wie Windows 10 enthalten sind. In der 64bit-Variante v. MikTeX finde ich:
- die xindy-Module unter: `C:\Program Files\MiKTeX 2.9\xindy\modules`
- die xindy/texindy-Perl-Skripten unter: `C:\Program Files\MiKTeX 2.9\scripts\xindy`
Dabei fällt mir bei Betrachtung der xindy-Implementierung in `C:\Program Files\MiKTeX 2.9\scripts\xindy\xindy.pl` zu Beginn folgende Passage auf:
our $is_w32 = ( $OSNAME =~ /^MSWin/i ) ;
our $path_sep = ( $is_w32 ? ';' : ':' ) ;
$OSNAME liefert auf meinem Windows 10 64bit folgenden Rückgabewert: msys
Das bedeutet, er setzt als Pfad-Trenner schon nicht den Windows-typischen Doppelpunkt, sondern geht von einem Semikolon aus. Bei der Prüfung welche Perl-Version ich installiert habe, fällt mir auf, dass Perl auf meinem Rechner mit der Installation Git-Installation mitgeliefert wurde:
C:\Program Files (x86)\Git\bin>perl -v
This is perl, v5.8.8 built for msys
Teilt Ihr das bzw. habt Ihr dafür schon eine Lösung - außer dem Wechsel zu Linux bzw. zurück zu "ISO-8859-1" (=latin1) kodierten Dateien und Verwendung von "makeindex" - gefunden? Auf der XIndy-Webseite unter [http://xindy.sourceforge.net/download-binary.html][3] findet man:
> There is neither a xindy distribution
> for Windows nor for Mac OS X. We would
> like to have one, but nobody has done
> the port yet.
Bleibt die Frage, wie unter Windows mit UTF8-Dokumenten und Indexverzeichnissen umgehen? Doch der Wechsel zurück zu "latin1" (= ISO-8859-15) im "inputenc"-Paket und "makeindex" bzw. ob Ihr positive Erfahrungen mit der folgenden Anleitung unter:
[http://tex.stackexchange.com/questions/71167/how-to-use-xindy-with-miktex][4] habt?
[1]: http://tex.stackexchange.com/a/251801/9237
[2]: http://www.dickimaw-books.com/latex/thesis/html/arara.html
[3]: http://xindy.sourceforge.net/download-binary.html
[4]: http://tex.stackexchange.com/questions/71167/how-to-use-xindy-with-miktex