When I generate my index with XeLaTeX using `xindy` as described here: [How to use xindy with XeTeX/LuaTeX?](https://tex.stackexchange.com/questions/25623/how-to-use-xindy-with-xetex-luatex) I struggle with proper ranges being displayed. Essentially, the dashes are missing and the page numbers stick to each other.

*Example:*

```
\documentclass{article}
\usepackage{xltxtra}
\usepackage{makeidx}
\makeindex
\begin{document}
index a
\index{a}
\clearpage
index a b
\index{a}\index{b}
\clearpage
index a b ä
\index{a}\index{b}\index{ä}
\clearpage
index a b ä ü
\index{a}\index{b}\index{ä}\index{ü}

\printindex
\end{document}

```

This results in the following output:

![Index](https://i.stack.imgur.com/7fCey.png)

As you can see, the **a** is shown with **14** instead of **1-4**. My call to `xindy` was the following:

```
xindy -M texindy -C utf8 -L german-duden xindy.idx

```

The `xindy.idx` file looks good to me:

```
\indexentry{a}{1}
\indexentry{a}{2}
\indexentry{b}{2}
\indexentry{a}{3}
\indexentry{b}{3}
\indexentry{ä}{3}
\indexentry{a}{4}
\indexentry{b}{4}
\indexentry{ä}{4}
\indexentry{ü}{4}

```

But the resulting `xindy.ind` file already shows the problem:

```
\begin{theindex}
  \providecommand*\lettergroupDefault[1]{}
  \providecommand*\lettergroup[1]{%
      \par\textbf{#1}\par
      \nopagebreak
  }

  \lettergroup{A}
  \item a, 14
  \item ä, 3, 4

  \indexspace

  \lettergroup{B}
  \item b, 24

  \indexspace

  \lettergroup{U}
  \item ü, 4

\end{theindex}

```

What am I missing here?