[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: scratch/backend-completion aaaa016056 2/2: Speed it up
From: |
Stefan Monnier |
Subject: |
Re: scratch/backend-completion aaaa016056 2/2: Speed it up |
Date: |
Sat, 03 Dec 2022 19:18:12 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
>> But I'm surprised it made things slow: this code should only be involved
>> when the user choose some *other* completion style, so could you check
>> which method of the completion table was invoked?
> It seems to be called with both `nil` and `lambda`. I've added this to the
> FIXME comment.
Hmm... can you get a backtrace for when it's called with `nil`?
> It made things slow because when selecting a candidate with
> fido-vertical-mode it did another useless 0.5s/1s lookup for the thing
> I had just selected.
Yes, it's only meant as a fallback case (and if we intend it to work
more or less acceptably we'd need to add some caching).
>> Maybe we should only use that code when `action` is one of `t` or `nil`?
> Maybe. Anyway in my tests it's working fine without it. But `nil` doesn't
> break them, so I'm fine if you add them. I'm just confused about the
> possible benefits that may come from that complexity. I wish you could
> post an illustrative example with some strings that a mere mortal might
> follow along.
As I said, it's for the case where the users want to use that completion
table with another completion-style.
Stefan