4 ms·
As a vimmer who has used Visual Studio in the past: - Auto-complete can done in emacs and vim, too. There's an older vi-style completion which just completes f
by etal 18y ago
As a vimmer who has used Visual Studio in the past:
- Auto-complete can done in emacs and vim, too. There's an older vi-style completion which just completes from existing tokens in the current file (Ctrl-P) and a newer "omni-complete" (Ctrl-X-O) which is a bit smarter. For better poking around, keep an IPython session running.
- Don't scroll by hand in vim. There are keybindings for all kinds of jumping around and finding the declaration or definition you need.
- Search and replace: I'm surprised you would doubt this. Vim itself is a search/replace/insert filter; there's no dialog you bring up; full regular-expression navigation and substitution is always active. That's why a couple of keystrokes is usually faster than reaching for the mouse, for vim and emacs users.
- Command line: Yes! Search, replace, sort, find a declaration, pull up the documentation for a function, run a documentation generator, interact with the version control system -- most of it's build into the editor, and for what isn't built in, the editor gives easy access to the system shell. It's perfectly reasonable to build and edit your code with vim in one window, perhaps split into a few buffers, while playing with the resulting program in a terminal window next to it. For an interpreted language like Python, you don't even need to restart the interpreter, just reload the modules after they change. Thanks to this design, all of this works just as well over an ssh or telnet session.
Vim/vi is built for Unix; on Windows, without Cygwin, it's fairly crippled compared to a system that's fully integrated with the operating system. Unix was made to be programmable, and the shell gives significant help for inspecting the system and connecting different programs together. So a text editor that gives direct access to all of these capabilities and builds on top of them is very powerful -- assuming you already know how to use the shell effectively. For VS, it's the other way: VS makes Windows programming reasonable, while doing the same things without the IDE's substantial help (perhaps the way it is in Eclipse) is brutal.