Ad blocker interference detected!
Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers
Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.
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.
Omni completion is not usually enabled by default. To turn on omni completion, add the following to your vimrc:
filetype plugin on set omnifunc=syntaxcomplete#Complete
When generating a tags file, Exuberant Ctags should be used. 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
Using omni completionEdit
To use omni completion, type
<C-X><C-O> while open in Insert mode.
If matching names are found, a pop-up menu opens which can be navigated using the
- 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 C++
- See C++ code completion for omni completion in C++ programs.
Usage with Python
- 1311 Compile a separate copy of Vim for Python coding
- 1548 Continue omnicompletion for python modules