Re: Arabic support
Kenichi Handa <[email protected]> Wed, 01 Sep 2010 11:17:03 +0900
| Newsgroups | gmane.emacs.bidi,gmane.emacs.devel |
|---|---|
| Message-ID | <[email protected]> |
In article <[email protected]>, Eli Zaretskii <[email protected]> writes: > > In Emacs, bidi reordering is done by Emacs itself, so the `shape' > > method of font backend should not reorder glyphs. But, perhaps > > Uniscribe backend reorders Arabic text, right? > No, not AFAIK. We call the ScriptItemize API of Uniscribe with NULL > as the 4th and 5th arguments, which AFAIU should disable reordering. > Perhaps Jason could chime in and tell if I'm right here. I read the function uniscribe_shape roughly. It has this code: for (i = 0; i < nitems; i++) { int nglyphs, nchars_in_run, rtl = items[i].a.fRTL ? -1 : 1; [...] if (SUCCEEDED (result)) { int j, nclusters, from, to; from = rtl > 0 ? 0 : nchars_in_run - 1; Doesn't it mean uniscribe_shape reorders glyphs? > Btw, does the current code support Arabic ligatures and shaping on > GNU/Linux? I don't know about ligatures, but at least these should be supported by libotf and m17n-lib with OpenType fonts. o glyph substitution of consonants depending on where it is; beginning, middle, or end of a word. o glyph positioning of vowels --- Kenichi Handa [email protected]