# [texhax] xindy: index entry with special characters

Susan Dittmar Susan.Dittmar at gmx.de
Wed Jun 8 18:14:10 CEST 2011

Thanks, Lars!

Using \lbrace and \rbrace solved my problem with the first two entries.

For the rest, I should have created a minimal example! Mea culpa! That
would have shown me that it's not the single glyph, but the combination of
two macros that causes the problem.

Here's a miminal example that shows my problem:

%%%%%%%%% test.tex: %%%%%%%%%%%%%%%%%
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\makeindex
\begin{document}
This line just to have something output in the first run, else the index
file won't be written...
\index{\textasciitilde}			% works, though it triggers warning
\index{\textasteriskcentered}	% works, though it triggers warning
\index{\textasciitilde\textasteriskcentered} % causes xindy to abort
\input{test.ind}
\end{document}
%%%%%%%%% test.xdy: %%%%%%%%%%%%%%%%%
(define-attributes (("default")))
%%%%%%%%% program calls: %%%%%%%%%%%%
pdflatex test
xindy -C latin1 -L german-din -I latex -M latex -M test.xdy test.idx
%%%%%%%%% error message: %%%%%%%%%%%%
ERROR: CHAR: index 0 should be less than the length of the string
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

The xindy output includes two warnings triggered by the first two index
entries, which would be reduced to length 0 if the macros were stripped
during sorting. But the same 'do-not-remove' policy does not seem to work
if there's two macros as in the third index entry.

Anyone who knows how this could be solved?