[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#45767: bug#45768: icomplete-mode does not provide in region completi
From: |
Stefan Monnier |
Subject: |
bug#45767: bug#45768: icomplete-mode does not provide in region completion for dabbrev-completion |
Date: |
Fri, 06 May 2022 15:38:54 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) |
Lars Ingebrigtsen [2022-05-06 21:04:18] wrote:
> simon254@mailbox.org writes:
>
>> emacs -Q
>> in *scratch* evaluate
>> (setq icomplete-in-buffer t)
>> (icomplete-mode t)
>>
>> type:
>> asdf1
>> asdf2
>> asdf followed by C-M-/ (dabbrev-completion)
>> -> default completion is invoked, not icomplete-mode
>
> (I'm going through old bug reports that unfortunately weren't resolved
> at the time.)
>
> I can reproduce this on the current trunk, too, but skimming the code,
> I'm not quite sure how this is supposed to work. I've added Stefan to
> the CCs; it looks like he added the icomplete-in-buffer thing back in
> 2013.
The problem is that `icomplete-in-buffer` relies on
`completion-in-region-mode-predicate` being passed to
`completion-in-region` (this is needed so Icomplete can know when you've
finished the completion), which `completion-at-point` does but which
`dabbrev-completion` does not do, so `icomplete-in-buffer` is not used
when completing via `dabbrev-completion`.
Stefan