使用VI,VIM或GVIM作为IDE
我不得不在工作中使用VS2008来处理大量的项目,但是每当奇数文本文件需要编辑时,我都会使用VIM。
现在我知道有插件,不能使VIM像IDE一样工作,所以我想知道是否有人真的把它用作IDE?
编辑:
对于那些认为自己代表大众说VIM不应该用作IDE的人,请考虑在vim.org官方function请求列表中 ,IDEfunction是头号function请求。
Vim是一款令人惊叹的软件,但由于年龄的原因,它也非常杂乱。 Vi
于1976年发布,Vim于1991年发布。例如,Vim提供了多种不同的文本完成方式,从简单的关键字到它的“omni”完成系统。 最重要的是,一些插件select使用内置function,而其他插件只是取代批发。 希望下面的build议可以让你开始。
IDE与Vim
您可能想要尝试Vim的这个新补丁,它允许Vim在Visual Studio中用作编辑器:
- ViVim
Vundle
首先,为Vim安装Vundle插件pipe理器插件! 它工作得很好,使pipe理Vim插件变得容易。 处理安装,更新和删除。
例如,您的.vimrc
现在只包含:
" === Plugins! === Plugin 'wincent/command-t' Plugin 'scrooloose/nerdtree' Plugin 'w0rp/ale' ...
PluginUpdate
命令将安装它们或更新它们。
Vim-IDE的插件
下面的vim脚本给Vim更多的IDE感觉。 请记住,Vim内置了大量的function,因此在加载20个插件之前,花点时间学习这些(这是一个持续的旅程)。
导航:
- 书呆子树 – 文件系统导航
- Command-T – 按文件名search项目以打开
- CtrlP – Command-T,模糊文件和缓冲区search的替代方法
- 标签栏 – 按function进行代码导航
- 书签 – vim的书签(我自己的插件:))
文本完成:
- delimitMate – 自动closures括号,大括号等
- tcomment – 轻松评论/取消注释源代码命令
- Ultisnips – 伟大的Vim片段系统
- YouCompleteMe – 代码完成,很多function
- neocomplete – 比YCM稍微简单的代码完成
我个人发现代码完成太多了,只能依靠Vim内置的CTRL-N
文本完成function,但是请记住CTRL-N
! Vim的内置完成系统超出了这个范围,使用不同的完成模式,例如CTRL-X CTRL-F
文件名完成,或者通过CTRL-X CTRL-O
试图提供文件types特定的上下文依赖完成的“omni-completion” 。 Omni完成需要文件types特定的插件,Golang的vim-go包支持它。
格式:
- 表格 – 轻松alignment文本
- vim-surround – 快速围绕一些文本(即括号,标签…)
真棒:
- ALE – 支持多种语言的实时语法检查,支持Vim 8的新function,例如asynchronous作业,确保Vim在运行时不会冻结Vim。
- 逃亡者 – vim中的Git,diffs,blame …等等
- gitgutter – 从git提交版本的文件的实时差异
- YankRing – 轻松访问以前复制或删除的文本对象
更好的GUI:
- 航空公司 – 更容易阅读更多有用信息的状态行
- Gundo – 将vim的历史logging视为一棵树(我最喜欢的,确保在Vim中启用永久性撤销)
配色scheme:
- 日光浴 – 伟大的配色scheme
Vim分布
您可以使用以下项目来快速完成像Vim这样的更多IDE,而不是自己完成设置和configuration。 下面的两个项目包括我上面提到的许多插件:
- 杰纳斯
- spf13
我build议你不要使用它们。 如果你花时间自己configurationvim并在交错的过程中安装插件来学习每一个插件,你将学到更多。
Vim插件指南
VimAwesome可以成为浏览Vim插件的好地方,并且可以find有用和stream行的插件。
Vim补丁
除了这些脚本之外,您还可以查看Vim的以下某些修补程序。 我没有使用他们,所以不确定的质量,但他们大多看起来很有前途。 你可以在这里查看所有的补丁,使vim更像IDE的是:
- 代码检查 – 即时代码检查( 注 :现在Syntastic是一个更好的select)。
- Clewn – 允许使用GDB在Vim中对代码进行debugging和步进。
安装这些脚本和补丁后,Vim应该在Visual Studio或Eclipse的function上有非常密切的地方。
你也可以换个方式来使用名为viemu的插件。 这个在VS IDE中提供了vi模式,这可以让同事更容易在你的系统上共同驱动。
Taglist是一个很棒的插件 – 不要离开家。
您也可以设置选项卡完成 。
Omnicompletion是一个伟大的事情,如果你的语言是支持的。
而VIM技巧1439则提供了IDE-ification提示的综述。
如果您使用Linux,只需尝试Pida 。 你可以embeddedVim或Emacs。 诸如文件浏览器,项目结构和控制台等许多整合使Vim看起来像Eclipse。 恕我直言,这是一个简单的方法来使用Vim作为IDE。
我并不想因为这个反应而变得煽情,但是我想为你省点头痛。 我给所有在#vim中提出类似问题的人都有同样的答案。
Vim不是一个IDE。 这是一个编辑。 它从来没有打算成为一个IDE,任何试图使它符合这只会导致你的问题。 有一些插件试图为Vim提供类似IDE的感觉,但是这些插件太糟糕了。
另一方面,我也推荐一些插件,这些插件可以帮助您从Vim获得一些扩展function。 这些可能适合您的需求。
- taglist – 非常适合用函数/方法/类来浏览你的代码
- NERDTree – 一个美妙的文件系统导航插件
VIM对C和C ++有一stream的支持。 你甚至有一个clewn和gdb的可视化debugging器。 其他语言,你将不得不做一些调整和摆弄,结果可能不会达到你想要的。 值得一小时,看看它是如何去的。
我得到的印象是,emacs在更好的语言IDE方面做得更好。
尝试http://code.google.com/p/exvim中的; exVim该项目将vim作为一个用于多语言开发的IDE。
我单独使用Vim,它有一些基本的function,可以通过^ X自动完成,然后select各种选项(^ P为关键字,^ O为omnicomplete(适用于在Web文件中切换HTML,CSS等)。
它还能够通过:!(编译器或其他命令)启动命令。
相当简单,与基本开发无缝集成,无需工作空间或类似的 – 如果需要文件设置的模式。
编辑:就模块而言,通常有模块在Vim环境内或旁边embedded相关的脚本语言 – 但我不知道类似的.NET框架模块。
我有时在Kate内部使用Vim作为IDE,否则我会在Vim中打开几个标签,这些标签很难改变。
否则,我坚持普通的Vim。
KDE for Windows将允许您在Windows中安装Kate。
我今天一边看着OT Android NDK的东西 – vim的长期用户,在eclipse中使用过eclim,可是坦白说我的vim环境是为了编写代码,而不是开发代码。 阅读关于使vim成为开发环境的各种不同的曲折真的很有趣,gvide有一些令人信服的东西 –