博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

gvim+ctags+taglist带自动提示功能的代码编辑利器 +转载

Posted on 2012-11-17 20:46  蜗牛57  阅读(1018)  评论(0编辑  收藏  举报

gvim+ctags+taglist带自动提示功能的代码编辑利器 +转载 您已转载了此文章

分类:非技术区

gvim+ctags+taglist+snipMate+AutoComplPop 打造带自动提示功能的代码阅读环境

vim是linux/unix系统下一款使用最广泛的文本编辑工具,其定制功能卓绝,网上很多大虾都把vim打造成一款超强编辑利器,比如C源码阅读、java的IDE等等。今天我给大家
介绍的是在windows下使用vim,以及如何使用gvim+ctags+taglist+snipMate打造带自动提示功能的代码阅读环境,以供参考。
1.安装gvim
gvim是vim在windows平台下的版本,可以从其官网下载,地址:http://www.vim.org/download.php,安装完成后,
其目录(我的路径是:D:\software\Vim\)包括vim72、vimfiles两个目录和_vimrc文件。
2、解压缩ctags
首先下载ctags,ctags是一款开源工具,为gvim提供标签支持,下载地址:http://ctags.sourceforge.net ,最新版本应该是ctags58.zip。
为了方便我把ctags和vim放在同一个目录下,如我的是:D:\software\Vim\ctags58,可以把这个路径加入到系统环境变量path中,方便使用,也可以不加。
其次配置ctags,让gvim识别ctags。需要在gvim的配置文件_vimrc中配置,配置内容如下:
    "让taglist找到ctags
    let Tlist_Ctags_Cmd="D:/software/Vim/ctags58/ctags"
    let Tlist_Show_Menu = 1

    "ctags set
    set tags=tags;
    set autochdir    

其实就是设置Tlist_Ctags_Cmd变量为ctags的解压缩路径,这个根据实际情况进行修改。
还有后面两个set是让ctags自动从当前目录查找tags文件,若没有自动依次从上层目录中查找。


3、下载taglist插件
下载地址:http://www.vim.org/scripts/script.php?script_id=273 ,最新版本是taglist_45.zip。
把zip文件中的内容全部解压缩到 vimfiles目录 中,然后在 _vimrc 文件中配置如下:
    "使用F8打开Taglist
    nnoremap <silent> <F8> :TlistToggle<CR>
    "生成一个tags文件
    nmap <F9> <Esc>:!ctags -R *<CR> 

其实就是配置了用F8打开taglist的标签窗口,很方便。用F9在当前文件的所在目录下生成tags文件。

4、下载snipMate插件
下载地址:http://www.vim.org/scripts/script.php?script_id=2540,下载页面有其使用说明。
把下载文件解压缩到 vimfiles目录 中即可。

5、下载AutoComplPop 插件
下载地址:http://www.vim.org/scripts/script.php?script_id=1879,把下载文件解压缩到 vimfiles目录 中。
需要做两个配置修改:
a、修改plugin/snipMate.vim,在文件末尾加入以下内容:
fun! GetSnipsInCurrentScope()
        let snips = {}
        for scope in [bufnr('%')] + split(&ft, '\.') + ['_']
          call extend(snips, get(s:snippets, scope, {}), 'keep')
          call extend(snips, get(s:multi_snips, scope, {}), 'keep')
        endfor
        return snips
endf 

b、在 _vimrc 文件中加入一行:
let g:acp_behaviorSnipmateLength=1


通过以上配置,可以使我们在windows环境下也可以使用vim,并且使其具有自动提示功能,但这个自动提示功能还比较弱,
只能通过生成的tags文件来提示,比如说已经输入过的单词或其他文件中的方法名都可以提示出来。如果要达到比如eclipse
这样的java IDE功能可以下载vim的插件javacomplete,具体配置参考下载页的说明。
另外,就是taglist可以使我们很好的进行方面定义查找等强大功能,同时提供了标签列表窗口,方便查看文件内容。

附:关于上述配置在 _vimrc 中的全部内容
    "让taglist找到ctags
    let Tlist_Ctags_Cmd="D:/software/Vim/ctags58/ctags"
    let Tlist_Show_Menu = 1

    "ctags set
    set tags=tags;
    set autochdir

    let g:acp_behaviorSnipmateLength=1

    "使用F8打开Taglist
    nnoremap <silent> <F8> :TlistToggle<CR>
    "生成一个tags文件
    nmap <F9> <Esc>:!ctags -R *<CR>

    "设置Taglist
    let Tlist_Show_One_File=1
    let Tlist_Exit_OnlyWindow=1