Subject: bug#56682: Fix the long lines font locking related slowdowns

From: Dmitry Gutov <[email-masked]>
Date: Sun, 7 Aug 2022 14:14:24 +0300

On 07.08.2022 02:29, Gregory Heytings wrote:
> 
>>> Especially given that the said correctness has always been relative. 
>>> So it's not like we're leaving the heaven of 100% correctness and 
>>> falling into the hell of 10% correctness.  A more reasonable view of 
>>> the situation is that we had 90% correctness and now have,
>>
>> As someone who worked on different major mode and syntax-ppss itself a 
>> little, that feels moderately insulting.
>>
>> No: we strive to close to 100% correctness in supporting language 
>> syntax and can often reach it with moderate effort (programming-wise).
>>
> 
> It isn't meant to be insulting, and I think you understood that.  My 
> experience is simply that highlighting in Emacs is definitely not "close 
> to 100% correct", whatever be the mode.  The most correct one is perhaps 
> emacs-lisp-mode (unsurprisingy).

Have you ever managed to trigger incorrect highlighting in a JSON file?

Without the recent changes, that is.

>>> in files with "loo long lines" and only in those files, 60% correctness.
>>
>> Does the attached screenshot look like 60% correctness to you?
>>
> 
> A small sample of a big file is definitely not representative, and I 
> think you understood that.

Did I need to send the screenshots of every screen? Like I said, more 
than half of the file was like that.

And then I restarted with 'emacs -Q', and the result looked even worse.

>> To me, it's more like -60%. Or at least, that's what the utility of 
>> such highlighting will be (negative).
>>
> 
> In which case you should turn highlighting off in such files.  That's 
> what all other editors do anyway.

That's the same as saying the user should turn off font-lock if they 
experience performance problems.

Except in this case they would still have choice to suffer a little in 
the performance department (and the amount of said suffering will highly 
depend on their use case) but keep good syntax highlighting.