Subject: bug#76617: completing-read should accept spaces in require-match nil mode

From: Drew Adams <[email-masked]>
Date: Sun, 2 Mar 2025 19:39:11 +0000

> Perhaps SPC and ? should self-insert when they do not extend the
> completion text at all.  Would that behavior be convenient?

I don't think so, but mine's just one opinion.

I think that would lead to confusion, hurting
more than helping.

Plus, with some completion "frameworks" (I'd
call them just packages that enhance/extend
completion possibilities) you can switch the
kind of completion/matching on the fly, with
the same pattern (input in the minibuffer).

And in that case SPC or ? could, after such
a switch, suddenly lead to completions, or
vice versa.

I really think that keys that have actions
such as what SPC and ? have had should not be
keys for printable (i.e., insertable) chars.
There's no more reason to have `?' not be
inserting than there is for `#' or `@' to not
be inserting.

Better to use unprintable keys for non-insert
actions.  In my code I use `M-SPC' in place
of `SPC' and `M-?' in place of `?', for those
actions.

In general, in editable buffers, users shouldn't
need to use `C-q' to insert printable chars.

Just one opinion.