Next: , Up: Completion


9.3.1 Completion Example

A concrete example may help here. If you type M-x au <TAB>, the <TAB> looks for alternatives (in this case, command names) that start with ‘au’. There are several, including auto-fill-mode and auto-save-mode—but they are all the same as far as auto-, so the ‘au’ in the minibuffer changes to ‘auto-’.

If you type <TAB> again immediately, there are multiple possibilities for the very next character—it could be any of ‘cfilrs’—so no more characters are added; instead, <TAB> displays a list of all possible completions in another window.

If you go on to type f <TAB>, this <TAB> sees ‘auto-f’. The only command name starting this way is auto-fill-mode, so completion fills in the rest of that. You now have ‘auto-fill-mode’ in the minibuffer after typing just au <TAB> f <TAB>. Note that <TAB> has this effect because in the minibuffer it is bound to the command minibuffer-complete when completion is available.