0

A very basic question: I am a beginner using MiKTeX with Windows (8.1). I only know how to edit and compile with TeXnicCenter. Now and then I learn from this very helpful TeX-forum that it is necessary to execute ("run") some commands like e. g. xindy -M texindy -L vietnamese -C utf8 dominik.idx. How is this to be done? I tried with the Windows command line but I only get the following response: 'xindy' is not recognized as an internal or external command, operable program or batch file - no matter which directory I'm in. Could someone please explain how to do this?

Dominik
  • 483
  • 1
    xindy is rather special: it has been added to miktex only a few days ago. Try first other tools. – Ulrike Fischer Jun 29 '15 at 16:27
  • How about executing commands in general? How/where do you do that? – Dominik Jun 29 '15 at 16:29
  • Are you sure xindy is installed? For me it works fine on a Windows 7 system. – Bernard Jun 29 '15 at 20:54
  • @Bernard Well, I think so. I downloaded all available packages with xindy in their names; respective directories have been created (like \MiKTeX 2.9\xindy). Still I do not know where to go in order to execute these commands... – Dominik Jun 30 '15 at 07:47
  • Using the windows command line should work fine. If you need a command more often, you can add buttons/profiles in texniccenter similar to the one which now starts pdflatex (which you could run on the command line too). I wouldn't want to have to write all the xindy options constantly ;-). – Ulrike Fischer Jun 30 '15 at 07:47
  • @UlrikeFischer Well, then maybe the problem is that I haven't installed xindy properly, as Bernard suggested. Is downloading and installing the packages via MiKTeX Package Manager enough? – Dominik Jun 30 '15 at 07:49
  • What happens if you run pdflatex --version in the command line? – Ulrike Fischer Jun 30 '15 at 07:52
  • @UlrikeFischer It works. Throws out the current version and copyright. – Dominik Jun 30 '15 at 07:53
  • Then find out where pdflatex.exe is (miktex/bin or similar) and check if xindy.exe is in the same folder. Btw: Do you have perl installed? – Ulrike Fischer Jun 30 '15 at 08:06
  • @UlrikeFischer xindy.exe is not there. I just recently installed Strawberry Perl. Is this what you mean? – Dominik Jun 30 '15 at 08:17
  • Try initexmf --mklinks --admin (or without --admin if you have a single user installation). If this doesn't create the exe, check again in the package manager (admin) if there is something xindy related. – Ulrike Fischer Jun 30 '15 at 08:20
  • @UlrikeFischer The response is: initexmf: Windows API error 87: the parameter is incorrect initexmf: Data: C:\ProgramData\MiKTeX\2.9\miktex/data/le\be48a8a88e3570f31e8be8fd4a43a2fd.fndb. No exe file created. All four xindy-related packages are installed. – Dominik Jun 30 '15 at 08:31
  • I have xindy.exe in \MiKTeX 2.9\miktex\bin\x64 with other .exe files. You should check if you have it there. – Bernard Jun 30 '15 at 08:32
  • @Bernard Well, the problem is: I don't have it there... :-( – Dominik Jun 30 '15 at 08:35
  • Make sure that you haven't some miktex programs running. And check with the update manager (admin) if there are updates starting with "miktex" (imho the info about the xindy wrapper is in one of the other packages). – Ulrike Fischer Jun 30 '15 at 08:35
  • Which way did it go? I didn't install it there myself. It seems to have been created at installation, since it is not in the archive files miktex-xindy-bin-x64.tar.lzma and miktex-tex2xindy-bin-xindy-2.9.tar.lzma. Also since theses packages have been updated in the past few days, are you sure you have the very latest version? – Bernard Jun 30 '15 at 08:55
  • @UlrikeFischer All miktex-related programs closed. All packages updated and all available miktex-... packages installed. Now it finally worked. Thank you very much for your help. If you'd put your directions in an answer, I'd upvote :-) – Dominik Jun 30 '15 at 09:00

1 Answers1

1

As in the comments the question was changed to "how to get the new xindy working in miktex" here some background:

xindy.exe in the miktex bin-folder is a small wrapper which calls perl xindy.pl. A lot of the applications in the miktex folder are only wrappers (which explains why they are so small).

The wrappers are normally created with initexmf --mklinks --admin (or without --admin in the case of single user installation). In most cases the installation creates the wrappers.

The wrappers are listed in scripts.ini. This is a protected file and one can't change it manually. New wrapper applications must be added by miktex updates.

This means that for a new application like xindy it is not enough to install the relevant xindy packages one should also run the update manager (admin) to update other core miktex packages.

Beside this: when managing miktex one should close other miktex applications (like YAP) so that they don't block core files.

Ulrike Fischer
  • 327,261