In article <[EMAIL PROTECTED]>, Juri Linkov <[EMAIL PROTECTED]> writes:
> > In toplevel form:
> > quail/czech.el:42:1:Error: Invalid Quail key `[kp-1]'
> > make[1]: *** [/var/local/cc/news/emacs/leim/quail/czech.elc] Fehler 1
> > make[1]: Leaving directory `/var/local/cc/news/emacs/leim'
> > make: *** [leim] Fehler 2
> Earlier I installed an obvious fix for the error-checking rule in
> quail-defrule-internal, and now it started revealing errors in
> quail files.
> It issues this error if a key is not a string, but perhaps should also
> take into account if the key is a vector.
> Handa-san, could you confirm this is the right fix?
Yes. KEY is valid if it is valid for define-key, at least
for quail. However, AFAIK, such a key as kp-1 is never
given to an input method function, so I think these lines in
czech.el are just useless.
([kp-1] ?1)
([kp-2] ?2)
See this code of read_char in keyboard.c.
[...]
/* Pass this to the input method, if appropriate. */
if (INTEGERP (c)
&& ! NILP (Vinput_method_function)
/* Don't run the input method within a key sequence,
after the first event of the key sequence. */
&& NILP (prev_event)
&& (unsigned) XINT (c) >= ' '
&& (unsigned) XINT (c) != 127
&& (unsigned) XINT (c) < 256)
{
[...]
I don't remember why we limit it only to a character event,
but allowing such a symbolic event as kp-1 now is dangerous.
So, I agree with the current fix.
---
Kenichi Handa
[EMAIL PROTECTED]
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug