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: Alan Mackenzie
Subject: Re: [PATCH] Re: cc-mode fontification feels random
Date: Tue, 31 Aug 2021 21:17:12 +0000

Hello, Stefan.

On Tue, Aug 31, 2021 at 14:56:13 -0400, Stefan Monnier wrote:
> > So, it seems I want something like stealth, but not quite.  How about,
> > say jit-lock-single-fontification - it would apply to individual buffers
> > only, would scan through the buffer precisely once, and would do just
> > enough 500-byte chunks at at time to take 0.05 seconds (configurable).

> I still don't think it's a good use of resources: fontifying the whole
> buffer is usually completely unnecessary because most of that buffer
> will never be displayed, and because we can fontifying them fast enough
> that doing it ahead of time won't save us enough time when we do display
> those parts.

It is the incorrectness of the display of some CC Mode types, rather
than the speed of fontification which is the issue here.

> [ Typical concrete problems show up when you visit a hundred files
>   (e.g. for a search&replace, or when loading your desktop.el) after which
>   your Emacs stays busy for a long time fontifying all those buffers.  ]

It may be busy, but it remains responsive, as in stealth fontification.
Is this really a problem, as long as one's running on mains power, not a
battery.

> For my own use, the benefit of "correct" highlighting of types is not
> worth any effort at all.

I envisage this facility being enabled by a user option.

> Maybe some users would enjoy the improved highlighting of your new
> code, ....

Daniel Colascione, the OP of this thread, most assuredly would.

> .... but if so I think you'd be better off running an ad-hoc timer
> that does nothing else than scan for type declarations (without doing
> the rest of font-lock).  It'll be faster and you won't need to care
> about what jit-lock does.

Thanks, that's a brilliant idea!  It will be somewhat faster rather than
much faster (because parsing declarations is what sucks up the time in
CC Mode's fontification), but as you say, assuming most parts of most
buffers never get displayed, it will be a net win.

It will be more work to code up, though.  I'm currently quite some way
into hacking up jit-lock-single-fontification, so I'm going to get that
working first to see how well it works.  Then I'll hack up your idea,
and confirm it works better.

>         Stefan

-- 
Alan Mackenzie (Nuremberg, Germany).



reply via email to

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