c语言item需要什么头文件,==把VIM打造成开发C的IDE==

从开始适用VIM已经快半年了,经过半年的打造和熟悉,VIM已经成为我工作生活中不可分开的一部分!现在使用WORD、或者在其他人的机子上使用!SourceInsigh等工具时候都忍不住按ESC、HJKL! 在使用过程中,我也贡献了一个插件,funprototypes.vim,可以自动添加函数原型到程序中!

VIM真的是个非常强大的工具,介绍一篇博文<>, url:http://hi.baidu.com/jiqing0925/blog/item/ff30eb11f6671d6ccb80c42d.html,

,在这篇博文中你就会知道VIM和Emacs被称为神器的原因。存在即合理,VIM和Emacs存在这么长的时间肯定是有它们的道理的,VIM的入门门槛比较高,但是当你真正融入到其中时,你就会惊叹其强大!

废话不多说,现在就介绍把VIM打造成一个C/C++  IDE 需要如何设置,添加什么插件!

* 1. IDE类插件

首先要形似,形似则神似,一般的IDE(就拿SourceInsight来说)一般有文件导航,函数列表,搜索结果等窗口。在VIM你也可以同样的实现。

* NERD_tree & project

NERD_tree:http://www.vim.org/scripts/script.php?script_id=1658

project :http://www.vim.org/scripts/script.php?script_id=69

这2个插件一般出现在IDE的左边,通过这2个插件可以方便的定位到想要编辑的文件。NERD_tree就是文件浏览器,project就比较像其他IDE。对于小型的系统,NERD_tree就可以了,project就比较麻烦,需要自己添加一些信息,但是它比较灵活,可以对文件进行分类。个人适用意见:project一开始觉得有点用,到后面用着用着就觉得没什么用,如同滇狐说的,食之无味,弃之可惜,对于小系统来说有NERD_tree足矣,对于大的系统来说,其又显得更不灵活了。

还有一个非常棒的定位编辑文件的插件是lookupfile.vim. 可以在快速查找文件, 这个插件对于大型的系统来说是非常有帮助的,不过使用也稍微有点小小麻烦,要生成一个tags文件,具体怎么操作可以参看易水博客的博文:http://easwy.com/blog/archives/advanced-vim-skills-lookupfile-plugin/. 还有一个功能比较强大的查找插件是fuzzfinder.vim, 不过我用习惯了lookupfile.

* taglist.vim

http://www.vim.org/scripts/script.php?script_id=273

这个插件可是常年雄霸vim下载榜第一名。通过设置可以在vim右边显示定义的全局变量、宏定义、函数等!非常容易在文件中进行定位。

* quickfix

这个插件已经集成到vim中了,可以显示搜索结果,编译结果等。可以像IDE一样按一个键就可以到下一个结果。非常方便!

* srcexpl

这个插件在屏幕下方开一个小窗口,当你把光标移动到函数名或者变量会在这个窗口显示其定义。这个插件是我们中国人开发的。也很棒!

* bufexplore tabbar

tabbar在屏幕最上端显示打开的文件列表。bufexplore可以管理打开的文件。用这2个插件的时候最好设置set hidden。设置隐藏缓存

智能提示是IDE不可缺少的一个功能,VIM也能完成这个功能。智能提示的插件有好多个,通过很多个插件结合可以快速的提示,加快开发速度。

智能提示一般都会依赖Ctags或者cscope, ctags和cscope不是vim插件,它们是独立的程序,它们的作用就是扫描文件,提取符号集,记录其所在的位置。所有的IDE都有这样的程序,它们一般都运行在后台,当你改变文件时,它们也更新符号集数据库。VIM唯一让我不爽的就是这点,它没有后台程序来记录这些改变,需要手动更新。当你处理一个大型的系统时候更新一次又非常慢,ctags不支持增量,但是很多的插件都依赖它。这点真的很让人蛋疼!不过还好有缓存提示,就是你当前编辑的文件中的符号集都会被自动搜集起来,这样你没有手动更新的情况下也会提示。

* AutoComplPop & neocomplcache

这2个插件选其一,acp比较轻量级,neocomplcache功能比较强大,我用的是 neocomplcache. 有了这二个插件会自动弹出提示,而不要按. 大大减少了按键次数。

* supertab

按tab键可以完成自动补全

* code_complete

这个插件在写函数的时候很有用,当你不知到函数原型时,按映射的键可以显示出原型,如果你忘了原型这样就不必去文件中找。

