我在一个大型项目中使用vim与php omnicompletion。我有一个ctags的文件,并使用:在vim中调试缓慢的php omnicomplete
au FileType python set omnifunc=pythoncomplete#Complete
au FileType php set omnifunc=phpcomplete#CompletePHP
au FileType javascript set omnifunc=javascriptcomplete#CompleteJS
au FileType html set omnifunc=htmlcomplete#CompleteTags
au FileType css set omnifunc=csscomplete#CompleteCSS
au FileType xml set omnifunc=xmlcomplete#CompleteTags
set complete=""
set complete+=.
set complete+=k
set complete+=b
set complete+=t
在我的配置
目前全完整至少5秒钟后,将完整的PHP内置插件。它不会完成我的标签列表中的任何内容,但<C-p>
将完成标签列表中的项目。我曾认为完整= t会检查标签文件。
标签通过<C-p>
完成的速度非常快,所以不知道是什么让我的全方位完成变得如此惊人地慢。
如果我在我的家目录中编辑一个新鲜的.php文件vs这个项目目录,那么建立在omni complete中的php很快。
感谢您的任何提示/帮助正在调试此。理想情况下,我希望有omni同时完成内置和ctags完成,这似乎是完整的= t文档建议的。
所有这些'FileType' autocmds都是不必要的,如果实际函数名称发生变化,将导致问题。这些都将由相关的'ftplugin'脚本正确设置。另外,你的第一个'set complete'行中的引号什么也不做。 'set complete ='等效于那行,因为'''是Vim的注释字符 – jamessan 2010-02-04 15:58:10