> If autocompletion is needed don't use vim or emacs, -use Netbeans or eclipse, both excellent, free (both ways) and open source.
Vim also contains excellent autocompletion (several kinds, actually, most powerful of which is the omni complete) but it's not restricted to one language. It may, however require you to install your language specific plugins. Vim ships with C and C++ mode, which requires you to build a ctags database of your source code. In addition you might want to add cscope for source code navigation.
Eclipse has autocomplete perhaps for a handful of languages but Vim has support for autocompletion in tons of languages.
In addition to omni-complete, vim can have an user defined completion (C-x C-u), which is handy to set to do syntax completion (set completefunc=syntaxcomplete#Complete). Vim ships with tons of syntax files, which are used for completion and syntax highlighting. This is not super useful for programming, but is excellent for different kinds of configuration files, so you don't have to memorize (or look in the manual) for the configuration options you use.
And I'd rather use Vim without autocomplete than have to deal with Eclipse. Thankfully I don't have to.
I like to use eclipse with the vrapper plugin. That way I get the completion and refactoring of eclipse as well a decent set vim key bindings. Vrapper may not perfectly emulate vi/vim but it does the basics well. And when I need to use advanced vim features (eg macro magic) I just open the file in vim.
To me the IDE features make up for the minor annoyances of using vi/vim emulation.
Vim also contains excellent autocompletion (several kinds, actually, most powerful of which is the omni complete) but it's not restricted to one language. It may, however require you to install your language specific plugins. Vim ships with C and C++ mode, which requires you to build a ctags database of your source code. In addition you might want to add cscope for source code navigation.
Eclipse has autocomplete perhaps for a handful of languages but Vim has support for autocompletion in tons of languages.
In addition to omni-complete, vim can have an user defined completion (C-x C-u), which is handy to set to do syntax completion (set completefunc=syntaxcomplete#Complete). Vim ships with tons of syntax files, which are used for completion and syntax highlighting. This is not super useful for programming, but is excellent for different kinds of configuration files, so you don't have to memorize (or look in the manual) for the configuration options you use.
And I'd rather use Vim without autocomplete than have to deal with Eclipse. Thankfully I don't have to.
Emacs has great autocomplete too.