Editor option to run the language server from cargo project #493
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This introduces another editor extension option which allows you to set a cargo package that should be used as the CLI entrypoint.
It tries to build the entrypoint (currently in debug mode) and capture the build artifact to use as a language server. This is then called:
<bin> --version
- to see if it can be executed.<bin> languageserver
- to run the languageserver.The latter is supported by anything that implements a CLI entrypoint. This allows (among other things) to more easily specify a server which uses a custom context. All you really need to do is set up a package which looks like this (and add your own modules of course):
If something goes wrong, an error like this is displayed:
Note that I had to rewrite parts of the CLI because suprisingly we did not support a
--version
option.Another side effect is that this makes it super easy to work on the language server since it can be both reloaded and rebuilt in the editor as needed.