当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 10 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 如何让vim像IDE一样使用
帖子发表于 : 2009-06-02 13:19 
头像

注册: 2007-06-30 17:37
帖子: 23
地址: Nanjing University of Science & Technology
送出感谢: 0 次
接收感谢: 0 次
vim是一款支持插件、功能无比强大的编辑器,无论你的系统是linux、unix、mac还是windows,都能够选择他来编辑文件或是进行工程级别的coding。如果能把vim用好了,不仅编程效率能得到大幅度提高,周围人也会因此而看得头晕眼花佩服不已,自己心里当然也会心花怒放啦。下面就让我来介绍一下如何来进行配置。这些配置所涉及到的内容有:autocomplpop, ctags, TagList, omnicppcomplete

首先Vim是内建代码补全功能的,在不需要通过任何设置的情况下就能使用。在您编辑代码的时候,键入 ctrl+x, ctrl+o, ctrl+n, ctrl+p 等快捷键,就会弹出智能提示的菜单。但是这仍然不满足大家的要求。大多数IDE中,只要代码输入到相应的位置,补全提示就会自动的弹出来,而vim的这种补全还需要自己手动的来触发。那么下面就介绍一种可以自动弹出补全提示的插件 — autocomplpop

== Autocomplpop ==

首先,从http://www.vim.org/scripts/script.php?script_id=1879处下载autocomplpop.vim文件(我们所说的vim插件就是这样的*.vim格式的文件),然后将其放入vim文件目录下的plugin目录中(unix/linux平台在/usr/share/vim/vim71中, windows平台在安装目录的vim71目录中),然后重启一下vim就会发现在编码时会自动弹出提示了。

细心的朋友会发现,光是利用autocomplpop这个插件还远远达不到要求。比如说:在c++中使用.或是->访问对象或指针中的成员和函数时还无法自动弹出提示,另外,即便是自动提示也只能提示我们在当前文档中已输入的字符串。针对这种情况,我们就需要安装ctags工具和OmniCppComplete插件。ctags是用来对文件做标记的工具,OmniCppComplete是在c和c++语言范畴内,对上述智能补全的增强版。

== ctags ==

ctags在http://ctags.sourceforge.net/下载源码,编译后安装。常规的标记命令为 ctags -R 。"-R"表示递归创建,也就包括源代码根目录下的所有子目录下的源程序。

== CppCompleete ==

OmniCppComplete在http://www.vim.org/scripts/script.php?script_id=1520下载。下载 好之后根据里面的doc文档进行安装和使用。

这样一来,代码补全就比较完善了。但是根据以往的经验,IDE中还有一个功能,那就是函数和变量的跳转查看。比如代码中出现
代码:
if(true){
    doThis();
}


我们想知道doThis()函数是如何定义和实现的,那么如何快速的来查看呢?我们就需要安装Taglist插件

== Taglist ==

插件在http://vim.sourceforge.net/scripts/script.php?script_id=273下载。下载好之后,我们可以根据其中的doc文档进行安装和配置。

我们发现其实Taglist的使用也必须要依靠ctags所创建出来的tag文件。当tag文件形成、一切配置都配置完成之后。我们可以ctrl+]来进行函数或者是变量跳转。好了,从此你就可以开始像IDE一样来使用vim进行编码了。

PS: 教程写得比较简单,其中的细节没有一一说到,只是一个宏观的介绍和指导而已,如果在细节方面有需要帮忙的地方请联系我,我将尽力而为。


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-06-02 22:14 
头像

注册: 2008-02-08 15:25
帖子: 203
地址: 海南海口
送出感谢: 0 次
接收感谢: 0 次
期待图文版说明书。 :em01


_________________
海南海口
免费指导安装配置 Ubuntu/Linux
提供刻录 Ubuntu/Linux 光盘
企鹅 139760081
iabuest[A.T]gmail.com

http://www.iabu.net


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-06-03 14:16 
头像

注册: 2007-08-24 20:16
帖子: 164
地址: Hangzhou, China
送出感谢: 0 次
接收感谢: 0 次
都是cpp的plugin :em02


_________________
http://www.google.com/profiles/chenk85


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-06-05 16:32 
头像

注册: 2007-06-30 17:37
帖子: 23
地址: Nanjing University of Science & Technology
送出感谢: 0 次
接收感谢: 0 次
哈哈,谢谢2楼的建议。小弟有时间了一定增强该版本,让它图文并茂哈。 :em11


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-07-05 21:59 
头像

注册: 2007-06-30 17:37
帖子: 23
地址: Nanjing University of Science & Technology
送出感谢: 0 次
接收感谢: 0 次
有的朋友希望能用ctrl+space来进行代码补全的提示,可以尝试在vimrc中加上下面这句话
代码:
inoremap <Nul> <C-x><C-o>

这样一来,当我们按ctrl + space的时候,就会执行<ctrl-x><ctrl-o>了。如果想把ctrl+space改成其他的命令也可以,道理是一样的。


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-07-05 22:39 
头像

注册: 2005-12-28 1:16
帖子: 3916
地址: 火星
系统: Ubuntu 12.10 X64
送出感谢: 1
接收感谢: 0 次
http://blog.chinaunix.net/u2/78601/article_94584.html


这才叫当IDE用


_________________
目前负债150多万


页首
 用户资料  
 
7 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-07-06 2:04 
头像

注册: 2007-09-29 3:09
帖子: 5773
送出感谢: 0 次
接收感谢: 3
cscope都没有了...


_________________
HUNT Unfortunately No Talent...


页首
 用户资料  
 
8 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-07-18 17:33 

注册: 2008-02-04 14:17
帖子: 5
送出感谢: 0 次
接收感谢: 0 次
xhy 写道:


转载的,原文作者的blog,上有PDF版教程下载
http://blog.csdn.net/easwy


页首
 用户资料  
 
9 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-07-19 0:21 
头像

注册: 2005-12-28 1:16
帖子: 3916
地址: 火星
系统: Ubuntu 12.10 X64
送出感谢: 1
接收感谢: 0 次
hotalexnet 写道:
xhy 写道:


转载的,原文作者的blog,上有PDF版教程下载
http://blog.csdn.net/easwy


我不知道那个是转载的,那个博客不是我的


_________________
目前负债150多万


页首
 用户资料  
 
10 楼 
 文章标题 : Re: 如何让vim像IDE一样使用
帖子发表于 : 2009-07-19 0:57 
头像

注册: 2009-03-22 9:54
帖子: 374
送出感谢: 0 次
接收感谢: 0 次
hotalexnet 写道:
xhy 写道:


转载的,原文作者的blog,上有PDF版教程下载
http://blog.csdn.net/easwy


这个不错,虽然我从来没把vim当IDE使用 :em04 下个pdf来看看,地址:
http://easwy.com/blog/archives/advanced-vim-skills-catalog/


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 10 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译