tree-sitter-nu icon indicating copy to clipboard operation
tree-sitter-nu copied to clipboard

Neovim installation

Open mrdgo opened this issue 1 year ago • 2 comments

There is now this. A config and highlights for tree-sitter-nu within nvim-treesitter.

Currently, - following installation/neovim.md - we override both, namely the config in plugin/init.lua and queries in queries/nu/*.scm.

plugin/init.lua also sets up filetype detection, which we might also be able to get upstreamed to neovim itself.

Then users would not have to install this repo as neovim plugin, see

{ "nushell/tree-sitter-nu", build = ":TSUpdate nu" },

in installation/neovim.md, probably saving users some diskspace but, more importantly, also supports installing nu support via just :TSInstall nu, without any additional line of configuration.

However, as it currently is, we have the advantage that we manage our queries/nu/*.scm ourselves. So we can easily make braking changes - i.e., renaming or removing nodes that queries refer to - because we directly control both, the grammar and the highlights. With a transition to the nvim-treesitter, we have to be careful whenever we do one of the two changes to our grammar, because we have to adjust queries in a different repo.

I hope that I made the situation clear to everyone who uses this parser in neovim.

mrdgo avatar Nov 15 '24 17:11 mrdgo

I'm not sure really what you're suggesting. We haven't transitioned to nvim-treesitter. Someone else has taken it upon themselves to do that. I hope they maintain it.

fdncred avatar Nov 15 '24 18:11 fdncred

No real suggestion, just bringing up an issue. And oof, I hoped that the person got in touch with anyone here. Hmm, that person has to update queries whenever we update them.

The transition should be a goal of this parser. Personally, I would want to wait until we have a 1.0 nu and a feature-complete parser. Because maintaining will become more difficult, when we need to sync multiple repositories.

mrdgo avatar Nov 15 '24 20:11 mrdgo