emacs-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] Re: cc-mode fontification feels random


From: Eli Zaretskii
Subject: Re: [PATCH] Re: cc-mode fontification feels random
Date: Mon, 30 Aug 2021 22:25:31 +0300

> Date: Mon, 30 Aug 2021 18:50:34 +0000
> From: Alan Mackenzie <acm@muc.de>
> Cc: emacs-devel@gnu.org
> 
> The following patch is an attempt to improve this situation.  It is best
> used with jit-stealth-lock enabled.  I have tried it out with the
> following settings:
> 
>     jit-lock-stealth-load: 200 ; i.e. inactive.
>     jit-lock-stealth-nice: 0.1 ; 100 ms between fontifying stealth
>                                  chunks.
>     jit-lock-stealth-time: 1   ; 1 second idle time before stealth kicks
>                                  in.
> 
> Whenever a new found type is entered into the CC Mode table, it marks
> all occurrences of the type in the buffer for fontification (by setting
> the 'fontified text property to nil on it), and causes an immediate
> redisplay when there are occurrences of the new type in a window.

So you are saying that this will cause the display of the visible
portion of the window to flicker whenever jit-lock-stealth finds such
a "new type"?  That could annoy, can't it?  jit-lock-stealth is for
fontifying portions of the buffer(s) that are not on display, it would
be wrong for it to apply this enhancement, I think, certainly by
default.

And jit-lock-stealth-time of 1 sec is too short.  I use 16, because
once jit-lock-stealth starts fontifying a chunk, Emacs can be
relatively slow to react to keyboard input, so I prefer to let
jit-lock-stealth start its thing only when there's a very good chance
I indeed stopped typing, not just thinking about something for a
second or two.

> I think stealth lock could be enhanced by having it fontify several
> 500-byte chunks together, say until 0.05s time has been taken up.  This
> could speed up stealth fontification while still leaving the keyboard
> responsive to the user.

Users can already arrange for that by manipulating the
jit-stealth-lock parameters.  Why should we change code to force upon
everyone what seems like a good idea to you (but isn't a good idea
IME, see above)?  If you want that, you can easily arrange for Emacs
to behave like that without changing any code.



reply via email to

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