4

I'm trying to use XeLaTeX, imakeidx and xindy for a german book with multiple indexes. Based on an answer on this page, (which works) I tried to switch to xelatex and imakeidx. Calling

xelatex --shell-escape test.tex

on this file test.tex:

\documentclass{article}
\usepackage{xltxtra}
\usepackage[xindy]{imakeidx}
\makeindex[options=-M texindy -L german-duden -C utf8]
\begin{document}
üäö
start 
\index{a}\index{b}\index{ä}\index{ü}\index{ÖÖ}
end
\printindex
\end{document}

gives me the error message:

(require "tex/inputenc/utf8.xdy") ERROR: Could not find file "tex/inputenc/utf8.xdy" !

Leaving out xindy option "-C utf8" gives me an index with alll umlauts sorted under "O".

I just discovered that xindy does work when run separately, without being started from within xelatex per imakeidx, but from the command prompt:

 $ xindy -M texindy -C utf8 -L german-duden test.idx

No nagging and no mention of "utf8.xdy" either.

  • 2
    imakeidx calls texindy and not xindy and texindy doesn't work with -C utf8. Add \makeatletter \def\imki@progdefault{xindy} \makeatother after loading imakeidx. – Ulrike Fischer Apr 1 '14 at 11:58
  • Yes, that's it. And don't use \makeindex[program=xindy ...] either. Thanks @Ulrike! – Blackface Apr 1 '14 at 12:12
  • 1
    @user42591 I'll correct the bug with truexindy as soon as possible. But \makeindex[program=truexindy] should work. – egreg Apr 1 '14 at 12:15
  • I just found out that TeXworks (i.e.: I ;) ) was using an old TeXLive installation. With TeXLive 2013, \makeindex[program=truexindy] works. – Blackface Apr 2 '14 at 11:38
  • @egreg Wanna write something up that can be considered an answer? :-) – Johannes_B Jun 14 '15 at 20:16
3

Calling \makeindex[program=truexindy,...] works.

\documentclass{article}
\usepackage{fontspec}
\usepackage{imakeidx}
\makeindex[program=truexindy,options=-M texindy -L german-duden -C utf8]
\begin{document}
üäö
start
\index{a}\index{b}\index{ä}\index{ü}\index{ÖÖ}
end
\printindex
\end{document}

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.