bug#81645: 32.0.50; Annotations break *Completions* navigation in vertical format
Sean Whitton <[email protected]>
| Newsgroups | gmane.emacs.bugs |
|---|---|
| Message-ID | <[email protected]> |
Eli Zaretskii [17/Aug 5:26pm +03] wrote: >> Cc: Eli Zaretskii <[email protected]>, Sean Whitton <[email protected]> >> From: Stephen Berman <[email protected]> >> Date: Mon, 17 Aug 2026 16:06:06 +0200 >> >> 0. emacs -Q >> 1. (setopt completions-format 'vertical) >> 2. Sanity check: Typing `M-x auto- TAB' pops up the *Completions* buffer >> and you can navigate up and down through each column by typing >> `M-<DOWN>' and `M-<UP>' with wrapping from the last to the first >> candidate and vice versa. >> 3. Now type `M-x abbrev- TAB', then repeatedly type `M-<DOWN>': after >> the last candidate point wraps to the second instead of the first >> candidate. >> 4. Now type `M-x dabbrev- TAB'. Now typing `M-<DOWN>' once moves to >> last candidate, but repeating `M-<DOWN>' does not move point (in >> particular, no wrapping). Now typing `M-<UP>' moves point back to >> the first candidate, but typing `M-<UP>' again move point not to the >> beginning of the last candidate but to the middle of the annotation >> "(M-/)" affixed to the candidate. >> >> The problems in 3 and 4 are due to the annotations in the *Completions* >> buffer. The attached patch fixes these problems, so that navigation in >> 3 and 4 work as in 2 according to my testing. I think this patch should >> be applied to the release branch because the type of navigation in >> vertical format illustrated by 2 was introduced in Emacs 31 by commit >> 77ca60b48d01, which, however, failed to take annotations into account. > > I think this is fine to install on the emacs-31 release branch, > because the code it changes is specific to the 'vertical' > completions-format, which is new in Emacs 31. > > Sean? Okay with me too. -- Sean Whitton