代码改变世界

gvim与插件的安装(ctag、taglist、cscope等)

2011-12-06 17:37  Batys  阅读(2364)  评论(0编辑  收藏  举报

 gvim使用户能够在Windows环境下,能够像利用Linux的vim工具进行文本编辑,特别是程序编写,并且,很多插件都可用。但是,毕竟Windows环境不同于Linux环境,很多插件安装都非常困难。

(1)ctag与taglist

    这两个工具,为我们提供类似Visual Studio一样的,左侧的那种函数列表。并且,安装非常简单。其步骤来源于http://www.cnblogs.com/zourrou/archive/2011/04/05/2005517.html。在我的使用中,配置稍微进行了改动。

一,下载ctags,将其中的 ctags.exe 复制到gvim.exe 所在的目录,我的是 C:\Program Files\Vim\vim73
如果不复制的话,会出现
"Taglist: Exuberant ctags (http://ctags.sf.net) not found in PATH.
Plugin is not loaded."
(不复制也是可以的,需要将其添加进入环境变量中)。
 
二,下载taglist.zip文件,解压,
    将当中的 doc\taglist.txt 文件复制到 C:\Program Files\Vim\vimfiles\doc
    将当中的 plugin\taglist.vim 文件复制到 C:\Program Files\Vim\vimfiles\plugin
 
三,cmd 下,进入cd C:\Program Files\Vim\vimfiles\doc 目录,运行gvim.exe,输入":helptags ." ,重启gvim.exe。到这一步已经完成安装taglist了。
 
四,打开任意一个代码文件,输入 ":Tlist" ,就可以打开/关闭 taglist
       
(2)cscope
    这个工具能够让我们查询一个函数或者变量声明和定义在哪里,到底有多少个引用等等。感觉不甚好用,而且安装过程那叫一个复杂!由于官方发布的版本是源码包,需要我们自行编译,而编译又配置非常复杂的环境。
第一步:安装Mingw。
    去Sourceforge上面下载就可以了。这里需要说的是,国内下载sourceforge上的东西非常慢,这里找到一个很好的镜像 站,网速比原来的站点好很多了,而且资源按照索引组织,非常好找。找到Mingw项目。安装文件是自动从Sourceforge上面寻找资源下载的,稍微 大一点的文件就会宣告失败。此时需要手动下载,根据文件名结合器资源组织方式去镜像站查找即可。比如gcc-3.4.4-3-msys-1.0.13-bin.tar.lzma,就在msys/gcc目录下查找,下载完成后,需要把文件名修改正确(后缀是lzma)。
    安装完成后,需要将Mingw/bin和Mingw/sys/1.0/bin和Mingw/sys/1.0/local/bin添加进入环境变量,这样才比较方便。
第二步:安装工具集GetGnuWin32。
    还是去sourceforge镜像站找就行了,几兆大小,比较好安装。
第三步:除此之外,编译scope还需要几个组件。
    1. Regex库。可以去Sourceforge上面下载单独的Regex,也可以去Mingw项目中下载。我采用后者的方法。下载项目目录下的mingw- libgnurx-2.5.1-dev.tar.gz,将include中的regex.h放进MinGW的include目录,将lib中的 libgnurx.dll.a和libregex.la放进MinGW的lib目录。下载其中的mingw-libgnurx-2.5.1- bin.tar.gz,将libgnurx-0.dll放进程序所在目录。(转自:http://blog.creke.net/766.html)。如果没有安装,会在configure的时候,报告找不到regex.h的头文件。
    2. pdcurses工具。还是去sourceforge上或者Mingw的项目中下载。(可以下载那个.exe文件,但是安装之后实质上还是生成几个文件,依然需要执行后面的步骤。)解压后执行三个步骤(转自http://comptb.cects.com/1848-adding-pdcurses-to-mingw):
  • pdcurses.lib to MingW’s “/lib” folder
  • cursors.h and panels.h to MingW’s “/include” folder
  • pdcures.dll to MingW’s “/bin” folder
   3. pcre工具。去sourceforge镜像站下载pcre-x86-mingw4-8.12-src.tar(需要搜索,不在Mingw的项目中)。这 个工具比较麻烦,需要我们自行编译。由于之前安装了Mingw,因此,这里直接打sh命令进入shell,解压、./configure make make install方法进行编译和安装,安装得到的文件在Mingw/sys/1.0的文件夹下。这时,需要像安装pdcurses工具一样,将.lib .h .dll文件复制到Mingw的相应文件夹下。
第四步:编译安装scope
    经过这么多准备工作,终于可以开始我们的安装了。安装方法来自http://blog.csdn.net/mslk/article/details/1598513。这份资料讲述了15.6版本的安装方法,虽然sourceforge上最新版本是16.7a,但是由于新版的编译过程中总会报错(某个宏所指代的变量无法识别),依然选用旧版本安装。安装完成后,依然要将其加入环境变量!此外,还需要为scope添加环境变量TMPDIR,如set TMPDIR=c:/temp,一劳永逸的话,将其加入到系统变量中!(转自http://blog.csdn.net/cohowang/article/details/4393258
  修改源代码
cmd窗口中进入cscope-15.6的目录执行:
1、 sh configure –build=mingw32
需要等几分钟,在最后能看到信息:config.status: creating src/Makefile就行了
1、 进入src目录
2、 打开编辑global.h,在文件最后#endif /* CSCOPE_GLOBAL_H */的前面,加上两行:
#define __DJGPP__
#define __MSDOS__
3、 打开编辑exec.c,注释掉41行://#include <sys/wait.h>
4、 打开编辑mypopen.c,注释掉37行://#include <sys/wait.h>
注释掉84、85行:
//if(fd != -1 && (fcntl(fd, F_SETFD, CLOSE_ON_EXEC) != -1))
//return(fd);
5、 打开编辑find.c,注释掉1160行://(void) sleep(3);
6、 打开编辑main.c
修改360行orig_umask = umask(S_IRWXG|S_IRWXO);为:
orig_umask = umask(S_IRWXU);
修改363行if(mkdir(tempdirpv,S_IRWXU)) {为:
if(mkdir(tempdirpv)) {
注释掉378行://signal(SIGQUIT, myexit);
注释掉381行://signal(SIGHUP, myexit);
注释掉404行://signal(SIGPIPE, SIG_IGN);/* | command can cause pipe signal */
修改895行if (sig == SIGQUIT) {为:
if (sig == SIGTERM ||
sig == SIGABRT ||
sig == SIGBREAK){
修改175行fprintf(stderr, "%s: version %d%s/n", argv0,为:
fprintf(stderr, "%s: version %d%s./tCompiled by MSLK/n", argv0,
7、 打开编辑Makefile
修改133行CURSES_LIBS = -lcurses为:
CURSES_LIBS = -lpdcurses –lpcre
三、编译cscope,cmd窗口中进入cscope-15.6/src的目录执行
make –k
cscope –V 瞧一下自己编译的最新版本,很爽吧。
 

(3)omnicppcomplete.vim

    最麻烦的已经过去了,后面两个都非常容易安装。这个工具提供类似Visual Studio的自动补齐功能。按照说明将插件安装到vimfile下。具体方法:

    after\ftplugin\cpp.vim
    after\ftplugin\c.vim
 
    autoload\omni\common\debug.vim
                        \utils.vim
 
    autoload\omni\cpp\complete.vim
                     \includes.vim
                     \items.vim
                     \maycomplete.vim
                     \namespaces.vim
                     \settings.vim
                     \tokenizer.vim
                     \utils.vim
 
    doc\omnicppcomplete.txt

(4)a.vim

    这个是最容易安装的,因为只有一个文件,复制到plugin目录过去即可。这个工具提供快速的的.cpp和对应的.h文件的切换。直接可以:A,打开.cpp和.h对应的文件,:AV,打开.cpp和.h对应的文件,并且分屏。

(5)编写vimrc配置文件

    这需要技术的!不过我们只要使用Gvim,拿来网上写好的配置即可。vim的程序世界给出的脚本已经很好了!照抄~

http://www.vimer.cn/?p=91  http://www.vimer.cn/?p=114 http://www.vimer.cn/?p=150

(6)注意

    到这里,一个强大的Gvim就配置完成了。本来以为相当好用的,结果发现就那么回事,呵呵,忍了吧,折腾了一天的成果呀。需要解析的源码,不能包括中文的文件名和中文的路径,一定要注意!另外,使用scope,每次要将解析的文件用命令加进去!

(7)结语

    安装就告一段落,真正要发挥其作用还要很好的去使用这些工具。装这个折腾了一天一宿,费了我好几块的流量不说,项目进度又要推迟了。唉~我该如何面对俩老板~~~~~o(>_<)o ~~

本文出自 “小强技术博客” 博客,请务必保留此出处http://superpopb2b.blog.51cto.com/786164/681325