Nable wrote:But if you have enough resources, QtCreator seems to be a nice IDE: it's possible to enable vim-like key bindings + I sometimes find it good at code-search and navigation (find all places where function is used, switch header/source, go to type/function definition, etc).
For code navigation, plain vim + cscope work perfectly for me.
I once tried some vim plugin for contextual code completion (probably the kind of thing that Nutterts is thinking of), but while it did its job just fine, it honestly was more annoying than helpful, so I disabled that again.
Nessphoro wrote:Nothing beats Visual Studio 2013/2015 for C/C++ code writing, you get completion and many other things.
It is a fact that the code completion, editing/refactoring tools and the improved fluentness when coding with Eclipse makes it clearly superior. We dont need to discuss about this, you just have to compare them next to each other. Also when using a custom compiler you can configure Eclipse into detail so everything like the indexer and code completion etc. use your compilers paths and specifics and more. Visual Studio is not bad either, but that its Windows-only kicks it out of the game. For writing non-Windows software Eclipse is the way to go.
I am going to be one of the few who defend netbeans on this one. I have been using netbeans for dev in many languages: java, php, html, c... just to name a few. And although there are better platforms for just c out there, netbeans is a great multiuse platform that offers amazing features once you learn how to use them.
Programming is like fishing, you must be very patient if you want to succeed.
I'm a huge fan of power editors in general and Vim in particular (others popular examples include Emacs and Sublime) because they are the most powerful and configurable. While IDE's like Visual Studio and Eclipse are very good at what they do, they give up some power in favour of convenience and reduced training costs. Convenience because power editors are not, by default (!), integrated with your development environment (debugger, build system, version control system, testing framework, bug tracker, documentation system, etc.), and reduced training costs because there is a steeper learning curve associated with these editors. However, you can quickly program high-level instructions like "take all the numbers in the column above and type their sum at the cursor's position", "copy the 8th paragraph of this file", "capitalize every word following a period", "add a semicolon at the end of every other line", "jump to a specific location in the file" etc. without skipping a beat. It's kind of like the difference between using a GUI and a console.
While they have the potential to improve productivity for some, many either find them confusing or are simply not willing to spend time practicing to use them effectively. And that's reasonable. Instead of asking us to pick something for you, I suggest that you try a bunch of options and see what works best for you. Ultimately, different programmers work differently and unlike other subjective decisions, like those regarding a project's coding style, what you do won't directly affect anyone else.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
So I ended up tying netbeans, eclipse, qtcreator & code::blocks. In the end I started using code:blocks as an editor. Still do building and such in a terminal like always. But it's nice and simple to use for auto completion and quickly switching between files.
Vim was en is still on my list to learn how to use. I just never really gotten around to it.
"Always code as if the guy who ends up maintaining it will be a violent psychopath who knows where you live." - John F. Woods
@Love4Boobies this might be interesting for you: http://vrapper.sourceforge.net/home/ @Nessphoro I did not mean to bash VS so that you felt you had to remove your post. I just wanted to express my opinions on both IDEs. Sorry if I was too harsh.