# [XeTeX] makeindex and active characters

Musa Furber musaf_spamtrap at runbox.com
Wed Sep 27 19:40:26 CEST 2006

On 27 Sep 2006, at 17:18, William Adams wrote:

> On Sep 27, 2006, at 7:38 AM, William Adams wrote:
>
>> On Sep 27, 2006, at 7:14 AM, William Adams wrote:
>>
>>> On Sep 26, 2006, at 5:17 PM, musa furber wrote:
>>>
>>>> Is there any way to suppress the expansion of the active characters
>>>> just when index entries are written?
>>>
>>> No.
>>
>> After thinking on that a bit more, I think one could do this by a
>> judicious redefinition of various commands at the proper time --- say
>> redefining the character in the index command before using it to get
>> the literal string into the .idx, then, having the more normal
>> definition available when the index is processed.
>
> After thinking even more (and finishing my morning cuppa and getting
> my caffeine level on its way back up to normal), why not just change
> the catcode of the active characters back to letters at the beginning
> of the index macro, then change them back to active when you're done?
>
> I _think_ that should be the best and most sensible thing to do and
> ought not have any drawbacks, and should make for a much nicer and
> far more readable .idx file if you need to do any sort of post-
> processing on it beyond the norm.

This solution, unfortunately, is beyond my TeXing ability.

After first defining my set of active char definitions like

\newcommand{\oneEzeroC}{{\transfont\string Ḍ\normalfont\selectfont}}
\catcode"1E0C=\active \def^^^^1e0c{{\protect\oneEzeroC}}

I create two macros, one to set up the active chars (a repeat of the
above) and another to de-activate them with

\catcode"1E0C=11

but then I'm still left with a lot of font garbage in the .idx.

Maybe my problem is that I quit coffee two days ago.

Regards,
Musa