IT技术博客大学习 共学习 共进步

通过vim字典补全,实现php函数名自动补全

Vimer 2010-01-05 13:54:42 浏览 5,543 次

之前的文章已经介绍过vim中实现各种补全,这篇文章我们主要以php为例,实现通过字典补全,来自动补全php函数。
首先,我们从下面的url下载一个php的函数字典文件
http://cvs.php.net/viewvc.cgi/phpdoc/funclist.txt
然后改名字为 php_funclist.txt,并放在vim的安装目录的ExtraVim下(笔者的是C:/vim/ExtraVim)

然后,我们就可以通过如下两行代码来实现将php_funclist.txt字典文件载入到vim中啦~

set dictionary-=$VIM/ExtraVim/php_funclist.txt dictionary+=$VIM/ExtraVim/php_funclist.txt
set complete-=k complete+=k

注意上面的代码中,我的php_funclist.txt的路径是$VIM/ExtraVim/php_funclist.txt,$VIM的意思是vim的安装目录,比如我安装在C:/vim/下面,那么$VIM 就是 C:/vim。

呵呵,看起来好像结束了,但是别忙,有一个很重要的问题就是,如果只是这样设置的话,那么当我在编辑cpp文件时,也会自动调用php的函数补全,这可不是我想看到的。
解决方法如下:

au FileType php call AddPHPFuncList()
function AddPHPFuncList()
    
set dictionary-=$VIM/ExtraVim/php_funclist.txt dictionary+=$VIM/ExtraVim/php_funclist.txt
    set complete-=k complete+=k
endfunction

简单解释一下,即只有当文件类型是php的时候(无论你是打开一个.php文件,或者new xx.php,或者setf php),我才会加载php_funclist.txt的词典。

建议继续学习

  1. vim几个小技巧(批量替换,列编辑) (阅读 37,263)
  2. 简明Vim练级攻略 (阅读 22,103)
  3. Vim下的代码自动补全和代码跳转阅读 (阅读 15,224)
  4. 为什么要用 Emacs/Vim,而不是任何其他编辑器 (阅读 12,923)
  5. vim入门,进阶与折腾 (阅读 10,624)
  6. 在vim(gvim)中运行终端(对,你没有看错,我也没有写反) (阅读 10,603)
  7. Emacs配置C/C++-mode的代码智能提示和自动补全 (阅读 10,244)
  8. 让vim在终端下的配色亮起来! (阅读 9,903)
  9. 最近总结的一些技巧(vim,python,svn,fiddler等) (阅读 8,103)
  10. vim的复制粘贴小结 (阅读 7,863)