自从本本上硬盘安装了linux桌面系统之后,一直在linux的世界里游弋。从花哨的ubuntu到敦厚老实的Fedora,其中经历了好多好多。跟很多菜鸟初学者一样,经历很多的摔跤爬起,安装、失败、求助再安装的痛苦历程。经过DIY的风雨洗礼,现在终于深深明白了开源与共享的真实意义。也许,这种成长是伴随着痛苦,也许,这其中有太多的不便与磨合。在一番沉寂之后,你才会明白,什么叫做软件操作系统,什么只是一个商业工具。 一次出差,带着自己的本本出发了,习惯了windows下cross compile的我一时在使用开发工具上遇到了不少的困难。最终还是强忍着没有倒向windows。那次经验给我的最大的印象就是linux下为什么没有像source insight这样的强大code editor。纠结的使用gedit在海量代码丛中跋涉,真是一段辛苦的经历啊。 这次放假,一次偶然的机会,接触了ctags,学习了cscope,最终把vim打造成了强大的ide。对于久旱遇甘霖的我,怀着无比喜悦的心情,写下这篇日志,希望给同样有困扰的爱好者带来一份欣喜。在此特别感谢网友吴垠,我就是在他的博客指导下完成了这些魔法似的改造工作。 先晒晒咱的vim改造之后的效果图。嘿嘿。
左边一栏是Tlist,显示文件中所有的符号表。中间是你编辑的源文件。右边一栏是你选择的工程目录文件。所有功能几乎和source insight一样,也支持ctrl + 鼠标功能,支持鼠标定位,跳转,查找。source insight有的功能全部都可以实现,source insight没有的功能你也可以拥有。不仅vim本身,支持它各种功能的插件、优秀特性等也都在紧锣密鼓的进行着,直臻完美。也许哪天我们这些小鸟们也可以去贡献一把。 怎么样?够酷够给力吧。如果你也想DIY属于自己的完美vim IDE,那么请不要移开你的目光,跟我一起探索把。^_^. 不得不承认,linux下的软件安装和版本始终是个让很多人病诟的问题。为了体现严密性,我给出我的系统版本: 操作系统 Fedora15 release版本 桌面系统 gnome3.0 vim版本vim 7.3。Fedora直接在www.fedoraproject.org官网上获得,镜像分live usb和dvd两种,主要是是否带了安装包的区别。我习惯用live-usb-creator在u盘上制作了启动盘之后进行完全格式化安装。然后再联网yum install 所需包。在rpmfusion官网上更新好它的源之后,配合原有的源,基本上可以找到所有需要的软件包。 不废话了,下面开始我们正式工作。 1.安装vim,在有网络的情况下,直接使用安装包工具即可搞定。比如Fedora下面敲入命令 # yum install vim即可下载最新版本的vim(目前是7.3).也可以使用源码安装,vim需要有ncurses或者其 它终端库的支持。其它的包也需要一起下载安装。vim的使用就不多说了,在终端键入vimtutor,每天练习30分钟,一周基本可达熟练。 2. 首先键入cd 进入用户目录。 使用vi、vim、或者gedit创建vim配置文件.vimrc。 创建vim插件和文档目录。# mkdir -p .vim/doc /* 帮助文档 */ # mkdir -p .vim/syntax /* 语法规则 */ # mkdir -p .vim/plugin /* 插件 */ 3.增加语法高亮 在~/.vimrc中加入 syntax enable 和 syntax on两句可打开语法高亮,这个默认好像就是打开的。 4.打开鼠标功能和显示行号(SHIFT+G必备) 在 ~/.vimrc中加入 set mouse=a和set nu。这样vim刚启动的时候就加入了行号,习惯了鼠标操作的朋友也可以用鼠标定位键入了。 5.ctags实现程序跳转 ctags是一个独立应用程序,他可以建立指定目录下的源文件的标签,在你光标停留的位置按"Ctrl + ]"就可以跳转到函数的实现或者变量声明地方。在前面加入鼠标功能后我们可以"Ctrl + 鼠标左键",实现跳转。这个是source insight是一模一样的。下面详细说下ctags功能的实现步骤: (1) # yum install ctags 安装ctags (2)ctags -R you dir -R 后面是你的源码所在路径,执行这条命令后,会在当前生成一个叫做tags的文件。也就是索引文件。 (3)在vim中运行命令 :set tags = you dir/tags 指定索引文件所在的地方,这样就可以跳转了 6.TagList标签列表功能 TagList只是vim的一个插件,实际上只是一个脚本代码,vim执行过程中将其解析实现相应的功能。 这个功能就是我们效果图的左边框的部分。按如下步骤实现: (1)插件下载http://www.vim.org/scripts/script.php?script_id=273
(2)在 ~/.vim 目录下解压 taglist_xx.zip (3) vim中运行命令 :Tlist就可以将TagList框调出,如果再执行则会隐藏。 7.文件浏览器,实现右框功能 插件基本上是默认安装。 需要在~/.vimrc中加入 let g:winManagerWindowlayout='FileExplorer'即可。 在vim中运行命令 :WMToggle可以将文件列表调出。出现右边框的那种效果,用鼠标选中文件名即可进行编辑。 到现在我们需要的功能基本上都已经实现了,出现多个窗口时候可以先按 “Ctrl + W”然后"Ctrl + x"来换他们的位置以达到你喜欢的效果。原文中还加入了cscope,目前还没有大用,以后觉得不错了再更新本日志。 我们目前实现的vim的功能不到1%,不仅vim本身,它的使用也是一个巨大的宝藏。可以参考下面的网站下载帮助的文件包: http://vimcdoc.sf.net
(English) http://vcd.gro.clinux.org
(中文) 在此对vim的作者表示感谢和敬意,作者不仅无私的开发、开放了如此强大的软件工具,也和很多志愿者一直在创作各种插件和语法,以更好的为人们服务。更为可敬的是,作者在vim中加入了"援助乌干达儿童"的募捐。真是令人钦佩之至!