Weāve been telling a series of stories about all the different ways that Tree-sitter can improve the editing experience in Pulsar. Todayās story about symbols-view
starts a bit slowly, but itās got a great ending:Ā the addition of a major new feature to Pulsar 1.113.
One annoying thing that software developers do is insist on writing in more than one language at once. Web developers are espeically obnoxious about this ā routinely, for instance, putting CSS inside their HTML, or HTML inside their JavaScript, or CSS inside their HTML inside their JavaScript.
Code editors like Pulsar need to roll with this, so today weāll talk about how the modern Tree-sitter system handles what we call injections.
Last time we looked at Tree-sitterās query system and showed how it can be used
Today weāll look at two other systems ā indentation hinting and code folding ā and Iāll explain how queries can be used to support each one.
Last time I laid out the case
Today Iād like to show you the specific problems that we had to solve in order to pull that off.
In
Today Iāll try to illustrate what that system looks like and why itās important.
The last few releases of Pulsar have been bragging about a feature that arguably isnāt even new: our experimental āmodernā Tree-sitter implementation. You mightāve read that phrase a few times now without fully understanding what it means, and an explanation is long overdue.
How did I decide to start working on tree-sitter, and all preparations to modernize it on Pulsar