[Tex/LaTex] Xindy not working with MiKTeX

xindy

I have just followed the method of Speravir (see How to use Xindy with MiKTeX?). My MiKTeX installation is D:\MiKTeX 2.9, and I already had a D:\LocalTeXMF for files that are not in the distribution. Unfortunately, trying to test with the example file (that I named testxindy.tex) and to use xindy on the resulting .idx file from the command line, it didn't work.

One reason is that it is not quite clear for the novice which executable to use in which case. Schematically, there are two possibilities for the (simplest) command line:

1) texindy.exe testxindy.idx

2) tex2xindy.exe testxindy.idx

In the 1st case, the answer was: failed to find script. The documentation mentions a makeindex4 wrapper for xindy. Unfortunately, this wrapper can't be found in the distribution. Is it some obsolete wrapper?

In the 2nd case, the answer was: writing attribute names to file testxindy.idx, the program seeming either to be waiting for some answer or to have an endless loop.

Finally, it worked launching directly the texindy.pl script. However there were strange things in the .ilg file (strange to me, at least):

Loading module YcBEHsZUlK ........ Finished loading module YcBEHsZUlK

All other modules loaded have 'normal' names… So ? Could it be related to the fact that my editor uses utf8 encoding?

Anyway I can't understand how to make the .exe files work, which, I guess, is the normal way.

Subsidiary question: in a MiKTeX installation, shouldn't the bin directory be in \LocalTeXMF\miktex\bin rather than in \LocalTeXMF\bin? If so, where should really be texmf.cnf – \LocalTeXMF or \LocalTeXMF\MiKTeX, or even \LocalTeXMF\MiKTeX\config?

I would be very grateful for any help.

Best Answer

You have two possibilities get a working xindy:

  1. Install a more or less larger part of TeXLive 2013. Add to path variable the path to texlive after the path to miktex and hope that the systems don't is no interfere. (If they are problems you can change the path variable locally when switching between xindy and miktex applications (in a good editor you can add such path switches in the application calls) or delete all unneeded binaries in the texlive bin folder).

  2. Install only xindy. With the w32tex.org version it hopefully works like this:

    • Get xindy-w32.tar.xz and web2c-w32.tar.xz.
    • Unpack xindy completly and only the share folder from web2c somewhere outside miktex. If you didn't do it during the unpacking: Merge the share folder of web2c with the one of xindy.
    • Add the bin folder to your path variable
    • Create a environment variable texmf which points to the texmf-dist folder e.g. texmf=F:\Install\Xindy\share\texmf-dist.
    • check that you have a working perl by testing perl --help in the command line
    • test xindy --help in the command line.
Related Question