[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#68338: 30.0.50; Repeat mode and input methods
From: |
Stefan Monnier |
Subject: |
bug#68338: 30.0.50; Repeat mode and input methods |
Date: |
Thu, 11 Jan 2024 22:31:33 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
>> For the record and AFAIU, it seems that having an input method results
>> in having a translation keymap (see "quail.el"). And OTOH, repeat-mode
>> sets a transient keymap (see 'set-transient-map' from "subr.el"). So
>> maybe there is something going on here?
>
> Here is the simplest test case without repeat-mode:
>
> (progn
> (set-transient-map (define-keymap "o" #'other-window))
> (other-window 1))
Indeed, in `quail-input-method` I see we have some ad-hoc support for
`C-u` which has not been made more generic to support other transient
keymaps.
I suspect all it takes is to change the:
(not (eq (cadr overriding-terminal-local-map)
universal-argument-map))
so it recognizes any transient keymap rather than only
`universal-argument-map`.
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.
Stefan