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
Message #20 received at 54374 <at> debbugs.gnu.org (full text, mbox):
> This seems to fix it:
>
> diff --git a/lisp/simple.el b/lisp/simple.el
> index accc119e2b..7d47aba1ee 100644
> --- a/lisp/simple.el
> +++ b/lisp/simple.el
> @@ -9125,7 +9125,7 @@ next-completion
> (unless (get-text-property (point) 'mouse-face)
> (goto-char (next-single-property-change (point) 'mouse-face nil end)))
> (setq n (1- n)))
> - (while (< n 0)
> + (while (and (< n 0) (< 1 (point)))
> (let ((prop (get-text-property (1- (point)) 'mouse-face)))
> ;; If in a completion, move to the start of it.
> (when (and prop (eq prop (get-text-property (point) 'mouse-face)))
Thanks, I confirm that it doesn't fail.
However, there is some strange behaviour: when point is at the beginning
of the completion buffer, then previous-completion switches to the minibuffer.
But if point is at the first completion, then previous-completion wraps
to the last completion. Shouldn't point at the beginning of the buffer
wrap to the last completion 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.