2011/10/28 Khaled Hosny <khaledho...@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 scripts.
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 http://hroch486.icpf.cas.cz/wagner/ http://icebearsoft.euweb.cz -------------------------------------------------- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex