[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#48356: 28.0.50; choose-completion discards the suffix after the comp
From: |
Juri Linkov |
Subject: |
bug#48356: 28.0.50; choose-completion discards the suffix after the completion boundary |
Date: |
Mon, 14 Mar 2022 20:53:15 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) |
>> For example when completing a file path "~/emacs/master/li|/calc", where
>> "|" is the cursor, and then the candidate "lisp" is selected in the
>> *Completions* buffer, the result is "~/emacs/master/lisp/". The prefix
>> "~/emacs/master/" is prepended to the selected candidate, but the suffix
>> "/calc" is discarded.
>
> Yup. That's listed under "bugs" at the beginning of minibuffer.el:
>
> ;; - choose-completion can't automatically figure out the boundaries
> ;; corresponding to the displayed completions because we only
> ;; provide the start info but not the end info in
> ;; completion-base-position.
>
>> ... and the suffix is preserved.
>
> Of course, the suffix should *not* be preserved when the minibuffer was
> "r|e-buf".
IMHO, the root of the problem is in completion-all-completions
that returns in the last `cdr' only the start of completions,
but not the end of completions.