http://www.vim.org/scripts/script.php?script_id=1879
http://vim.wikia.com/wiki/Omni_completion
C++ http://vim.wikia.com/wiki/C%2B%2B_code_completion
Python http://www.vim.org/scripts/script.php?script_id=1542
Objc http://www.vim.org/scripts/script.php?script_id=2674
Most people who use vim don't use it as an exercise in minimalism we're often caricatured as constantly undergoing. I mean, we don't chock it up to Visual Studio/Emacs level of plug-ins, but we definitely use some in our day to day on average.
How do you know that?
Even in unix shops, lots of the people end up trying to use stuff like kDevelop and stuff. Those of us who instead vim, we talk.
Good luck! The muscle memory you learn now will pay off in the future! :D
Edit: That should be close tab, not close window, c-shift-w is window.
(I've never really understood why there are keyboard shortcuts for things like "quit program" and "print". How often, if ever, do you want to do those things? Do they really need to be one keystroke away!?)
How is it not useful to have a keyboard shortcut to change focus between windows? Windows in vim refer to what I believe are called "splits" in emacs. The vim c-w stuff is analogous to c-x stuff in emacs.
As for close tab shortcuts in firefox -- I use it all the time. Standard work flow for me includes c-t, google.com, <misspelled word>, c-w, <correct spelling from "did you mean">.
This might be quicker: c-k, <misspelled word>, alt-enter, c-w
alt-enter opens a new tab with the search.
It's very useful in situations like this to know that Ctrl-Shift-T reopens the last closed tab, and you can press it repeatedly to continue opening less-recently closed tabs.
> sl
zsh: correct 'sl' to 'ls' [nyae]?
(edit: formatting)Of the hundreds of times this feature has popped up, I believe I've actually hit "y" twice.
Vim's indentation changes still require a mode change three obscure keys and an enter, and vim's discoverability still sucks.
vim has had code folding for years:
:help fold.txt
If you want to indent code, < and > are your friends. (Really? Indenting code with search/replace? What are we, barbarians?)"=" is the autoindent command. Vim recognizes many languages and you can give it plugins to understand more. Use "==" to autoindent the current line. My personal favorite, "gg=G", jumps to the top of the document and autoindents the entire thing. One time at work I was gently reminded how many spaces I was supposed to indent per the company's coding standard. I quickly set the relevant editor parameters and with four keystrokes my code was compliant.
I think there's a code-folding ability but I've never used it.
Edit: actually, its pretty good for any piece of software.