It seems that I came across the same thing with you. When I type MyClass::, "pattern not found" appears, but when I type std::, it works well. Is it some bugs or we haven't configured the tags file?
What's more, when I include --c++-kind=+p as the ctags parameter, the member functions appears in the popup menu when I insert . or -> to try to do the completion. However, when I type <C-]>, tying to jump to the definition of the function, I doesn't work. Instead, it pop up a list, wandering where I want to jump. Are there any ways to jump to the definition of a function under my cursor, when I include --c-kind=+p and --c++-kind=+p in my ctags parameter list? I'm Appreciate your reply. 2011/7/8 Tim K <[email protected]> > Hi everybody, > > I am new to vim and tried to set up Omni completion for C++ in vim. > I use gvim Version 7.3 and Windows XP. > > What I have done so far is: > > Download OmniCppComplete from > http://www.vim.org/scripts/script.php?script_id=1520 and the Windows > version of ctags from http://ctags.sourceforge.net/ > > Copy the after autoload and doc directories from the archive to > C:\Programme\Vim\vimfiles\after, C:\Programme\Vim\vimfiles\autoload and > C:\Programme\Vim\vimfiles\doc > > As wriiten at http://vim.wikia.com/wiki/VimTip1608: > Add the following lines in my _vimrc file: > set nocp > filetype plugin on > > " OmniCppComplete > let OmniCpp_NamespaceSearch = 1 > let OmniCpp_GlobalScopeSearch = 1 > let OmniCpp_ShowAccess = 1 > let OmniCpp_ShowPrototypeInAbbr = 1 " show function parameters > let OmniCpp_MayCompleteDot = 1 " autocomplete after . > let OmniCpp_MayCompleteArrow = 1 " autocomplete after -> > let OmniCpp_MayCompleteScope = 1 " autocomplete after :: > 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 > > > Write a file main.cpp: > //------------------------------------ > #include<vector> > > class MyClass{ > public: > int f(){return 3;} > int g(){return 6;} > }; > > int main(){ > MyClass a; > std::vector<int> v; > vector<int> w; > > return 0; > } > //---------------------------------- > > Download modified header files from > http://www.vim.org/scripts/script.php?script_id=2358 > On this header files I executed ctags -R --c++-kinds=+p --fields=+iaS > --extra=+q --language-force=C++ cpp_src > > In the directory with the main.cpp I executed ctags -R --c++-kinds=+p > --fields=+iaS --extra=+q . > > The 2 tags files where then added to vims tags variable by :set tags += > C:/some/path/tags > > My Problem now is: > When I type "MyClass::" then I get a "-- Omni completion (^O^N^P) Pattern > not found" > The same for "std::" and "v." > > But "a." and "w." works as expected. > > Did I misunderstand the capabilities of OmniCppComplete; did I do something > wrong; or is my computer hating me? > > Hope somebody can help. > > Tim > > P.S.: > I didn't know if I should write what I have done as detailed as I did, > since everbody who tries to help me has to read all that. > But on the other hand there may be details in there that are needed. > I appreciate advices how long I should describe the situation when I have > another problem in the future. > > -- > You received this message from the "vim_use" maillist. > Do not top-post! Type your reply below the text you are replying to. > For more information, visit http://www.vim.org/maillist.php > -- Stanley Rice Sun Yat-sen University -- You received this message from the "vim_use" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php
