.png)
Ich versuche verzweifelt, das xindy
Dienstprogramm (v. 2.5.1, gepackt am 29.03.2022) mit dem imakeidx
Paket zu verwenden. (Mein Ziel ist übrigens, XeLaTeX zu verwenden, mit der Absicht, mehrere Indizes auch mit nicht-lateinischen Schriften zu erstellen).
BEARBEITEN:Alle entsprechenden Fragen auf TeX.SE und in anderen Foren sind veraltet und die darin vorgeschlagenen Lösungen funktionieren für mich nicht.
Die LaTeX-Seite funktioniert gut und im (sehr) minimalen Fall:
\documentclass{article}
\usepackage{fontspec} % with XeLaTeX
\usepackage[xindy]{imakeidx}
\makeindex[program=texindy,options= -L french -C utf8]
\begin{document}
A \TeX\index{a} test\index{b}
\printindex
\end{document}
Ich erhalte die erwartete .idx
Datei, bestehend aus:
\indexentry{a}{1}
\indexentry{b}{1}
Das Problem tritt beim Ausführen von texindy
oder auf xindy
, da diese nie eine richtige .idn
Datei erstellen. Das Maximum, das ich erhalten kann, ist ein leerer Index.
Der Befehl :
`texindy.exe -d script -d keep_tmpfiles -d level=3 -C utf8 -L french -I latex -t testxindy.ilg testxindy.idx`
tut nichts, außer zu drucken:
Calling xindy as: C:/Program Files/MiKTeX/scripts/xindy/xindy.pl -d script -d keep_tmpfiles -d level=2 -t testxindy.ilg -L french -C utf8 -M tex/inputenc/utf8 -M texindy -M page-ranges -M word-order -I latex testxindy.idx
Das Ausführen dieses Befehls (unabhängig davon, ob ich perl
das Problem mit space_in_path voranstelle und auf verschiedene Weise behebe) funktioniert nicht. Aber der Aufruf xindy.exe
mit den oben zitierten Argumenten:
xindy.exe -d script -d keep_tmpfiles -d level=2 -C utf8 -t testxindy.ilg -L french -M texindy -M page-ranges -M word-order -I latex -t testxindy.ilg testxindy.idx
gibt eine Reihe von Informationen, von denen die relevanten Zeilen sind:
concatenated xindy input file: "FXFmfaN5Gb"
Running filter: "C:/Program Files/MiKTeX/scripts/xindy/../../miktex/bin/x64/internal/tex2xindy" <"FXFmfaN5Gb" >"2iExgBvNHa"
filtered xindy input file: "2iExgBvNHa"
Found language module C:/Program Files/MiKTeX/xindy/modules/lang/french/utf8-lang.xdy
xindy startup file: "wYayV891eS"
modules directory: C:/Program Files/MiKTeX/xindy/modules.
command: C:/Program Files/MiKTeX/scripts/xindy/../../miktex/bin/x64/internal/xindy-lisp.exe -M C:/Program Files/MiKTeX/scripts/xindy/../../miktex/bin/x64/internal/xindy.mem -E iso-8859-1 "wYayV891eS"
Opening logfile "testxindy.ilg" (done)
Reading indexstyle...
Loading module "lKuqmNCawW"...
... *(other modules)*
Finished reading indexstyle.
Finalizing indexstyle... (done)
Reading raw-index "2iExgBvNHa"...
ERROR: LOAD: A file with name 2iExgBvNHa does not exist
Meine Schlussfolgerung ist, dassdas tex2xindy.exe
Dienstprogramm funktioniert nicht. Wie kann ich das beheben?
Mit einigen Variationen des Befehls oder bearbeiteten Versionen der Perl-Skripte wird die temporäre Datei „2iExgBvNHa“ erstellt, bleibt aber leer, und ich erhalte eine .idn
Datei, die nur Folgendes enthält:
\begin{theindex}
\providecommand*\lettergroupDefault[1]{}
\providecommand*\lettergroup[1]{%
\par\textbf{#1}\par
\nopagebreak
}
\end{theindex}
Ich verwende eine aktuelle MiKTeX-Distribution unter Windows 10 (x64), die „xindy“-Komponenten finden Sie hier:
C:\Program Files\MiKTeX\scripts\xindy : the perl scripts texindy.pl, xindy.pl
C:\Program Files\MiKTeX\miktex\bin\x64 : texindy.exe, xindy.exe, apparently wrappers to the formers
C:\Program Files\MiKTeX\miktex\bin\x64\internal : tex2xindy.exe, xindy.mem, xindy-lisp.exe
C:\Program Files\MiKTeX\xindy\modules : the folders of modules
und ich habe einekompakte ausführbare Datei perl.exe (v5), das sich im Pfad befindet.