In lieu of actually writing this up in the readme, some quick thoughts:
There isn't currently a stand-alone nushell language server — the one in the vscode extension is more or less coupled to the implementation of that extension, and after poking around a bit, I concluded that there are probably better uses of time than trying to extract it (see also: https://github.com/nushell/vscode-nushell-lang/issues/117)
Maintaining a null-ls.nvim source in the meantime (i.e. this repo) means essentially maintaining another language server implementation (one which runs directly within the neovim process).
This is a small duplication of effort between neovim and vscode, but it seems like a fine way to bridge this gap for the moment. It's based on the same features of the nushell binary that the vscode extension is using, so most of the heavy lifting was already done. But this split focus obviously isn't ideal.
Since there's basically a reference implementation for the LSP methods in nushell/nushell already, I think writing a stand-alone language server in rust doesn't seem outrageously difficult, but I'll keep this repo going in the meantime.
In lieu of actually writing this up in the readme, some quick thoughts:
There isn't currently a stand-alone nushell language server — the one in the vscode extension is more or less coupled to the implementation of that extension, and after poking around a bit, I concluded that there are probably better uses of time than trying to extract it (see also: https://github.com/nushell/vscode-nushell-lang/issues/117)
Maintaining a null-ls.nvim source in the meantime (i.e. this repo) means essentially maintaining another language server implementation (one which runs directly within the neovim process).
This is a small duplication of effort between neovim and vscode, but it seems like a fine way to bridge this gap for the moment. It's based on the same features of the nushell binary that the vscode extension is using, so most of the heavy lifting was already done. But this split focus obviously isn't ideal.
Since there's basically a reference implementation for the LSP methods in nushell/nushell already, I think writing a stand-alone language server in rust doesn't seem outrageously difficult, but I'll keep this repo going in the meantime.