[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
9.3 Completion
Some arguments allow completion to enter their value. This means that after you type part of the argument, Emacs can fill in the rest, or some of it, based on what you have typed so far.
When completion is available, certain keys—<TAB>, <RET>, and <SPC>—are rebound to complete the text in the minibuffer before point into a longer string chosen from a set of completion alternatives provided by the command that requested the argument. (<SPC> does not do completion in reading file names, because it is common to use spaces in file names on some systems.) ? displays a list of the possible completions at any time.
For example, M-x uses the minibuffer to read the name of a command, so it provides a list of all Emacs command names for completion candidates. The completion keys match the minibuffer text against these candidates, find any additional name characters implied by the text already present in the minibuffer, and add those characters. This makes it possible to type M-x ins <SPC> b <RET> instead of M-x insert-buffer <RET>, for example.
Case is significant in completion when it is significant in the argument you are entering (buffer names, file names, command names, for instance). Thus, ‘fo’ does not complete to ‘Foo’. Completion ignores case distinctions for certain arguments in which case does not matter.
Completion acts only on the text before point. If there is text in the minibuffer after point—i.e., if you move point backward after typing some text into the minibuffer—it remains unchanged.
9.3.1 Completion Example | Examples of using completion. | |
9.3.2 Completion Commands | A list of completion commands. | |
9.3.3 Strict Completion | Different types of completion. | |
9.3.4 Completion Options | Options for completion. |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |