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: Thu, 30 Mar 2023 17:27:02 +0000


User-defined narrowing will never contradict parser restrictions.

You mean, they will be independent, right? In other words, if the user sets the narrowing to 1000-1200 in a buffer in which treesit-make-parser has been called, say, once with 'php 400 1100' and once with 'js 1100 1500', the two parsers will continue to have access to these ranges?

The parsers _can_ have access to those ranges, if they need it for some reason. In general, everything in Emacs should honor the current restriction, unless there's a good reason to ignore it.


Okay, so in the above example by default the parsers will only have access to 1000-1100 for the first one, and 1100-1200 for the second one until the user removes the restrictions. Unless they need to widen the buffer for some (good) reason.

If they do widen, will the parsers get access to [400..1100] and [1100..1500], or to the whole buffer? Or will they have two ways to widen, one to get access to the whole region on which they have been defined, and another one to get access to the whole buffer?


The problem with ignoring it is that we can never know which code/user defined the restriction and for what purpose. I hope that keeping the parser's restrictions as part of the parser itself will allow us to break free of that issue when we have to widen.


At least it's a possibility that seems worth investigating.






reply via email to

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