Skip to content
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

Give access to custom ClientCapabilities #124

Closed
aeschli opened this issue Oct 24, 2017 · 6 comments
Closed

Give access to custom ClientCapabilities #124

aeschli opened this issue Oct 24, 2017 · 6 comments

Comments

@aeschli
Copy link

aeschli commented Oct 24, 2017

ClientCapabilities currently only support the standardized set of capabilities.
Protocol extensions (such as https://github.com/Microsoft/vscode-languageserver-node/blob/master/protocol/src/protocol.workspaceFolders.proposed.md) add additional capabilities, to existing sub-capabilities (workspace, textDocument) but potentially actually to any sub-capabilities.

-> Add an API to ClientCapabilities to get any capability by key.

@mickaelistria
Copy link
Contributor

Using protocol extensions really makes everything more complex in general.
I think it would be simpler to integrate the protocol extensions as standard capabilities in LSP4E, especially if you're using SNAPSHOTs. This would allow to more easily validate that the proposal in the protocol is also usable in the LSP4J world.
I'm planning to provide a PR to have the proposal about multi-root directly in.

@mickaelistria
Copy link
Contributor

@aeschli It would be nice if you could submit the WorkspaceFoldersProposedService to LSP4J directly and consume it in JDT-LS. That would allow LSP4E, Che and any other language server building on top of LSP4J to start trying it with the same API.

@mickaelistria
Copy link
Contributor

See #132 and #133 for contributions about workspaceFolders.

@gorkem
Copy link
Contributor

gorkem commented Dec 8, 2017

@mickaelistria Do you still need to move WorkspaceFoldersProposedService after #133? I want to revert to using LSP4J proper on jdt.ls just wanted to check with you if you captured all that is needed.

@mickaelistria
Copy link
Contributor

LSP4J has implemented everything necessary to support multiple root according to the proposal, without extension required on server and client side. It works perfectly in Eclipse LSP4E. Nothing else is needed for it.

@jonahgraham
Copy link
Contributor

It works perfectly in Eclipse LSP4E. Nothing else is needed for it.

Based on this I am closing the issue. Please reopen with additional comments if there is still stuff to be done here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants