GNU bug report logs -
#56682
Fix the long lines font locking related slowdowns
Previous Next
Full log
Message #1459 received at 56682 <at> debbugs.gnu.org (full text, mbox):
> Date: Mon, 15 Aug 2022 01:07:08 +0300
> Cc: 56682 <at> debbugs.gnu.org, gregory <at> heytings.org, monnier <at> iro.umontreal.ca
> From: Dmitry Gutov <dgutov <at> yandex.ru>
>
> On 14.08.2022 21:27, Eli Zaretskii wrote:
> >> Date: Sun, 14 Aug 2022 21:14:00 +0300
> >> Cc: 56682 <at> debbugs.gnu.org, gregory <at> heytings.org, monnier <at> iro.umontreal.ca
> >> From: Dmitry Gutov <dgutov <at> yandex.ru>
> >>
> >> The implementation of the idea that Gregory mentioned (font locking
> >> reasonably accurate even when it doesn't have access to the whole
> >> buffer) will have to be done in Lisp anyway. So that's where the
> >> narrowing should be applied too.
> >
> > I don't see how it follows. If we decide (and I don't say we did, but
> > if we do) that fontification-functions must run narrowed, then they
> > will run narrowed, and the best place to do that is in the caller.
>
> Only if we somehow decided that it makes sense to always use the same
> narrowing bounds. But as experiment shows, font-lock can use 100x larger
> narrowing, and still perform well.
So what? The proponents of the widening claim that they need to go to
BOB, and no "arbitrary" narrowing smaller than that will suffice.
And btw, I have very different impression of what happens with 100x
larger narrowing on my machine and with unoptimized builds.
> Further, the thing which is going to call the language-specific
> safe-position-finding logic is likely to want to update the bounds of
> the narrowing (to then call syntax-ppss within those bounds, where START
> is a "safe" position).
>
> So yeah, the font-lock related widen/narrowing logic should indeed live
> in one place. And until now it has resided in font-lock-fontify-region.
Since when is font-lock-fontify-region specific to a language? It is
as general as xdisp.c.
This bug report was last modified 2 years and 9 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.