The term “completion” can mean different things in Emacs:
1. Input completion -- Completion of your input in the minibuffer.
‘M-x’, ‘C-x b’, ‘C-x C-f’, and with many other commands that prompt for input. There are various kinds of input completion, including these:‘partial-completion-mode’ (standard library complete.el). For example, command-name input ‘p-b’ can complete to ‘print-buffer’.2. Text completion -- Completion of words or abbreviations in a buffer other than the minibuffer. Example commands:
‘dabbrev’ – standard library `dabbrev.el’: Completes to words in current buffer and possibly other buffers. See DynamicAbbreviations.‘complete’ – standard library `completion.el’: Completes to words you have typed previously, or uses ‘dabbrev’ completions if no other completions are found. Saves completions between sessions (persistent).‘complete-tag’ – standard library `etags.el’: Completes to a defined tag (e.g. a function or variable name). See EmacsTags‘pcomplete’ – standard library `pcomplete.el’: Completes function arguments. See ProgrammableCompletion.3. Help about completions -- The possible completions in the sense of 1 or 2 are displayed; this help is also sometimes referred to as “completion”.
‘icomplete’ – standard library `icomplete.el’: Shows the possible completions for the current text in the minibuffer.See also CategoryCompletion.