比如定义了一个函数int foo(int a, int b)

当你输入foo(, 按快捷键(默认是tab,安装来acp或者neocomplcache要改下)便提示foo(`` , ``) , 是不是很强大?(前提是要生成tags文件)

* snipMate

当输入很少的几个字符再输入定义的快捷键就可以让VIM帮你输出事先定义好的片段

举例:输入pr按映射的快捷键便提示:printf("%s/n");

* c.vim

功能非常强大,包含snipMate的功能(不过还是snipMate好用),还有注释,编译,splint等功能。创建新文件时自动添加文件注释等!

* OmniCppComplete

这个主要是针对类、结构体,当输入“.""->"时会弹出其成员函数、成员变量或者结构体成员!当然也要有tags文件!

* a.vim

在.h .c cpp 中切换! 方便在头文件和源文件中切换!

* crefvim.vim

可以方便的查看标准C的文档,当你不知道使用某个标准库的函数要哪个头文件时,不知道需要什么参数时,按cr便很轻松的可以知道!

* DoxygenToolkit.vim

把光标移到函数名上,输入命令:Dox便可以在函数上面添加这个函数的注释,参数的说明等。

* SingleCompile.vim

当你只是想证明一个小函数的功能,又觉得写makefile太麻烦时,这个插件就刚刚好啦!

* svncommand.vim && vcscommand.vim

这2个插件用来做版本控制,svncommand只适用于svn, vcscommand则适用许多版本控制工具。

* EnhancedCommentify.vim

适用于各种语言的注释,只需要记住一个快捷键,就可要注释或取消注释多种语言。very good!

* funprototypes.vim

http://www.vim.org/scripts/script.php?script_id=3459

嘿嘿,该插件就是由小弟我完成的啦。这个插件只适用于C语言,输入fd就可以把函数的原型添加到第一个函数前,或者自定义位置,当你修改了参数后也只要按快捷键,插件便会自动帮你修改!是不是也很方便呢?

* headerguard.vim

自动帮你添加头文件.h的重复宏定义的预定义。

* valgrind.vim

valgrind是个非常强大的检查内存泄漏的工具,使用这个插件后便和vim结合在一起,当检测出错误后便会显示在quickfix列表中,可以很方便的定位问题!

2 工具类

* SearchComplete

当你查找一个单词,而单词又不在当前页面,或者你不想输太多字母,这个插件就帮你的忙了,只要输入开始几个字母,按tab键便会自动补全!

* mark.vim

vim自带的搜索只能高亮显示一个,这个插件可以高亮显示高达6个!

* visualmark

让你快速的在文件中跳转,按mm标记这一行,当你想回到这一行时,按立刻就到!

* highlight_current_line.vim

高亮当前行

* sketch.vim

在文件中画图,还蛮好玩的。只支持gvim, 终端模式下貌似不支持!

* matchit.vim

在vim中按%号可以自动快速跳转到匹配的(),{}, 它扩展了功能,使他可以适用在更大的范围!

* vimwiki.vim

让你打造自己的维基百科!越用你会越喜欢它!

* calendar.vim

在vim中写日记!它结合了vimwiki的功能,这样就更完美了!

* pathogen.vim

管理插件,当越来越多的插件安装的时候就会发现它的好处了,当你想删除一个插件,但是这个插件又分布在各个文件夹中,有了这个插件,一切都简单了,凯撒的归凯撒,耶稣的归耶稣,属于这个插件的文件都在一个文件夹中,直接把这个文件删除就OK了。

3 娱乐

在VIM中也可以玩游戏,这在别的IDE中不能办到吧!

* tetris

俄罗斯方块!不过很快就会挂的。建议新手玩,可以让你很快熟悉VIM的方向键!

* sokoban

推箱子游戏!

* MinesPlugin

扫雷!

4 总结

也许你对VIM和Emacs是神器还有写怀疑,但是只要你配置好你的VIM,你就越来越离不开它的。神器是需要打造的,VIM的入门门槛的确比较高,熟悉它的确需要花费一些时间,但是磨刀不误砍柴功,打造好神器后至少让你的编辑效率高50%! It will change you life!

还有一些其它的插件也是很好用的,eclim就把VIM和Eclipse结合在一起,Java开发者可以试试!对于VIM的适用,建议大家多去易水博客,这个博客里面对VIM的使用介绍得非常的详细!

====

http://blog.csdn.net/wuhong40/article/details/6245410

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值