Open vbauerster opened 1 year ago
The default value for the completers
option includes word=all
which means "complete words from all buffers"
Oh wait, you mean <c-x>
completion, not the standard completion mode.
I think this is intended behavior.
If your buffer is
some-word
some line
and you type oso<c-x>l
, it will suggest both lines.
However, adding anything else to the input (like m
) will disable the explicit line-completer again, so completers will be provided by the completers
option.
So <c-x>l
, <c-x>f
etc. are only useful when you select the result with <c-n>
.
You can add the behavior you expect with some mappings that manipulate the completers
option.
Maybe there is space to improve the default behavior.
so to rephrase, explicit completers are reset on further typing
second exec
in the reproducer operates in the context of client0
which happens to be buffer a
which is empty. My understanding that <c-x>l
in empty buffer should not aggregate complete candidates from other buffers, because its docs says l: line (current buffer)
. So exec i<c-x>ltest
in empty buffer should produce no complete candidates contrary to exec i<c-x>Ltest
.
My understanding that
l in empty buffer should not aggregate complete candidates from other buffers,
correct, and that does work: <c-x>l
only includes lines from the current buffer, as can be observed with <c-x>l<c-n>
But key insertion - like test
here - will reset the explicit completer, so it doesn't matter which one you used (same result if you used <c-x>f
)
Version of Kakoune
Kakoune v2022.10.31-64-g50978846
Reproducer
Outcome
buffer
a
contains no lines, but completions got acquired from different buffer.Expectations
no completions at all.
Additional information
No response