>>>> "A" == Alexey Mahotkin
<alexm(a)hsys.msk.ru> writes:
Hrvoje> * AFAIK x_keysym_to_character is not xkb-specific.
A> I always thought that x11/keysymdef.h is defined only for xkb (IMHO,
A> xmodmap is able only to specify numeric character codes and does not
A> know about Cyrillic_XXX et al).
keysymdef.h has been around for eons. I.e. before X11R6.
Unfortunately, Russian has several possible encodings, mostly due to
historical reasons I guess.
Since XEmacs has coding systems, you would think if you simply told
xemacs which encodings your system was using (or if it could guess)
then everything should work. This is not quite true.
Probably Koi8 is the dominant encoding in Russia, and it would be more
useful for xemacs to conform to that. But most of the computers I
have acccess to have iso-8859-5 fonts.
Unfortunately, although it shouldn't matter what internal
representation is used for characters internally, xemacs prefers to
have the fonts it uses match the encoding in the internal
representation.
Alexey, I encourage you to try to be the Russian maintainer for
XEmacs.
Doing things properly might be hard, though.
Perhaps Ben will Unicodeify XEmacs, and then we will need a general
mechanism to map any characters to any fonts, and russian support
should be simply a matter of writing the appropriate mapping tables.
A> (I just wanted to hardcode those tables into src/event-Xt.c, but do
A> not object to implement modifying those tables). I think they should
A> be predefined in stock XEmacs w/o any Lisp definitions (in style of
A> cyrillic[] array that currently exists).
I wrote that code in event-Xt.c, but I did it for all character sets,
without any special attention to Cyrillic. Or even any testing for Cyrillic.
When designed properly, there should only be one internal
representation for a given character - i.e. we should not have
iso8859-5 and koi8 represented separately internally. This means that
the event-Xt.c code should not know anything about koi8.
A> I slightly feel like opening Pandora's box. :)
Mule is hard. Good luck.