[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
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
those
here:
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 [1]. 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).
[1] 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
some
sort 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
tool
that 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
of
workspace.
3. File type <> language server association.
This will make it easier for different editors to adopt and make use
of
the full library of language servers available.
Tyler Jewell | CEO | tyler@codenvy.com |
978.884.5355
On 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,
since
none of the language implementations (Rust, Go, and D) have a common
protocol for their tools. But definitely a common protocol would be
welcome, especially as language server functionality becomes more
complex.
Looking at the above, I wanted to give a quick look at one of the
VSCode's Language Server Protocol implementations, to see how easy
it would
be to implement support for that in Melnrome, but it seems all the
protocol
implementations require VSCode to be installed? Or at least the
installation instructions don't explain how to install otherwise. It
left
me 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 and
collaborations 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
provide
editing 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 and
SDKs
https://github.com/Microsoft/vscode-languageserver-protocol/wiki/Protocol-Implementations
Mikael suggested to share this here to make sure we are all aware
of
this. I'm sure there are many cool ways people could leverage this
effort
in 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 in
his JavaFX IDE.
Looking forward to your ideas, feedback and questions.
Regards,
Sven
_______________________________________________
ide-dev mailing list
ide-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/ide-dev
--
Bruno Medeiros
https://twitter.com/brunodomedeiros
_______________________________________________
ide-dev mailing list
ide-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/ide-dev
_______________________________________________
ide-dev mailing list
ide-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/ide-dev
--
Bruno Medeiros
https://twitter.com/brunodomedeiros
_______________________________________________
ide-dev mailing list
ide-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/ide-dev