I've finally properly configured my xkb and noticed the following
misfeature (other users are reporting that, too).
Pre-notice for non-English-only users: when xkb switches "Xkb Group"
(e.g., from English to Cyrillic), it sends a special keysym
`iso-next-group' to a program.
Xemacs needs to somehow handle this keysym specially in two cases:
- when user is switching the Xkb group, XEmacs says that
"'iso-next-group' not defined". It should not. The following patch
fixes that for both Mule and non-Mule (thanks to awn for proper
defun) (is the [Control iso-next-group] handling really necessary?):
RCS file: keydefs.el,v
retrieving revision 1.1
diff -u -r1.1 keydefs.el
--- lisp/keydefs.el 2001/07/28 19:11:19 1.1
+++ lisp/keydefs.el 2001/07/28 19:13:35
＠＠ -654,4 +654,16 ＠＠
(define-key global-map 'insertchar 'function-key-error)
(define-key global-map 'deletechar 'delete-char)
+;;; Special handling for `iso-next-group'
+(defun noop-keysym ()
+ "Noop function that doesn't abort the isearch mode."
+ (if isearch-mode (isearch-message))
+(put 'noop-keysym 'isearch-command t)
+(global-set-key 'iso-next-group 'noop-keysym)
;;; keydefs.el ends here
Second issue is with "C-h k" sequence. You cannot look what is bound
to a Cyrillic character. When you try to do that, the sequence of
keys pressed is
C-h k iso-next-group Cyrillic_ef
and so it shows you what is bound to 'iso-next-group' keysym. I can
not understand how to fix that. C-h k should somehow ignore certain
keysyms completely, or something like that.
The second issue is less important than the first one, which I
consider worth fixing in the next XEmacs release.