bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#47711: bug#48841: bug#47711: bug#48841: bug#47711: [PATCH VERSION 2]


From: Dmitry Gutov
Subject: bug#47711: bug#48841: bug#47711: bug#48841: bug#47711: [PATCH VERSION 2] Add new `completion-filter-completions` API and deferred highlighting
Date: Wed, 8 Nov 2023 03:06:48 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0

On 07/11/2023 14:13, João Távora wrote:
Any objections?  Seems to speed it up when flex is the preferred
completion style outside icomplete.  These are average times
collected from the instrumentation of the above
completion-all-completions when doing a M-: (setq i TAB)

I just used my normal Emacs session for this.

with lazy hilit:      0.104536125
without lazy hilit:   0.172522571

IIUC the problem with the default completion-at-point UI here is that is prints all completions anyway, in the buffer *Completions*. And so it applies syntax highlighting to them as well, and does that eagerly (as opposed to e.g. doing that via jit-lock).

If you instrumented only the 'completion-all-completions' call, then that might miss the subsequent time spent in sorting.

But speaking of the case when the *Completions* buffer isn't shown yet, the code calls something similar to completion-try-completion, which ultimately goes through completion-pcm--find-all-completions. Does it currently apply faces too (in the default, non-lazy scenario)?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]