5 ms·
> Code browsing and inspection is somewhat hampered by the fact its CLI. That's interesting because code browsing and inspection are by far the most important
by tralarpa 6y ago
> Code browsing and inspection is somewhat hampered by the fact its CLI.
That's interesting because code browsing and inspection are by far the most important reason why I use a modern IDE. I tolerate all their weaknesses (slow, high memory consumption, errors after updates, etc.) because of this. I am surprised that somebody would say "I am using editor XYZ despite its weaknesses in code browsing and inspection".
- mumblemumble 6y agoIt's always seemed to me that vim and other lightweight editors are most popular among people who are working in dynamic and functional languages, and heavyweight IDEs are most popular among people who are working in big, static, enterprisey OO languages like C++, Java and C#. I don't think that's just a coincidence.
- dhagz 6y agoWhat Vim lacks in browsing/inspecting code it makes up for with the speed you can make edits - using motions and macros can make tedious code changes nearly effortless. So it depends on what you value more.
- badhombres 6y agoVanilla Vim I would agree is not good for code browsing and inspection, but two things I've noticed when coding with Vim: 1. Code Browsing is an initial, one time cost when learning the code base. After you learn the code base, I've needed this ability much less. 2. Adding plugins like NERDTree and fzf/ripgrep have helped make code browsing much easier in Vim. The downside to this is that if you're new to Vim, you need to learn how to use these plugins on top of learning how to Vim. So it's just more to learn. But you can also think of this as another one time cost in general.
- thedracle 6y agoThis is true for me too, I would often use Vim to basically do quick modifications, and use an IDE for refactoring/completion, and code navigation. Recently a lot of quality plugins have been made leveraging Microsoft's languageserver capabilities to provide many of these features for NeoVim/Vim: https://github.com/neoclide/coc.nvim https://github.com/neoclide/coc.nvim In many cases it's better than an IDE because the code-inspection, linting, etc etc, can be done using the same exact tools as what your CI is using behind the scenes. Also, having a languageserver for Rust/C++/JavaScript/TypeScript/Bash etc etc, all configured through coc avoids a lot of the jumping between IDEs/editors/tools to get reasonable completion and code navigation between each.