[tex-live] Ftuture state of XeTeX in TeXLive

Zdenek Wagner zdenek.wagner at gmail.com
Fri Oct 28 20:49:00 CEST 2011

2011/10/28 Khaled Hosny <khaledhosny at eglug.org>:
> I think it would not be hard to convince Hans to write the code once he
> is given a clear specification (but that would require familiarity with
> OpenType and how it handles Indic shaping as well) and someone who can
> do the testing.
The rules are coded in ICU and Pango and described in the Unicode
standard with enough examples for Devanagari. Simply stated, the "I"
matra U+03F must precede a consonant group (consonats connected with
virama U+094D) after which it appears. Consonant + virama + ra
(U+0930) does not follow normal rule for conjuncts but a special repha
sign is used. Ra + virama + consonant group + optional matra should be
rendered so that the Ra is displayed as the hook-like symbol at the
write edge of the syllable. If the syllable ends with anusvara
(U+0902), the anusvara is printed inside the RA hook.
The consonant may contain both a matra below (short u = U+0941, long u
= U+0942) and an anusvara (U+0902) or candrabindu (U+0901) above. They
should be vertically aligned but it is not in nowadays luatex. There
may be other rules, I will have to think more. I have enough Hindi
texts to test whether Devanagari works. I cannot help with other Indic

And there is also normalization problem. For instance, ZA (U+0958) can
be alternatively coded as JA (U+091C) followed by a nukta (U+093C).
Some fonts do not have ZA so that it must be combined, some fonts
contain ZA and do not contain nukta so that ZA must not be combined,
some fonts contain both. XeTeX as default does not perfprm any
normalization but both methods ZA <---> JA + nukta can be switched on.
There are other characters that can be represented by another
character with nukta appended.

> Regards,
>  Khaled

Zdeněk Wagner

More information about the tex-live mailing list