6 ms·
This is just vim with NerdTree, YouCompleteMe, and a few other plugin, presumably with some extra configuration to make the integration better. It lacks refacto
by en4bz 11y ago
This is just vim with NerdTree, YouCompleteMe, and a few other plugin, presumably with some extra configuration to make the integration better. It lacks refactoring tools which I think are crucial for an IDE to have otherwise it's just a supped up editor.
That being said very few C++ IDE's have advanced refactoring due to the scourge that is the C Preprocessor. This also why most people, like myself, stick with Vim for C/C++ development.
- tomjakubowski 11y ago> That being said very few C++ IDE's have advanced refactoring due to the scourge that is the C Preprocessor. This also why most people, like myself, stick with Vim for C/C++ development. C and C++ exploration and refactoring tools like rtags that hook directly into a compiler, and integrate with your editor of choice, have never failed me. I haven't put them up against too much in the way of preprocessor macro hell, but I've got to think they've got the best shot at doing "the right thing" in the face of macros. Just as a random example, see this https://github.com/Andersbakken/rtags/issues/281 https://github.com/Andersbakken/rtags/issues/281
- GFK_of_xmaspast 11y ago> That being said very few C++ IDE's have advanced refactoring due to the scourge that is the C Preprocessor The political goals of the gcc people didn't exactly help here.
- Too 11y agoPlease elaborate.
- jhbadger 11y agoI think what is being referred to Richard Stallman's rejection of AST-dumping support in gcc (which some have requested for IDE support of refactoring, etc.) on the grounds that such support could theoretically also aid proprietary tools that could avoid the GPL by just taking the AST output.
- int0x80 11y agoIt should not be very hard to fork gcc and make a quick hack that dumps the AST. You don't need the latest optimizations or AST versions, just a correct one, so there is no need to update it a lot (sans fixing bugs you created with the hack). You wont see at this point bogus ASTs generated by gcc.
- mc_hammer 11y agoi was considering writing an IDE, could you please explain what refactoring tools are necessary/lacking from any ides that are not Visual studio
- iheartmemcache 11y agoVisual Studio with VAX (http://www.wholetomato.com/features/default.asp http://www.wholetomato.com/features/default.asp) is more than sufficient. The general objection to it historically has been "it's not free", but Visual Studio Code is Electron.io/node based, free, works on 3 of the major platforms, MSFT is in the process of enabling first-party support for using LLVM (I'm not sure if this is for the "Code" version of the traditional executable base --which is also available for free in the "Express" mind you) so that excuse isn't really valid anymore. If you're writing C# and not C++, then Resharper from IntelliJ is going to do you better probably. Speaking of which, JetBrain's CLion is way better than VIM w/r/t refactoring, intellisense, auto-complete, etc, not too surprising really since that's what they're famous for. Refactoring C in general is really trivial compared to the template messes I'd imagine a compiler would struggle with though. I'm not sure if they have a community edition but they offer 30 day trials IIRC and probably student discounts if you're not yet employed.
- oselhn 11y agoRefactoring features presented on their web are the same as features in eclipse CDT which is free and runs almost everywhere. Visual studio code is just configurable editor not IDE. In my opinion atom or sublime are better choice.
- oselhn 11y agoI use mostly eclipse, so maybe other IDEs already have it. * Extract superclass/interface which will work on the whole codebase * Support for NVI - rename, change parameters, convert to virtual interface and back * code duplication detection (maybe exists but I never found sufficient one)
- electrum 11y agoTake a look at the refactorings available in CLion: https://www.jetbrains.com/clion/features/code-generation-and-refactorings.html https://www.jetbrains.com/clion/features/code-generation-and... Refactoring tools are incredibly powerful. For example, renaming a class method "foo". You can rename it yourself with a text editor, but now you have to manually update all the callers. You could try using search/replace, but what if several unrelated classes have a "foo" method? How do you only change the correct method calls? The IDE refactoring tool does this automatically.