Anyone have any pointers on where I can find a good IDE for Rust? Should I just start praying to lord-JetBrains for something that works?
Anyone have any pointers on where I can find a good IDE for Rust? Should I just start praying to lord-JetBrains for something that works?
[Good lord, a downvote on this? I'm being completely sincere.]
That being said, nowadays I use an IDE because it is extremely helpful to have autocomplete (which is okay with Racer+Vim, but kinda hacky) as well as the hover for type information (name of types, type signature, etc.). Without the hover information, I usually end up doing ridiculous things like writing bogus explicit types to see what type an undocumented function from a library will return after compiling (Is it Option? or Result?). That is really annoying.
I didn't downvote you BTW.
An IDE lets me focus on the problem, not the language.
What exactly is there to learn? That you have to spend more valuable time on memorizing unimportant things?
There are now some pretty decent autocomplete plugins for emacs, so it is possibly an option if you already an emacs user. But emacs is emacs.
1. You learn the command line interface to your compiler, which is invaluable and something you'll have to learn at some point, even if you start off on an IDE.
2. Similarly you learn the command line interface to the compiler's support tools like make, linker, debugger, profiler, source code revision control, grep, strings and so on, and more importantly how the whole process of 'write-compile-execute-debug' cycle is done.
- Autocompletion
- Mass rename
- Source formatting
- Integrated debugger interface with breakpoint insertion and overlying of state on source
- Integrated VCS control
- Automated deploy
- Error display
- Automatic importing of modules
- Source cleanup (Automatic loop transformation)
- Automatically building my project
That's just a few things that I like an IDE to have. Some provide even more features that I like.I understand that there are other tools that do the tasks better, maybe even faster, but that's not what I want. I want to be able to learn one thing, and learn how to use all of it's features well.
Not only do you have a package manager, but a build system.
Source formatting: rust.vim + rustfmt
Automatic building: https://github.com/passcod/cargo-watch
Error display: tmux, terminator or iTerm2 split planes
Rust has pretty good tool support in vim and Atom, for example (can't speak for the rest). We don't have stellar IDE support yet, but it's on the to-do list: https://www.rust-lang.org/ides.html
Personally, I don't miss IDEs. I like the approach of small, single-purpose, composable command-line utilities more.
Split panes are a poor substitute for actual error display integration; highlighting the errors in the source-code viewer, combined with a cross-linked list of errors is far more useful.
However, the reason why so many people in this thread persist in suggesting that these tools are worth learning is that turns out most of these tools plug-and-play with whatever new language you feel like learning 6 months or 2 years or more from now.
Vim is one of the more popular editors to use in conjunction with this plug-and-play philosophy; if you have a change of heart and want to take a dive into learning to use Vim as such, I'd recommend Vim as an IDE[1], which addresses a lot of the points you brought up in your list of things you wish an IDE had.
You probably noticed how useless racer is on the command line: type code in your text editor and then when you want a completion, you go to your CLI and type "racer myfile.rs row,column" and there are your completions! :) Jokes aside: it's clearly superior (and intended) as an integrated tool than as a command line tool.
I'd argue that a debugger can offer the same kind of power being an integrated debugger as the (admittedly silly) racer example.
People love C# for that very reason, once they get used to Visual Studio, convincing them to switch to something with very limited IDE support is a tough argument. Most people have better things to do with their life. Rust will get there though, just give them time.
About the project, not being GPL is serious bummer for me. I don't want to GNU project isolate more than this and anyone other who has simple understanding of politics behind the scene will understand GNU as foundation have done a lot of good things for programmer/developer/hackers community.By far more than any other player in this area.
And since I have worked on Glibc for a while and I wanted to use rust just for experiment,I was seriously considering to work on this project if it were GPLv3.
vscode and textadept are good
In comparison, Eclipse starts in under a minute and uses about half that on my system.
Atom when I tried it was much to large for my system. I might look at it again.
Though if you want an IDE a plugin for IntelliJ exists too.