GNU bug report logs -
#54374
29.0.50; previous-completion fails at beginning of completions buffer
Previous Next
Reported by: Juri Linkov <juri <at> linkov.net>
Date: Sun, 13 Mar 2022 18:14:02 UTC
Severity: normal
Merged with 55289,
55430
Fixed in version 29.0.50
Done: Juri Linkov <juri <at> linkov.net>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
>> Thanks, this fixed the issue. And I noticed another one: at the
>> beginning of the buffer previous-completion wraps to the end of the buffer,
>> not to the beginning of the last completion.
>>
>> Also when point at the last completion, next-completion
>> jumps to the end of the buffer instead of wrapping to the
>> first completion.
>
> I cannot replicate this issue in every case, but only if the last option
> has completion annotation. It should be fixable by checking for these
> kinds of edge-cases, but it might also be better to reconsider if
> next-completion should be using `mouse-face' for navigation, or if a
> special text property might be more elegant?
I agree that `mouse-face' is unsuitable for detecting the completion
boundaries, and it causes other problems: typing RET on the completion prefix
or on the completion suffix/annotation causes the error:
Debugger entered--Lisp error: (error "No completion here")
error("No completion here")
choose-completion(13 nil)
funcall-interactively(choose-completion 13 nil)
command-execute(choose-completion)
So a special text property could also help to detect the completion for RET,
if there are no such text properties already. But I see there is the
text property 'completion--string'. So maybe it could be extended to cover
prefix and suffix/annotation as well.
This bug report was last modified 2 years and 358 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.