GNU bug report logs - #68338
30.0.50; Repeat mode and input methods

Previous Next

Package: emacs;

Reported by: Gautier Ponsinet <gautier <at> gautierponsinet.xyz>

Date: Tue, 9 Jan 2024 08:32:02 UTC

Severity: normal

Found in version 30.0.50

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


Message #35 received at 68338 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Juri Linkov <juri <at> linkov.net>
Cc: 68338 <at> debbugs.gnu.org, Gautier Ponsinet <gautier <at> gautierponsinet.xyz>,
 Manuel Giraud <manuel <at> ledu-giraud.fr>
Subject: Re: bug#68338: 30.0.50; Repeat mode and input methods
Date: Thu, 11 Jan 2024 22:51:52 -0500
> I suspect all it takes is to change the:
>
>                    (not (eq (cadr overriding-terminal-local-map)
>                             universal-argument-map))

BTW, this is hence related to Bug#22958 where we fixed it for the
specific case of `C-u` but we now need to fix it more generally.

> IOW define something like a `keymap-transient-p` function, use it there,
> and make sure the keymaps installed by `set-transient-map` are recognized
> by that new function.

Maybe we can treat all `overriding-terminal-local-map` as "transient" in
this respect, as in the patch below.

It's a bit risky, admittedly.  But it would be useful to know what
breaks when we do that, to get a better understanding about what the
condition above should really test.


        Stefan


diff --git a/lisp/international/quail.el b/lisp/international/quail.el
index 56f049aedf5..af1335118a1 100644
--- a/lisp/international/quail.el
+++ b/lisp/international/quail.el
@@ -1324,9 +1324,7 @@ quail-input-method
                ;; binding in `universal-argument-map' just return
                ;; (list KEY), otherwise act as if there was no
                ;; overriding map.
-               (or (not (eq (cadr overriding-terminal-local-map)
-                            universal-argument-map))
-                   (lookup-key overriding-terminal-local-map (vector key))))
+               (lookup-key overriding-terminal-local-map (vector key)))
 	  overriding-local-map)
       (list key)
     (quail-setup-overlays (quail-conversion-keymap))





This bug report was last modified 1 year and 182 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.