1>简要介绍
vim+cscope+ctags+global是linux下很好的开发环境组合,类似windows下的sourceinsight功能,但是功能更强大,并且是完全免费。
这个组合环境用到的一些工具:
vim:这个是Linux下功能十分强大的编辑器,就不说了。
ctags:生成tag文件的命令,这个是其它工具的基础。
taglist:需要ctags的支撑,直接在左边列出函数列表,全局参数列表。
cppcomplete:需要ctags的支撑,可以补全类型或者函数名。
cscope:cscope 比较强大,可以对函数以及部分类型定义进行跳转,但有些BUG,好像在某些条件下无法正确找到分析枚举的定义
global:貌似和cscope,taglist功能一样,据说对于大型的工程表现不错。
2>在ubuntu系统上安装步骤:
sudo apt-get install vim
确保vim是最新版本,否则vim无法使用鼠标,或者
sudo apt-get install vim-gtk 安装gvim
要使vim使用鼠标必须执行命令: :set mouse=a 这样,在vim中直接点击函数名就可以跳转到该函数的定义。
sudo apt-get install exuberant-ctags cscope global
安装控件
建立一个目录来安装控件:mkdir -p ~/.vim/plugin
插件路径相关的信息请参考下面的文档:
控件的安装很简单,只要从网上下载以后直接放在这个目录下就可以了,这些控件主要是对vim功能的扩展。比如:在vim中执行相应的命令打开文件列表(:WMToggle),浏览函数定义等。
下载控件文件以后,在~/.vim/目下中解压缩,这会在你的~/.vim/plugin 和 ~/.vim/doc 目录中各方一个文件。
vimball插件
是为了方便安装插件的一个插件
cscope_maps控件
下载:
文档:
taglist控件
下载:
cppcomplete控件
下载:
bufexplorer控件
下载:
plugin/ bufexplorer.vim - bufexplorer插件
doc/ bufexplorer.txt - bufexplorer帮助文件
文件浏览控件
在VIM 7.0以前,文件浏览功能由explorer.vim插件提供,在VIM 7.0中,这个插件被netrw.vim插件所代替
winmanager插件
winmanager插件可以把前面介绍的
Explorer插件(VIM 7.0以前的文件浏览插件)和BufExplorer插件集成在一起,我们上篇文章中介绍过的taglist插件也提供了对winmanager插件的支持
Lookupfile插件
它使用VIM 7.0提供的插入模式下的下拉菜单补全功能,因此只能在VIM 7.0及以上版本中使用
下载:
大于lookupfile-1.4.zip这个版本需要vim-7.1以上
Lookupfile插件还需要最新的genutils支持
启动vim的时候如果出现下面的错误:
Error detected while processing /Users/mml/.vim/plugin/lookupfile.vim:
line 105:
E227: mapping already exists for <80>k5
那么参照下面进行修改:
Modified: trunk/.vim/plugin/lookupfile.vim
--- trunk/.vim/plugin/lookupfile.vim 2007-08-28 13:21:25 UTC (rev 423)
+++ trunk/.vim/plugin/lookupfile.vim 2007-08-28 13:35:28 UTC (rev 424)
@@ -102,10 +102,10 @@
noremap