Vi的改进版本, Vim无疑是Linux中最受欢迎的基于命令行的文本编辑器之一。 除了作为功能丰富的文本编辑器,Vim还被世界各地的软件开发人员用作IDE(集成开发环境) 。
Vim真正强大的是它的功能可以通过插件来扩展。 不用说,有几个Vim插件旨在增强用户的编程体验。
特别是对于Vim新手并且正在使用编辑器进行开发的软件开发人员,我们将在本教程中讨论一些有用的Vim插件以及示例。
请注意,本教程中提到的所有示例,命令和说明都已在Ubuntu 16.04上进行了测试,我们使用的Vim版本为7.4。
插件安装设置
鉴于本教程针对新用户,假设他们不知道如何安装Vim插件是合理的。 因此,首先,以下是完成安装设置所需的步骤:
- 在主目录中创建一个名为.vim的目录,然后创建两个名为autoload和bundle的子目录。
- 然后,在autoload目录下,您需要放置一个名为pathogen.vim的文件,您可以从这里下载。
- 最后,在您的主目录中创建一个名为.vimrc的文件,并添加以下两行:
call pathogen#infect()
call pathogen#helptags()
而已。 您现在可以安装Vim插件。
注意 :在这里我们讨论了使用Pathogen的Vim插件管理。 还有其他插件管理器可以使用 - 开始使用,请访问此线程 。
现在我们已经完成了,让我们讨论一些有用的Vim插件。
Vim Tagbar插件
首先是Tagbar插件。 该插件通过让您浏览其包含的标签,可以概述源文件的结构。 插件的官方网站说:“通过创建一个侧边栏,显示当前文件的ctags生成的标签,由其范围排序。 “这意味着例如C ++中的方法显示在它们定义的类下面。”
听起来很酷,对吧? 现在,看看如何安装它。
Tagbar的安装非常简单 - 您只需运行以下两个命令即可:
cd ~/.vim/bundle/
git clone git://github.com/majutsushi/tagbar
插件安装完成后,就可以使用了。 您可以通过在Vim中打开.cpp文件,进入命令模式并运行:TagbarOpen命令来测试它。 以下是一个示例屏幕截图,显示了当执行:TagbarOpen Vim命令时出现的侧边栏(向右):
要关闭边栏,请使用:TagbarClose命令。 这里值得一提的是,您可以使用:TagbarOpen fj命令打开侧边栏以及向其移动控制。 这样,您可以轻松浏览其中包含的标签 - 按下标签上的Enter键将左侧的源代码窗口中的相应功能打开(并将控件转移到)。
如果要反复打开和关闭侧边栏,可以使用:TagbarToggle命令,而不是分别使用:TagbarOpen和TagbarClose。
如果输入这些命令似乎很耗时,那么您可以为:TagbarToggle命令创建快捷方式。 例如,如果将以下行放在.vimrc文件中:
nmap <F8> :TagbarToggle<CR>
那么您可以使用F8键切换Tagbar插件窗口。
继续,有时您会观察到某些标签是用+, - 或#
符号预先固定的。 例如,以下屏幕截图(从插件的官方网站获取)显示一些前缀为+符号的标签。
这些符号基本上描绘了特定标签的可见性信息。 具体来说, +
表示该成员是public,而 - 表示一个私有成员。 另一方面, #
符号表示该成员受到保护.
以下是与Tagbar有关的一些重要内容:
- 插件网站表明,“Tagbar不是用于管理
tags
文件 的通用工具, 它只能在内存中创建所需的tags
而不需要创建任何文件。tags
文件管理由其他插件提供。 “ - Vim版本<7.0.167与Tagbar有兼容性问题。 该网站说: “ 如果您受此影响,这个替代的Tagbar下载代替: zip 。 “ 它与2.2版本是一致的,但由于所需的更改数量,可能不会更新。”
- 如果您遇到错误 Tagbar:Exuberant ctags not found! 同时启动插件,然后您可以通过从这里下载并安装ctags 来解决 。
- 有关Tagbar的更多信息,请点击此处 。
Vim delimitMate插件
我们将在这里讨论的下一个插件是delimitMate。 该插件基本上为引号,括号,括号等提供了插入模式自动完成。
它还提供了一些其他相关功能,这些功能应该使您在插入模式中的时间变得更容易一些,如语法感知(不会在注释和其他可配置区域中插入关闭分隔符)和扩展(默认情况下关闭),还有一些“ 插件的官方github页面说。
这个插件的安装类似于我们安装前一个插件的方式:
cd ~/.vim/bundle/
git clone git://github.com/Raimondi/delimitMate.git
一旦插件成功安装(意味着上面的命令是成功的),你不必做任何事情 - 当Vim编辑器启动时它会自动加载。
现在,无论何时 - 在Vim中,您键入双引号,单引号,括号,p 或int或者括号,它们将自动完成。
delimitMate插件是可配置的。 例如,您可以扩展支持的符号列表,阻止插件自动加载,关闭某些文件类型的插件等等。 要了解如何配置delimitMate以执行所有这些(以及更多),请浏览插件的详细文档,您可以通过运行以下命令来访问:help delimitMate命令。
上述命令会将您的Vim窗口水平分割成两个,其中上部包含所述文档。
结论
在本文中提到的两个插件中,Tagbar - 您可能会同意 - 需要相对更多的时间来习惯。 但是一旦设置正确(意味着你有快捷键启动键就可以了),使用起来很轻松。 另一方面,delimitMate不需要你记住任何东西。
本教程将给您一个想法,Vim插件可以是多么有用。 除了这里讨论的,还有更多的插件可供软件开发人员使用。 我们将在下一部分中讨论选定的一组。 同时,如果您使用酷炫的开发相关的Vim插件,并希望其他人知道它,请放弃评论。
在本教程系列的第2部分中,我将介绍Syntax突出显示插件Syntastic 。