Would be great to have an RLS website where you could tell us your editor/IDE and we could tell you how to set up the RLS for it. Nice, clean instructions on how to get RLS and how to tweak it to your liking.
I'd be happy to give this a go, not a designer, but I guess I could get the basic layout go and provide the content (I could do vscode and neovim).
@booyaa that would be great, thanks! I think all the info you need for vscode is in the README, not sure about neovim.
Here's what I've done so far: http://booyaa.github.io/rustlangserver.github.io/
I don't have time to do the mainline work of building it with you, but if you want a bunch of small PRs on layout and especially typography I'm happy to chip in. Filed one issue over there and will happily continue conversation on that repo or wherever ends up making the most sense.
Yes please Chris and thank you!
Could I please have a little bit of feedback? I've done a bit of rejigging and created a temporary website http://rls.booyaa.wtf
I'm not sure if this what you wanted? Or perhaps something even simpler like the single paged the https://rustup.rs?
I can't speak for the project, just from a typography-and-design perspective, but it gets a solid 馃憤 from me overall. I'll shoot some small PRs your way this week for tweaks, but I'm a fan so far.
@booyaa awesome, that's a lot of stuff already! I think overall it is looking pretty good. Some comments:
rustup update nightly install the nightly channel, if it is not installed already@nrc thanks for the feedback. I've made the necessary changes. Let me know if they're sufficient or need a bit more work.
@booyaa looking at http://rls.booyaa.wtf and we might want to point folks to the newly-published vscode plugin: https://marketplace.visualstudio.com/items?itemName=rust-lang.rust
@jonathandturner done!
If you haven't already installed RLS, please see this guide.
I don't think this is necessary, at least for the vscode extension, so maybe it should be moved and rephrased.
My biggest concern is that we should be focussing more on the problem being solved than the solution being offered. I would change "Rust Language Server editor setup guide" to "Rust IDE and editor setup guide" in the title. Then maybe in the first paragraph describe what the RLS does for users/editors.
I would also say that vscode is the recommended and easiest solution in the intro.
It might be nice to have a screenshot of the editors in action, at least vscode.
Thanks @nrc again!
@booyaa awesome, all sounds good! Thanks for working on this!
Asides the screenshots and bit more info about how the vscode extension will automatically offer to install nightly and RLS.
I think I've addressed the first two bulletpoints.
Just added a bunch of animated gifs to highlight RLS functionality. Not sure about size, but the trade off was whether to truncate the command palette or helper tips.
Going to give neovim a bit of TLC next!
Wondering if anyone had feed back for intro and vscode bits. It'd be great if we could launch the site with this and then work on the neovim afterwards. I've still be unsuccessful with the atom plugin, which is surprising since this and the neovim plugins are both generic lsp clients.
Just added a bunch of animated gifs to highlight RLS functionality. Not sure about size, but the trade off was whether to truncate the command palette or helper tips.
These are great! And the whole page size is 667kb, which doesn't seem too bad.
Wondering if anyone had feed back for intro and vscode bits.
I would drop "Welcome to the" from the title - less is more :-)
"getting Rust to work" - s/getting/get
Could you add the shortcut (ctrl + P) where you mention the command palette.
And could you mention that you'll need rustup installed?
"RLS is active and analysis your workspace" -> "... analysing your project" (workspaces are a Cargo concept and this might be confusing)
Everything else is looking really good!
Cheers Nick! Implemented feedback latest version should appear online shortly.
@booyaa - awesome! Great to see it coming together.
Curious, is the plan to fill out the details for other editors before it launches or after?
Cheers Jonathan! My view on this is to go with what we've got (vscode and neovim).
I've structured the underlying source pages ([1], [2]) so that each editor has it's own doc allowing us to review each editor setup as they become available.
@Xanewok - could I ask a big favourite and get you to review the neovim doc for me? Thanks!
Not sure if I'm exactly the person to ask about configuration steps - I'm not a heavy neovim user, just using it sporadically when I want a more lightweight editing/IDE experience, so I may not know which installing instructions work the best etc.
vim-plug for Neovim uses ~/.config/nvim/init.vim instead of ~/.vimrc. I'm not sure if Neovim supports regular ~/.vimrc, as I set it up with ~/.config/nvim/init.vim, as per instructions there. I think it'd be a good idea to explicitly mention that file instead of 'vimrc', when assuming vim-plug for Neovim.
I'd add a link to LanguageClient-neovim GitHub project, as it also expands on how you can install the plugin using different plugin managers. Thankfully, @autozimu demoes the project using Rust as an example, so also the example configuration file there includes how to set up RLS for Rust and there are also GIFs showing RLS features in Rust context. I think we could ask if we can use those on the neovim support page - these would be a great addition!
Also a very minor nitpick wrt underlying protocol name - since LSP is the official name, I'd use LSP client instead of 'Language Server Client' and either spell out the full name - Language Server Protocol, or risk LSP protocol kind of mistake (like 'ATM machine', not sure how bad it sounds though) instead of using 'LSC protocol'.
Apart from that, I think it looks good! :+1:
Thanks for the feedback Igor!
a minor point: 'goto definition' is actually doing a 'peek definition'. It would be best to rename that and add another gif where we actually jump to the def.
I wonder if we could make the gifs a little smaller (or the page wider) and put the gifs in two columns? Feels like a lot of scrolling at the moment.
@nrc Added a goto definition gif. I've also spanned the gifs two across, it does look better. Unfortunately it's now obvious the images aren't exactly the same size, so I'll recreate them.
I blogged a bit about the RLS here please feel free to use any of the text or images if you'd like.
That's a really nice blog post, I'm doing a lightning talk next week about RLS and VSCode so I'll make sure I've highlighted the features outline.
I've re-done the images to have uniform height and width, but I wondering if they're surplus to requirement after @nrc's comprehensive blog post? Which we could reference in this page.
Even with the images two across, it feels like a lot of information (and is a bit busy because of the animation*). I wonder if I've got a bit lost and move from the original intention of giving concise instructions on how to setup RLS for your given code editor/IDE?
Thoughts?
* - I could use an hover event to only animate the image that was active...
@booyaa - the website should be standalone and have all the information there, imho. I think a lot of people will want everything in one place to get started, and to see what all the rls can do these days.
I think what you have looks good. Thanks for the work 馃憤
Hey @booyaa sorry, I've not followed up here for a while.
I think animating on hover might work pretty well - I agree it does feel a bit busy with all the animations going at once.
Given the animations, I wonder if we might want to re-organise a bit - have the intro, then links for each editor, then the animations (and we could probably add more links/info below the animations in the long term). Then have a page for each editor, this also makes it easy to refer people for instructions for a specific editor.
I think it would be good to add instructions for Sublime Text and Atom - they both seem to have fairly good support. But I think having a soft launch is more important.
My biggest question right now is where to put it. A few options:
I think putting it on rustaceans.org for now, and maybe moving to a custom domain in the future (or maybe rust-lang, once the overhaul is done), is a good path. What do you think?
@nrc thanks for the feedback.
Re: animate on hover - I've done hover on animate. I've also converted the static frame to greyscale to further avoid distracting the reader.
I'm going to merge the Sublime Text and Atom changes today. Also I'll have a go at re-organising the site. (sorry misread that). I've added @rrichardson 's PR to include Vim setup though!
Re: hosting options - custom domain - might be a good idea, I'm thinking of how rustup.rs as another example.
Moved animated screenshots to the end and in a new section called Functionality.
Thanks for the changes! I'm on parental leave right now, but more importantly I have really terrible internet. I'll try and take a detailed look in 10 days or so.
For domains, I expect rls.* will be taken. Some ideas:
But looking at those I'm thinking in favour of ide.rust-lang.org or rust-lang.org/ide, long term.
There's also https://forge.rust-lang.org/ides.html now, which needs updating or redirecting to the new rust-lang.org/ide.
Also just to leave it here, it might be good to submit PRs and update www.areweideyet.com.
But looking at those I'm thinking in favour of ide.rust-lang.org or rust-lang.org/ide, long term.
These seem the best imo :+1:
@nikomatsakis do you think we should publish a website for the RLS "1.0" by now?
Should we host anything dedicated to IDEs around rust-lang.org or should we just try and update the community-maintained www.areweideyet.com (which is really outdated by this point)?
FWIW we have a recently updated list of supported editors/IDEs using RLS in one way or another at https://github.com/rust-lang/rls/issues/87.
Most helpful comment
Here's what I've done so far: http://booyaa.github.io/rustlangserver.github.io/
Repo: https://github.com/booyaa/rustlangserver.github.io/