Subject: bug#16528: 24.3; too many keybindings in minibuffer-local-completion-map

From: Stefan Monnier <[email-masked]>
Date: Thu, 23 Jan 2014 13:03:35 -0500

> minibuffer-local-completion-map binds SPC to minibuffer-complete-word
> and ? to minibuffer-completion-help.  It should be possible without
> too much hackery to run completing-read in a less obtrusive mode
> where these keys simply insert the respective characters.

Indeed, this binding can be annoying.  Some people use it heavily (and
rarely use TAB, IIUC), tho, so removing it is a bit tricky, but it was
annoying enough for files that file-name completion now uses a special
map where SPC is not bound to minibuffer-complete-word any more.

I can see a few different directions we could go to try and solve those
problems:
- change the default completion map so SPC is not bound any more.
- provide some way to call completing-read, specifying that this
  particular completion should, just like file-name completion, not bind
  SPC to minibuffer-complete-word.
- change the behavior of minibuffer-complete-word to be more DWIMish.
  For example, if completion can't be performed (no valid candidates, or
  no shared prefix among the candidates), instead of beeping, it could
  insert a SPC.

I haven't thought much about ? because that one has not been nearly as
annoying.  The problem is largely similar, except that the harms are all
much less severe (both of the current situation and of the possible
fixes).

        Stefan