Subject: Re: bug#48153: 28.0.50; minor mode keymaps should not override keymap given to read-from-minibuffer

From: Jimmy Yuen Ho Wong <[email-masked]>
Date: Wed, 5 May 2021 14:24:22 +0100

Ok let me summarize the issue here.

1. On emacs 27, minor mode keybindings will only override the key
bindings given to read-from-minibuffer after the second invocation of
the minibuffer, but doesn't on the first invocation.
2. On emacs 28, minor mode keybindings override the key bindings given
to read-from-minibuffer at all times.
3. But, `minor-mode-overriding-map-alist` does not override the
override in effect in the minibuffer like other buffers.

My expectation is when a keymap is explicitly given to
read-from-minibuffer, the key bindings in it should take precedence,
but it doesn't. As you can see from the snippet from my last email,
both ido-completion-map and test-mode bind to C-k, I expect the C-k
binding in ido-completion-map to take effect inside the minibuffer,
without being overridden by any minor modes in effect inside the
minibuffer. If this is not to be desired, I'd expect setting
minor-mode-overriding-map-alist or the usual key binding lookup search
algorithm to work inside the minibuffer.

Does it make sense?

Jimmy

On Wed, May 5, 2021 at 2:12 PM Gregory Heytings <[email-masked]> wrote:
>
>
> >>> Why would they not?  The minibuffer behaves, in that respect, like any
> >>> other buffer.  Note that they do so only when the minor mode is
> >>> enabled in the minibuffer.
> >>
> >> Because the minibuffer does not behave like any other buffers. Setting
> >> `minor-mode-overriding-map-alist` has no effect, so I think either the
> >> minibuffer really needs to behave like any other buffer, or
> >> special-cased and documented the ways it differs from regular buffers.
> >
> > I admit that I've lost the context in this discussion.  I'm CC'ing
> > Stefan in the hope he could tell whether we do or don't have a problem
> > here; if Stefan is unable to do that, either, we will unfortunately have
> > to get back to the beginning and explain what kind of problems the
> > current behavior causes.  Because in general what Jimmy described in the
> > original report sounds the expected behavior to me.
> >
>
> I admit I'm lost, too.  The description of the problem has changed several
> times, and what was described in the original report is the actual
> behavior.  Of course I may be missing something; I'm not fortunate enough
> to have a crystal ball, like Stefan ;-)