When the minibuffer offers tab completion, how can I make that case-insensitive?
Preferably a global setting that makes any completion – a filename, a command, ido, etc. – obey that setting.
Emacs Stack Exchange is a question and answer site for those using, extending or developing Emacs. It only takes a minute to sign up.Sign up to join this community
Sure. Set variable
t. Put this in your init file:
(setq completion-ignore-case t)
C-h v completion-ignore-case:
completion-ignore-caseis a variable defined in
C source code.
Its value is
nilmeans don't consider case significant in completion.
For file-name completion,
read-file-name-completion-ignore-casecontrols the behavior, rather than this variable.
For buffer name completion,
read-buffer-completion-ignore-casecontrols the behavior, rather than this variable.
Note that this is not a user option, and so is excluded from Customize. You can set it but you cannot set it using Customize. The most common use of it is to bind it (not assign it) in a given command. But nothing prevents you from assigning it, to affect the general behavior.