Subject: RE: [External] : bug#16913: Please extend case-fold-search on-the-fly toggling

From: Drew Adams <[email-masked]>
Date: Mon, 13 Jun 2022 17:53:09 +0000

> > So I've now added an `M-c' command to `read-regexp' and made `rgrep'
> > heed that in Emacs 29.
> 
> Are you sure no one might want to use the global binding of M-c
> to capitalize words in the minibuffer?  While redefining it
> for read-regexp is fine, we need to allow disabling it,
> so I suggest to add ‘(defvar-keymap read-regexp-map …’.

(Sorry, I'm not following this thread.)

Please do _not_ co-opt global keys that can be used
in the minibuffer to edit input text.  The
minibuffer is above all a buffer for editing text.

If this is being done, it's shortsighted, IMO.

Too many people have too-limited an idea of what
the minibuffer is, is for, and how it can be used.
It's an extremely general, bendable, configurable
UI tool.

The more you impose key bindings in its map(s), the
more difficult you make it for users and libraries
to mold its behavior for particular uses or to
accommodate particular preferences.

If you really feel you must provide such a limited
way of interacting with a minibuffer, please do it
with a minor mode or a user option.

Please don't default-bind keys in the minibuffer
maps, especially keys for editing, searching,
query-replacing, etc. buffer text.  Force yourself,
if you must, to think of the minibuffer as an
ordinary text-editing buffer.

A minibuffer map that's particular to reading a
particular thing (e.g. a regexp) can arguably be
more open to key bindings that are specific to its
purpose.

But what Juri says here is 100% true, IMO.  Users
should be able to use normal editing keys, including
`M-C', on the minibuffer text when reading a regexp.