It’s layers and layers of indirections with no clear need and technical decisions that make things unnecessarily complex.
So your basically writing Regexes in a custom DSL in JavaScript, combined with custom hooks written in C, from which a megabytes-large native-code parser is generated.
The complexity of the solution does not fit the niche between dead-easy TextMate grammars and plugging into an LSP.
Don’t misunderstand me, I wish there was something filling that niche, but TreeSitter 100% certainly isn’t it.
It’s layers and layers of indirections with no clear need and technical decisions that make things unnecessarily complex.
So your basically writing Regexes in a custom DSL in JavaScript, combined with custom hooks written in C, from which a megabytes-large native-code parser is generated.
The complexity of the solution does not fit the niche between dead-easy TextMate grammars and plugging into an LSP.
Don’t misunderstand me, I wish there was something filling that niche, but TreeSitter 100% certainly isn’t it.