From: Stefan Kangas Date: Sun, 16 Oct 2022 06:27:16 +0000 (+0200) Subject: Merge from origin/emacs-28 X-Git-Tag: emacs-29.0.90~1616^2~595 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=07222447b6c9e75b713fe3b3954952fbb0e40c71;p=emacs.git Merge from origin/emacs-28 067361f3a2 ; Improve documentation of 'C-M-i' fdb6f7cf26 ; Fix documentation of 'comp-enable-subr-trampolines' be30369e01 ; Avoid incorrect indentation in an @example. 4bd3dd505e Document how to control where the *.eln files are written b7d7c2d9e9 Add cross-reference to alternative syntaxes for Unicode # Conflicts: # doc/emacs/custom.texi --- 07222447b6c9e75b713fe3b3954952fbb0e40c71 diff --cc doc/emacs/programs.texi index 30c7f106e50,a0c044b920f..818deb39415 --- a/doc/emacs/programs.texi +++ b/doc/emacs/programs.texi @@@ -1434,23 -1413,36 +1428,40 @@@ but you can also complete symbol names @cindex Lisp symbol completion @cindex completion (Lisp symbols) In most programming language modes, @kbd{C-M-i} (or - @kbd{M-@key{TAB}}) invokes the command @code{completion-at-point}, - which generates its completion list in a flexible way. If Semantic - mode is enabled, it tries to use the Semantic parser data for - completion (@pxref{Semantic}). If Semantic mode is not enabled or - fails at performing completion, it tries to complete using the - selected tags table (@pxref{Tags Tables}). If in Emacs Lisp mode, it - performs completion using the function, variable, or property names - defined in the current Emacs session. + @kbd{M-@key{TAB}}@footnote{ + On graphical displays, the @kbd{M-@key{TAB}} key is usually reserved + by the window manager for switching graphical windows, so you should + type @kbd{C-M-i} or @kbd{@key{ESC} @key{TAB}} instead. + }) invokes the command @code{completion-at-point}, which generates the + list of possible completions for the symbol at point. This command + uses the available support facilities to come up with the completion + candidates: + + @itemize @bullet + @item + If Semantic mode is enabled (@pxref{Semantic}), the command tries to + use the Semantic parser data for completion. + + @item + If Semantic mode is not enabled or fails at performing completion, the + command tries to complete using the selected tags table (@pxref{Tags + Tables}); you need to visit the tags table with @w{@kbd{M-x + visit-tags-table}} for that to work. + + @item + In Emacs Lisp mode, the command performs completion using the + function, variable, or property names defined in the current Emacs + session. + @end itemize In all other respects, in-buffer symbol completion behaves like -minibuffer completion. For instance, if Emacs cannot complete to a -unique symbol, it displays a list of completion alternatives in -another window. @xref{Completion}. +minibuffer completion. For instance, if Emacs cannot complete to +a unique symbol, it displays a list of completion alternatives in +another window. Then you can use the keys @kbd{M-@key{DOWN}} and +@kbd{M-@key{UP}} to navigate through the completions displayed +in the completions buffer without leaving the original buffer, +and the key @kbd{M-@key{RET}} to insert the currently highlighted +completion to the buffer. @xref{Completion}. In Text mode and related modes, @kbd{M-@key{TAB}} completes words based on the spell-checker's dictionary. @xref{Spelling}.