[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Using incremental parsing in Emacs
From: |
Eli Zaretskii |
Subject: |
Re: Using incremental parsing in Emacs |
Date: |
Mon, 06 Jan 2020 07:33:27 +0200 |
User-agent: |
K-9 Mail for Android |
On January 6, 2020 6:39:02 AM GMT+02:00, HaiJun Zhang <address@hidden> wrote:
> Could someone explain how the jit-lock in Emacs works in the following
> case?
>
> 1. emacs -Q
> 2. open the attachment file and goto end of buffer
> 3. M-x desktop-save and quit emacs
> 4. emacs -Q
> 5. M-x desktop-read
>
> I see the buffer is fontified correctly. Does it parse the whole
> buffer?
>
>
> 在 2020年1月6日 +0800 AM11:42,Eli Zaretskii <address@hidden>,写道:
> > > From: arthur miller <address@hidden>
> > > CC: "address@hidden" <address@hidden>,
> "address@hidden"
> > > <address@hidden>, "address@hidden" <address@hidden>
> > > Date: Sun, 5 Jan 2020 20:28:43 +0000
> > >
> > > When I said batch-processing I ment processing a file or chunk of
> buffer (region) just before it is to be
> > > displayed to a user. Same for other "insertions" from macro
> expansions or similar.
> >
> > Then we always do "batch processing", because the display engine has
> > no good idea what exactly changed in the buffer. So it always
> > processes some minimal chunk of text that it can prove to itself
> that
> > the changes were all inside that chunk.
> >
> > > I also don't think teee-sitter is needed for syntax coloring.
> Tree-sitter seems to be very expensive regex engine
> > > in that case.
> >
> > They claim to be less expensive than regexp-based coloring,
> especially
> > with very long lines.
> >
We never parse the whole buffer, only its chunk that is slightly larger than
what would be actually displayed in a window.
This works by the display engine calling the fontification-functions for the
buffer text it is about to display, whenever it finds a chunk of text whose
'fontified' text property is nil.
- Re: Using incremental parsing in Emacs, (continued)
- Re: Using incremental parsing in Emacs, Stefan Monnier, 2020/01/05
- Re: Using incremental parsing in Emacs, yyoncho, 2020/01/05
- Re: Using incremental parsing in Emacs, Stefan Monnier, 2020/01/05
- Re: Using incremental parsing in Emacs, yyoncho, 2020/01/05
- Re: Using incremental parsing in Emacs, Eli Zaretskii, 2020/01/05
- RE: Using incremental parsing in Emacs, arthur miller, 2020/01/05
- Re: Using incremental parsing in Emacs, Eli Zaretskii, 2020/01/05
- RE: Using incremental parsing in Emacs, arthur miller, 2020/01/05
- Re: Using incremental parsing in Emacs, Eli Zaretskii, 2020/01/05
- Re: Using incremental parsing in Emacs, HaiJun Zhang, 2020/01/05
- Re: Using incremental parsing in Emacs,
Eli Zaretskii <=
- Re: Using incremental parsing in Emacs, HaiJun Zhang, 2020/01/06
- Re: Using incremental parsing in Emacs, Eli Zaretskii, 2020/01/06
- Re: Using incremental parsing in Emacs, arthur miller, 2020/01/06
- Re: Using incremental parsing in Emacs, Eli Zaretskii, 2020/01/07
- Re: Using incremental parsing in Emacs, arthur miller, 2020/01/08
- Re: Using incremental parsing in Emacs, Stefan Monnier, 2020/01/06
- Re: Using incremental parsing in Emacs, HaiJun Zhang, 2020/01/06
- Re: Using incremental parsing in Emacs, arthur miller, 2020/01/06
Re: Using incremental parsing in Emacs, Anand Tamariya, 2020/01/06
RE: Using incremental parsing in Emacs, HaiJun Zhang, 2020/01/03