* This message was CC'ed to xemacs-pathes.
* Please reply directly becuase I'm not subscribed to list
I'm using XFree86 4.1.0 and XEmacs-nomule 21.4.4.
My native language is Russian and I use ru-keys.el[1] to assign appropriate
values to "ascii_character" property of Cyrillic_XXX keysyms. I want to
input Cyrillic chars in KOI8-R codepage, and ru-keys.el sets
ascii_character properties this way.
However, I found out that since 21.4.3 my keyboard becomes garbled each
time MappingModifier event occurs. After this event Cyrillic_XXX keysyms
produce characters which correspond not to "KOI8-R" codepage, but to
"ISO-8859-5" one.
Exploration of event-Xt.c led me to function
"maybe_define_x_key_as_self_inserting_character" which is called from
"x_has_keysym", which in turn is called from "x_reset_key_mapping",
which
is called each time Mapping* event occurs.
This function assigns self-insert command to keysym if it is not
defined in (current-global-map), but changes "ascii_character" property for
that keysym notwithstanding that keysym has some command bound to it and it
ascii_character property changed.
This is desired behavoir during start-up, but after that it causes harm to
users. I think that following patch could be used as remedy:
--- event-Xt.c.orig Thu Apr 12 21:23:40 2001
+++ event-Xt.c Tue Jul 31 01:14:56 2001
@@ -310,9 +310,11 @@
{
extern Lisp_Object Vcurrent_global_map;
extern Lisp_Object Qascii_character;
- Fput (symbol, Qascii_character, character);
if (NILP (Flookup_key (Vcurrent_global_map, symbol, Qnil)))
- Fdefine_key (Vcurrent_global_map, symbol, Qself_insert_command);
+ {
+ Fput (symbol, Qascii_character, character);
+ Fdefine_key (Vcurrent_global_map, symbol, Qself_insert_command);
+ }
}
}
PS1:
Here are headers from ru-keys.el I use:
;; ru-keys.el -- support for Russian keys for XEmacs.
;;
;; Version: 0.3.2
;;
;; Copyright (c) Business Computer Service, Ltd. 2000-2001
;; Written by Andrew W. Nosenko <awn(a)bcs.zp.ua>
;;
;; Latest version can be downloaded from:
;;
http://www.bcs.zp.ua/~awn/xemacs/ru-keys.el
--
Dmitry Astapov //ADEpt (mail-to: adept(a)umc.com.ua)