-
Notifications
You must be signed in to change notification settings - Fork 255
Support another editor #18
Comments
Agreed, this should block the alpha release imho |
Sublime would be better considering there's already a rust-lang maintained project https://github.com/rust-lang/sublime-rust |
@Jayflux - do you know if there's a Sublime plugin for the Language Server Protocol (https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md) by chance? I'm in the process of moving the RLS over to it, and for editors that support it, it should greatly speed up getting Rust support to them. |
Why non-LS protocol, @nrc? It seems a bit nicer for everyone if all the "RLS" plugins were actually just LS plugins - one protocol for RLS to support, one interface for editors to support. I've already started on an emacs LS plugin :) |
@cmr in case there is some editor that refuses to ever support LS for whatever reason, then it would be good to know we can still use the RLS. To be clear, I think we should still use the LS protocol, just that we don't use native LS support in the editor, so emacs + LS plugin would satisfy that. |
Ah, I see now. |
In practice, hopefully when someone writes a plugin that supports the LS protocol, everyone else writing a language plugin that uses it can share that code for a given editor. |
I'm the de-facto maintainer of racer.el for Emacs, and I'd be very interested in building supporting for RLS in an Emacs package :) Do we have a GitHub organisation for editor packages? I know rust-mode.el is an official Rust project. |
I don't think so, ill have to investigate |
There's a Sublime plugin for OmniSharp [https://github.com/OmniSharp/omnisharp-sublime], so the lion's share of work for supporting the protocol on Sublime should already be done. |
I've done some work on compiler integration for the Coq language for Vim, and I'd be interested in working on the (Neo?)Vim plugin. I'm not quite sure where to start though. I suppose I could try and change out the typescript specific stuff from https://github.com/clausreinke/typescript-tools.vim and see what happens. |
Thanks @owlbit, ill have a play. Im still new to the whole LS stuff so ill be doing a lot of learning |
Existing 'official' editor plugins are in the rust-lang org: https://github.com/rust-lang. A new editor plugin would probably start off in the nursery. |
My first guess would be that the sublime and vim plugins could share some python code for handling the Language Server Protocol. This could expose an server interface for sending and receiving commands, then each editor could bind those commands one their own. I'm started something quick here, any thoughts? https://gist.github.com/tbelaire/94ace69a6c7536f68e6495a9305e2ed8 |
In GNOME Builder we've landed support for most of the Language Server Protocol features of We'll continue working on features in the mean time to fill out the missing bits we don't yet support. https://git.gnome.org/browse/gnome-builder/tree/plugins/rust-langserv/ |
Closing as complete as @chergert 's work checks this box for us. As we get to the beta, we'll probably want to expand to even more, making sure we have good emacs, eclipse, vim support (and likely others) |
+1 for Sublime support |
Should be non-LS protocol based. My vote is for Sublime, but could also try Atom, Vim, or Emacs.
Necessary to ensure the RLS is editor-independent.
The text was updated successfully, but these errors were encountered: