[Tex/LaTex] How to configure TexStudio editor to use Xindy

glossariesindexingtexstudioxindy

I am using TexStudio editor for LaTeXing, I want to use Xindy engine though for indexing, in the commands of TexStudio, I found there is a default command for texdindy as in the image below. But how to use xindy then? Do I have to use xindy explicitly in texstudio or texindy will do the job? is there any possibility also to assign a dedicated key for using xindy and how to generate an index with that?
I hope the answer would contain a MWE showing the goodies of xindy by using TexStudio editor, with some explanation of how to make sure that xindy, and not other default engines like makeindex, is doing the sorting and collating job.

Notes:

  • I am using TexStudio 2.5.2 version
  • xindy does not come with MikTeX distribution, you have to install it manually, here is a post for that, although I didn't make it myself, that's why I installed TexLive distribution instead, xindy ships already, and you don't need to install perl separately if you are using windows, or even bother yourself with any other stuff.

enter image description here

Best Answer

So this can be done in two steps thanks to Qrrbrbirlbel afterall, in order to call xindy for indexing:

  1. Set texindy as your default index tool by going to optioins -> Configure TexStudio -> Build, Note: make sure to tick the show advanced options, as in the picture below:

enter image description here
2. You need to use the shell escape for xelatex or pdflatex, I use xelatex compilation engine for the pdf file, go to commands and add the -shell-escape as in the picture below:

enter image description here

Now it's time for Hello World experiment in a MWE, I borrowed one from here:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[finnish]{babel}
%\usepackage[utf8]{inputenc} % cannot be used with xelatex
\usepackage[texindy]{imakeidx}
\makeindex
\begin{document}
Hello world
\index{j\"allivaara}
\index{porvoo}
\index{kirjakielt\"a}
\index{sanota}
\index{vanhaa}
\printindex
\end{document} 

Result:
enter image description here

Related Question