|Re: [ide-dev] Language Server Protocol|
On 10 Jun 2016, at 10:45, Bruno Medeiros wrote:
What I mean was that all the server implementations I looked at (from thosehere: https://github.com/Microsoft/vscode-languageserver-protocol/wiki/Protocol-Implementations#language-servers), they all seem to require VSCode to be installed to run the server. I couldn't find any instructions to install one of them in a stand-alone way.
This is because they are packaged as VS Code extension. A language server is in practice developed as a stand alone component but it is packaged into a VS Code extension so that the extension can activate the server when VS Code needs its functionality. You can see the server/client separation on the example server code clearly . Unfortunately most implementations have not
laid out their code with this separation on mind.I am building a Java server that uses JDT, M2E to provide its functionality and I should make the code available soon, which has a very clear separation where server is a headless Eclipse that leaves on its own and provides possibility for multiple
transports (for VS Code it uses named pipes).  https://github.com/Microsoft/vscode-languageserver-node
On 10 June 2016 at 15:13, Tyler Jewell <tyler@xxxxxxxxxxx> wrote:You don't need VS Code to implement the protocol, but you do need somesort of editor that supports it.We'll have a branch available in about a week of Eclipse Che that lets you take custom language servers, deploy them into a workspace and test the implementation compatibility within the editor. VS Code is another toolthat you can use right now to test compatibility with the protocol. We are working on some standards for how: 1. Various languages will advertise their server availability in a registry.2. How a language server can be auto-deployed into a different kind ofworkspace. 3. File type <> language server association.This will make it easier for different editors to adopt and make use ofthe full library of language servers available.Tyler Jewell | CEO | email@example.com | 978.884.5355On Fri, Jun 10, 2016 at 6:56 AM, Bruno Medeiros < bruno.do.medeiros@xxxxxxxxx> wrote:This is quite interesting. It seems very related in scope to the work of Melnorme Eclipse (https://github.com/bruno-medeiros/MelnormeEclipse/wiki),since the Melnorme framework has a focus on using external tools for language analysis (including daemon-style tools).There is no common protocol for the language servers in Melnorme, sincenone of the language implementations (Rust, Go, and D) have a common protocol for their tools. But definitely a common protocol would bewelcome, especially as language server functionality becomes more complex.Looking at the above, I wanted to give a quick look at one of theVSCode's Language Server Protocol implementations, to see how easy it would be to implement support for that in Melnrome, but it seems all the protocolimplementations require VSCode to be installed? Or at least theinstallation instructions don't explain how to install otherwise. It leftme a bit confused for now. On 8 June 2016 at 13:49, Sven Efftinge (sven@xxxxxxxxxxx) < sven@xxxxxxxxxxx> wrote:Hi all, I just gave a session at EclipseCon France about our efforts andcollaborations around VSCode's Language Server Protocol. The idea is to support this protocol in other editors than VSCode as well and by that making it a widely supported interface for language implementors to provideediting support. The protocol itself is platform/language agnostic and is defined by Erich Gamma's VSCode team: https://github.com/Microsoft/vscode-languageserver-protocol/We have started a wiki page that lists supporting editors, languages andin different Eclipse projects. Some reasonable things to do would be :- Support the protocol in Eclipse (I.e. have a generic editor plug-in) - Use this protocol around existing language tooling (e.g. JDT, Orion +Tern.js)Codenvy and TypeFox are already collaborating and working on supporting the protocol in Che and Xtext. Tom (Schindl) also is going to support it inhis JavaFX IDE. Looking forward to your ideas, feedback and questions. Regards, Sven _______________________________________________ ide-dev mailing list ide-dev@xxxxxxxxxxxTo change your delivery options, retrieve your password, or unsubscribefrom this list, visit https://dev.eclipse.org/mailman/listinfo/ide-dev-- Bruno Medeiros https://twitter.com/brunodomedeiros _______________________________________________ ide-dev mailing list ide-dev@xxxxxxxxxxxTo change your delivery options, retrieve your password, or unsubscribefrom this list, visit https://dev.eclipse.org/mailman/listinfo/ide-dev_______________________________________________ ide-dev mailing list ide-dev@xxxxxxxxxxxTo change your delivery options, retrieve your password, or unsubscribefrom this list, visit https://dev.eclipse.org/mailman/listinfo/ide-dev-- Bruno Medeiros https://twitter.com/brunodomedeiros _______________________________________________ ide-dev mailing list ide-dev@xxxxxxxxxxxTo change your delivery options, retrieve your password, or unsubscribe from this list, visit
Back to the top