|
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)?
[Prev in Thread] | Current Thread | [Next in Thread] |