xgdliujie的个人空间 https://blog.eetop.cn/980565 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

VIM神话----打造linux下的开源source insight

已有 4602 次阅读| 2013-7-30 18:54

  自从本本上硬盘安装了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中加入了"援助乌干达儿童"的募捐。真是令人钦佩之至!

点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 0

    粉丝
  • 0

    好友
  • 0

    获赞
  • 2

    评论
  • 1167

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-29 21:07 , Processed in 0.023504 second(s), 13 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部