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: Open in Online-Editor
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: Open in Online-Editor
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: Open in Online-Editor
% 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 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 selbst angelegt. Die im Zentraldokument im Kopf angegebenen arara-Direktiven lauten: Open in Online-Editor
% 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:
Dabei fällt mir bei Betrachtung der xindy-Implementierung in Open in Online-Editor
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 Git-Installation mitgeliefert wurde: Open in Online-Editor
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 findet man:
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 habt? gefragt 02 Dez '16, 10:41 hking
Ergebnis 5 von 11
show 6 more comments
|
xindy läuft bei mir (miktex, windows 10, 64bit) ohne Probleme. Hast du denn alle xindy relevanten Pakete installiert?
Auf welche Pakete sprichst Du an, Ulrike? Ich habe MikTeX nicht vollständig installiert. Ich lasse bei Bedarf MikTeX-Pakete nachinstallieren. Du meinst, mir fehlt etwas? Allerdings wundert mich die Logik in den "xindy" bzw. "texindy" Perl-Skripten. Hast Du Dir die Zeilen auch schon mal angeschaut?
seufz. warum schaust dich mal im Package manager nach, ob du alles hast? Such einfach mal nach xindy (vorher ggfs. synchronisieren).
Hab den Package Manager schon bemügt - allerdings fehlte nichts. Ich hab heute Abend auch MikTeK ganz frisch installiert und synchronisieren lassen. Allerdings haben sich die Perl-Skripten von "xindy" und "texindy" in ihrer Logik nicht verändert. Hmmmm - allmählich gehen mir die Ideen aus. Was hast Du denn gemacht, um es ans Fliegen zu kriegen? Hast Du MikTek in der 32bit-Version auf Deinem Windows mit 64bit laufen? Das könnte es noch erklären. Denn ich nutze hier die 64bit-Variante.
Ich habe miktex in der 32bit variante, und es ist in einem Ordner ohne Leerzeichen installiert. Aber da du bist jetzt weder gesagt hast, wo genau deine xindy-Module und die sonstigen relevanten Dateien (xindy.mem, xindy.exe) sind, noch wo genau du einen logischen Fehler in der pl siehst, kann ich nichts weiter sagen. Da aber xindy nun seit über einen Jahr in miktex ist (was mich einiges an Arbeit gekostet hat), fände ich es seltsam, wenn es grundsätzlich scheitert. Ich habe bis jetzt keine Fehlermeldungen gesehen.
@hking: In Kommentaren auf keinen Fall Block-Code verwenden! Das zerstört die Kommentarfunktion. Ich habe nun zweimal versucht, das zu korrigieren, aber zweimal hat mir jemand dazwischen gepfuscht! Ich werde den Kommentar deshalb sicherheitshalber löschen! Für die Frage wichtige Informationen gehören ohnehin in die Frage eingearbeitet und ggf. in einem Kommentar lediglich darauf verwiesen.
@saputello: vielen Dank für den Hinweis! Ich habe meine zusätzlichen Anmerkungen jetzt direkt in der Frage untergebracht :)
@Ulrike Fischer: Antworten auf Deine Fragen findest Du in der Frage oben :)
@hking: Bitte verwende Inline-Code für Pfadangaben (sowohl in Fragen/Antworten als auch Kommentaren), während
`C:\Program Files\MiKTeX`
alsC:\Program Files\MiKTeX
ausgegeben wird und damit lesbar bleibt, wird ausC:\Program Files\MiKTeX
einfach nur C:Program FilesMiKTeX und ist damit schwer verständlicher, unklarer Müll.@saputello: erl.
msys
wird übrigens ausgegeben, wenn derperl
-Interpreter unter/für MinGW/MSYS erzeugt wurde. Das ist dann kein reinrassiges Windows-Perl. Ob 32 oder 64bit ist dagegen egal. Die MSYS-Pfadkonventionen sind etwas komplex.Warum installierst du dir nicht einfach ein "normales" Perl? Eines, das xindy nicht verwirrt?