aboutsummaryrefslogtreecommitdiffstats
path: root/java/res
diff options
context:
space:
mode:
authorStephen Berman2025-09-22 16:04:42 +0200
committerStephen Berman2025-09-22 16:04:42 +0200
commit77ca60b48d018425c95c110b4c736cddd2d1d336 (patch)
tree50bed0386450ddfafac63b0bd98739c47030da9a /java/res
parentaeadaf77488a85838547ed8253a2f0b017cf4774 (diff)
downloademacs-77ca60b48d018425c95c110b4c736cddd2d1d336.tar.gz
emacs-77ca60b48d018425c95c110b4c736cddd2d1d336.zip
Navigate *Completions* buffer based on 'completions-format'
This patch makes 'next-completion' and 'previous-completion' work in the vertical completions format analogously to how they work in the default horizontal format (bug#78959). It also fixes wrapping in the vertical format and confines navigation (including wrapping) in column-wise movement in the vertical format to the current line, analogously to how navigation (including wrapping) in line-wise movement in the horizontal format is confined to the current column. * doc/emacs/mini.texi (Completion): Fix several typos and improve wording is several places. (Completion Commands): Document navigation of the *Completions* buffer in the vertical format. Document the difference between format-sensitive movement and strictly column-wise or line-wise movement. Document 'minibuffer-complete-and-exit' and update the documentation of 'minibuffer-completion-auto-choose' and 'minibuffer-choose-completion'. Document the use of a numeric prefix argument with the navigation commands. (Completion Options): Rearrange and improve documentation of 'completions-sort', 'completions-format' and 'completion-auto-wrap', updating the latter to document the new behavior. * lisp/minibuffer.el (minibuffer-visible-completions-map): Rebind "<left>" to 'minibuffer-previous-column-completion' and "<right>" to 'minibuffer-next-column-completion'. (minibuffer-next-completion): Add check for whether completions format is vertical to decide whether to call 'next-line-completion' and replace calling 'next-completion' by 'next-column-completion'. (minibuffer-next-column-completion) (minibuffer-previous-column-completion): New commands. * lisp/simple.el (completion-list-mode-map): Rebind "<left>" to 'previous-column-completion' and "<right>" to 'next-column-completion'. (last-completion): Add handling for vertical completions format. (completion--move-to-candidate-end): Always move point to the position immediately after the last character of the completion candidate. This unifies the behavior, simplifies the implementation and facilitates implementing the improved navigation of the *Completions* buffer. (previous-column-completion, next-column-completion): New commands, replacing the previous definitions of 'previous-completion' and 'next-completion' to reflect their column-wise operation. Confine navigation (including wrapping) in vertical format to the current line. (previous-line-completion, next-line-completion): Implement line-wise navigation (including wrapping) through all completions in vertical format, not just those in the current column as in horiztonal format. Update doc strings. (next-completion, previous-completion): Redefine to call '{next,previous}-line-completion' when completions format is vertical and '{next,previous}-column-completion' otherwise. * test/lisp/minibuffer-tests.el (completions-format-navigation--tests): New function providing a template to define tests of the navigation and wrapping behavior with specified numbers of completion candidates. (completions-format-navigation-test-{2,3,4,5,10,15,16}): New tests.
Diffstat (limited to 'java/res')
0 files changed, 0 insertions, 0 deletions