GNU Emacs

49.3.4 Minibuffer Keymaps

The minibuffer has its own set of local keymaps; they contain various completion and exit commands.

  • minibuffer-local-map is used for ordinary input (no completion).

  • minibuffer-local-ns-map is similar, except that SPC exits just like RET.

  • minibuffer-local-completion-map is for permissive completion.

  • minibuffer-local-must-match-map is for strict completion and for cautious completion.

  • minibuffer-local-filename-completion-map is like the two previous ones, but specifically for file name completion. It does not bind SPC.

By default, TAB, SPC and ? do completion in minibuffer-local-completion-map. If you commonly complete over collections that have elements with space or question mark characters in them, it may be convenient to disable completion on those keys by putting this in your init file:

(define-key minibuffer-local-completion-map " " 'self-insert-command)
(define-key minibuffer-local-completion-map "?" 'self-insert-command)