envd
envd copied to clipboard
feat(CLI): Support language server for vscode
Description
We can use https://github.com/tilt-dev/starlark-lsp
But it requires CGO. We may need a separate binary envd-lsp to avoid CGO in envd.

The language highlights and auto-completion work well.
But, we need to figure out how to deliver CGO enabled bins.
Since language servers usually do not follow the release cycle of the main code base, should we separate it as an isolated repo?
https://github.com/tensorchord/envd/pull/302 We kept the lang server in a separate binary. I think we can put it in the vscode-envd repository.
Current problem is that I do not know how to cross-compile CGO-enabled bin and deliver them in vscode extension.
https://softwareengineering.stackexchange.com/questions/426471/how-do-vs-code-langauge-extensions-distribute-a-language-server-binary
We can download the lsp binary on the first run like vscode-rust and vscode-haskell does.