>>>> "Stefan" == Stefan Holst
<holst(a)mathematik.uni-mainz.de> writes:
Stefan> Hi, with the sjt-xft branch and a default font that is a
Stefan> truetype font available in 10646 encoding, I don't get the
Stefan> correct character if I try evaluate (unicode-to-char 0945)
Stefan> This works fine in 21.5-b19 without the xft unfortunately
But not via ISO 10646---I'm fairly sure that it's being presented via
a CMap as an ISO 8859-7 font, else XEmacs couldn't use it.
Stefan> Under xft I get the message: (font/notice) Unable to
Stefan> instantiate font for charset greek-iso8859-7, face default
Fix the entry for Greek in "struct charset_reporter charset_table" at
line 1143 of objects-x.c. (Of course this table should be
Lisp-visible, but it hasn't evolved to that point yet.) If I read ISO
639-2 correctly (I can't seem to access ISO 639-1), that ISO 639 tag
should be "el", not "gr". Check that your ISO 10646 font supports
"el" (it should be in the long string of x|y|z in the lang property,
these are part of the full font descriptor spewed by the debug code to
stderr when the font is initialized---if your XEmacs doesn't do this,
update to current sjt-xft, which does by default).
Thanks for the report, and my apologies for the inconvenience. A
patch will be in CVS later. Do you mind if I cite you in the
ChangeLog? Like this:
2005-03-10 Stephen J. Turnbull <stephen(a)xemacs.org>
* objects-x.c (charset_table): Fix ISO 639 code for Greek. Reported
by Stefan Holst <holst(a)mathematik.uni-mainz.de>.
Call for volunteers:
I would *really* appreciate a patch to make that table Lisp-visible if
somebody has the skills and time---that would really make this branch
much more useful, I think. I don't, right now.
Suggestions:
Basic approach: make the table a hash-table with Mule charsets as
keys, values would be Lisp vectors. Stuffing the table needs to go
into complex_vars_of_objects_x or maybe reinit_objects_x.
Advanced: (1) allow aliasing by letting the first element of the
value be a charset to be rehashed, otherwise the language description
string. (2) Cache the FcCharSet objects for the collections (eg,
Latin-1 is a collection that covers many Western European languages).
Blue sky: Provide design documentation and (if appropriate)
implementation for whether and how to unify FcCharSets with Mule char-tables.
--
Institute of Policy and Planning Sciences
http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Ask not how you can "do" free software business;
ask what your business can "do for" free software.