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

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

bug#62333: 30.0.50; Issue with tree-sitter syntax tree during certain ch


From: Gregory Heytings
Subject: bug#62333: 30.0.50; Issue with tree-sitter syntax tree during certain changes
Date: Mon, 27 Mar 2023 20:05:07 +0000


Again, I'm talking about using a parser library. We may need to introduce a way of limiting the parser to a certain range of buffer text positions, independently of narrowing.

Except it's already limited by narrowing.

Which is a fragile, semi-broken means, as we all know.

What is a broken mess, is user-level narrowing. And how the downstream code can never guess the purpose the narrowing was applied for.

Note that this is what labeled narrowings attempts to solve.

Labeled narrowing cannot solve this because it does nothing to alleviate the problems with user-defined narrowing. So if the user narrows the buffer, we cannot do anything to safely widen in the general case, and labeled narrowing cannot help us.


I must be missing something, but I don't understand what you mean. If a user has narrowed a buffer to a certain region A-B, and if we want to limit a parser to a certain region C-D, we can do that safely with

(with-narrowing C D :label 'parser-library BODY)

which will work, independently of the A-B narrowing set by the user, and will reset the narrowing to A-B upon return. And functions inside BODY will have to use (without-narrowing :label 'parser-library ...) to get access to the whole buffer.






reply via email to

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