On Wed, Nov 28, 2001 at 07:33:21PM +0100, Pablo Saratxaga wrote:
> Kaixo!
> 
> On Thu, Nov 29, 2001 at 12:24:41AM +0700, Theppitak Karoonboonyanan wrote:
> > On Wed, Nov 28, 2001 at 09:32:15AM +0100, Pablo Saratxaga wrote:
> > 
> > > tis620.xxxx-x and tis620-x both use negative expand; that is needed for
> > > combining characters.
> > 
> > As stated above, I think the negative expand is forbidden for monospace
> > or charcell fonts, according to X spec.
> 
> In practice that would mean that programs using monospace or charcell
> are restricted to a given set of languages, excluding Thai, Arabic,
> all indic languages, etc.

In fact, they should have been said to be restricted to "UCS" support.
The special treatment for combining characters can be considered as
"implementation level 2" in ISO/IEC 10646-1.

For emacs, it's different, as it has its own multilingual model.
But the concept of combining characters distinguishing still applies.

> > So, rendering engines should
> > also use special placement algorithm to combine the characters, like
> > what has been done in xterm or emacs.
> 
> So, I think the idea of X spec charcell fonts is obsolete; it don't allow
> good output for the user.

Well, I don't think so. I don't have any authority about the X spec, anyway.
It's my own induction from reading ISO/IEC 10646 and the Unicode book,
in combination with the XLFD spec.

> What is wanted is "unvariable column with" display, with a colum that can
> be the result of one or more chars, either by combination of accent like
> chars over a previously typed base char; or the replacement with a completly
> different glyph (eg: ligatures).

This has been treated by enhancing the screen buffer size by two or three
characters per cell for the combining characters in those mentioned apps.
And UCS character properties have been employed both in rendering process
and in editing behaviors (e.g. cursor movements in gtk+ 2.0). All are in
terms of UCS, not any specific language.

> > The exception is for proportional fonts, where negative expand is allowed.
> 
> Is that checked somewhere in X libs ? I often used proportional fonts
> where only monospaced or charcell were expected and it worked (well, the
> output may be very ugly, as the columns were all out of sync; but I never
> got any error message or crashing nor anything like that)

Not in X libs, I suppose. I find Motif widgets reject characters of
zero width when applying monospace fonts. Moreover, xmbdfed refuses to
manage the fonts properly. (Behind the scene, those Thai screen fonts are
polished using "vim" after "xmbdfed" before releasing.) And I refrain
from convincing the author of xmbdfed to support such Thai hack, after
reading the specs I mentioned above.

Regards,
-Thep.
-- 
Theppitak Karoonboonyanan
Information Research and Development Division, NECTEC
http://www.links.nectec.or.th/~thep/  mailto:[EMAIL PROTECTED]
_______________________________________________
I18n mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/i18n

Reply via email to