created February 16, 2008 · complexity basic · author Metacosm · version 7.0
Omni completion provides smart autocompletion for programs. When invoked, the text before the cursor is inspected to guess what might follow. A popup menu offers word completion choices that may include struct and class members, system functions, and more. A similar feature in Microsoft Visual Studio is known as IntelliSense.
Overview
To turn on omnicompletion, add the following to your vimrc:
filetype plugin on set ofu=syntaxcomplete#Complete
Various languages are supported in Vim 7, including C. Omni completion scripts can be written to support other languages, and to customize behavior. :help new-omni-completion :help compl-omni
Windows users need to install a recent version of Exuberant Ctags (Ctags 5.7, released September 2007, or newer, is recommended). :help ft-c-omni
See C++ code completion for omni completion in C++ programs.
Related tips
TO DO
- This is to be an overview of omnicompletion, with links to more detailed tips as required.
- Need to make sense of related tips, and probably merge a few.
- Meanwhile, keep the following list as a useful reference for readers and editors.
Popup menu and mappings
- 102 Smart mapping for tab completion
- 1228 Improve completion popup menu
- 1257 Ctrl-p - autocomplete
- 1386 Make Vim completion popup menu work just like in an IDE
- 1486 Omni completion popup menu
Random thoughts on IDE
Usage with Python
- 1311 Compile a separate copy of Vim for Python coding
- 1548 Continue omnicompletion for python modules