vim omnicpp полный шаблон не найден
Я установил vim7.3 на моем компьютере (под Windows 7), и я хочу использовать плагин автозаполнения.
Я много искал и обнаружил, что Omnicppcomplete является лучшим для этого.
Итак, я следовал этому уроку: установить плагин OmniCppComplete
Мой конфигурационный файл _vimrc выглядит так:
set nocp
filetype plugin on
syntax on
set filetype=cpp
set tags+=C:/Program\ Files/Vim/vimfiles/tags/stl
" build tags of your own project with CTRL+F12
"map <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>
noremap <F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<cr>
inoremap <F12> <Esc>:!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<cr>
" OmniCppComplete
let OmniCpp_NamespaceSearch = 1
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_MayCompleteDot = 1
let OmniCpp_MayCompleteArrow = 1
let OmniCpp_MayCompleteScope = 1
let OmniCpp_DefaultNamespaces = ["std", "_GLIBCXX_STD"]
" automatically open and close the popup menu / preview window
au CursorMovedI,InsertLeave * if pumvisible() == 0|silent! pclose|endif
set completeopt=menuone,menu,longest,preview
Но если я наберу это, происходит ошибка и не знаю почему.
#include <iostream>
int main(void) {
std::|
}
и ошибка: -- Omni completion (^O^N^P) Pattern not found
и это исправление не помогает, потому что я уже использую файлы, которые использует namespace std {}
1 ответ
Решение
Проблема заключалась в том, что set tags+=C:/Program\ Files/Vim/vimfiles/tags/stl
здесь что-то не так:
:pwd
->c:\Windows\system32
- скопировать файл тегов в system32
- перезапустить Vim
тогда работал следующий код C++.