[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#54374: 29.0.50; previous-completion fails at beginning of completion
From: |
Juri Linkov |
Subject: |
bug#54374: 29.0.50; previous-completion fails at beginning of completions buffer |
Date: |
Mon, 14 Mar 2022 10:30:56 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) |
> 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?