bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#56682: feature/improved-locked-narrowing 9dee6df39c: Reworked locked


From: Dmitry Gutov
Subject: bug#56682: feature/improved-locked-narrowing 9dee6df39c: Reworked locked narrowing.
Date: Wed, 1 Feb 2023 00:25:00 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2

On 31/01/2023 23:46, Stefan Monnier wrote:
Speaking of additional slowdowns, though, at least in theory -- both
syntax-ppss and tree-sitter drop their current parse result when point-min
changes.
FWIW, `syntax-ppss` keeps 2 caches: one for point-min=1 and one for the
other cases.  So narrowing doesn't quite "drop the current parse", it
just temporarily ignores it, but recovers it when we exit the narrowing.

Take the scenario for scrolling through a whole file. When the file reaches a certain length, the current scheme is to narrow, linearly, to successive text chunks of size N, and fontify them.

And since for every chunk point-min will have a new value, it will have to re-parse the text from the beginning of the chunk. Even if the cache exists already for the whole (unrestricted) buffer.

And even if syntax-ppss-max-span is lower than N (which it currently is by default, 20000 vs 500000).





reply via email to

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