-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for Multiple LSP Languages Servers per File #4609
Comments
I have made a timeboxed proof of concept implementation and which is based on the following main concepts:
I have dumped the code here: https://github.com/tsmaeder/che/tree/multiple_language_servers. I would call the state of the code "barely working". I think it can show that the concept will work, but due to bugs and incompleteness, you can only just do a demo with it. |
For reference, the investigation was originally done here: https://issues.jboss.org/browse/CHE-173 |
Pictures, or it didn't happen: https://www.youtube.com/watch?v=tNQ3-M2_KVA&feature=youtu.be |
Merged. |
…the same files eclipse-che#4609 (eclipse-che#5442) Add support for using multiple language servers for the same files. Signed-off-by: Thomas Mäder <tmader@redhat.com>
Currently, LSP support assumes that only a single language server can be active for any given file. However, this is makes it impossible to do add-on language servers. For an example, think of a linting plugin for typescript for example. Even if the main language server plugin has no support for a particular linting tool, we could make the linting tool contribute diagnostics and code actions to show/fix warnings from the linter.
Visual Studio Code, for example, supports this (so it IS possible) and describes a set of rules on how to handle the cases where multiple language servers are claiming responsibility for a file, see https://code.visualstudio.com/docs/extensionAPI/vscode-api#_languages.
The text was updated successfully, but these errors were encountered: