当前位置: 首页 > 科技观察

开发者实用Vim插件(一)

时间:2023-03-21 18:14:59 科技观察

作为Vi的升级版,Vim无疑是Linux中最好的命令行编辑器之一。除了作为一个多才多艺的编辑器,世界各地的软件开发人员还使用Vim作为IDE(集成开发环境)。事实上,Vim之所以如此强大,是因为它可以通过插件进行扩展。不用说,一定有几个Vim插件旨在改善用户的编程体验。特别是对于刚刚使用Vim或正在使用Vim进行开发的软件开发人员,我们将在本教程中讨论一些非常有用的Vim插件,请参阅示例以获取详细信息。请注意:本教程中列出的所有示例、命令和说明均在Ubuntu16.04环境中进行了测试,我们使用的是Vim7.4版本。插件安装设置这是为新用户准备的,假设他们不知道如何安装Vim插件。因此,首先,仅提供一些步骤来完成安装设置。在您的主目录中创建一个.vim目录,并在其中创建自动加载和捆绑的子目录。然后,将pathogen.vim文件放入autoload,可以从这里下载。***,在你的home目录下创建一个.vimrc文件,添加如下内容。callpathogen#infect()Vim插件安装至此,你已经完成了安装Vim插件的准备工作。注意:我们已经讨论过使用Pathogen来管理Vim插件。当然还有其他插件管理工具——要了解更多信息,请访问此处。现在我们都已经设置好了,让我们讨论两个有用的Vim插件。Vim标签侧边栏(Tagbar)插件首先是一个标签侧边栏(Tagbar)插件。该插件允许您浏览源文件中包含的标签,提供源文件结构的概览。其官方网站上的插件描述是这样说的:“它通过创建一个侧边栏,然后按一定顺序显示从当前文件中提取的带有ctags的标签来实现这一点。这意味着,例如,将显示C++中的方法本身在类中定义。”听起来很酷,不是吗?让我们看看如何安装它。标签侧边栏(Tagbar)的安装过程相当简单——你只需要运行以下命令:cd~/.vim/bundle/gitclonegit://github.com/majutsushi/tagbar安装后就可以使用了,你可以通过在Vim中打开一个.cpp文件来测试它:进入命令模式,然后运行??:TagbarOpen命令。下面是运行:TagbarOpen命令后侧边栏(右侧)的渲染。Vim标签栏插件使用:TagbarClose关闭侧边栏。值得一提的是,你可以使用:TagbarOpenfj命令打开侧边栏来开启它的跳转(shift控制)功能。也就是说,您可以轻松浏览当前文件中包含的标签——在相应的标签上按下回车键,然后跳转到左侧源代码窗口中的相应位置。如果你想重复切换侧边栏,你可以使用:TagbarToggle命令,而不是交替使用:TagbarOpen和:TagbarClose命令。如果您发现键入这些命令很耗时,您可以为:TagbarToggle命令创建快捷方式。例如,在.vimrc文件中添加如下内容:nmap:TagbarToggle这样就可以使用F8来切换标签边栏(Tagbar)了。更进一步,有时您可能会注意到标记前有+、-或#符号。例如,下面的屏幕截图(取自插件的官方网站)显示了一些前面带有+号的标签。ToggleTagbarwindow这些符号基本上用于指示特定标签的可见性信息。特别地,+表示该类是公共类,而-表示私有类。#表示受保护的类。以下是使用标签侧边栏(Tagbar)的一些注意事项:插件官网早就声明:“标签侧边栏(Tagbar)不是用来管理标签(tags)文件的,它只是在内存中动态创建需要的标签,而不是创建任何文件。其他插件支持标签文件管理。”7.0.167之前的Vim版本和Tagbar插件存在兼容性问题。根据官方网站:“如果您受到此问题的影响,请使用替代版本:下载zip存档。这对应于版本2.2,但由于大量依赖项更改,可能不会再升级。”如果加载插件遇到这样的错误:ctagsnotfound!(标签栏:未找到丰富的标签!)。您可以从此处下载并安装ctags以修复错误。欲了解更多信息,请访问此处。Vim分隔符自动补全(delimitMate)插件接下来要介绍的插件是分隔符自动补全(delimitMate)。这个插件提供了在Vim插入模式下自动补全引号、圆括号和方括号等定界符。插件官网称:“它还提供了一些相关功能,让你在输入模式下更方便,比如语法错误修正(结束分隔符不会自动插入评论区或其他可配置区域)、回车和空格填充(默认关闭)等。”安装步骤和之前介绍的类似:cd~/.vim/bundle/gitclonegit://github.com/Raimondi/delimitMate.git一旦你成功安装了这个插件(即上面的命令执行成功),你不不需要配置任何东西——Vim启动时会自动加载插件。到目前为止,无论何时使用Vim,只要输入双引号、单引号、单号、圆括号、方括号,它们都会自动完成。可以自己配置分隔符自动补全(delimitMate),比如可以添加需要自动补全的符号列表,防止插件自动加载,对指定类型的文件关闭插件等等。了解如何配置这些(以及更多),阅读插件的详细文档-只需运行:helpdelimitMate。上面的命令会将你的Vim窗口水平分成两部分,上面的窗口包含我们所说的文档。VimdeliMatePlugin结语在本文提到的两个插件中,Tagbar需要更多的时间来适应——你应该这么说。但是一旦设置正确(意味着你有一个键盘快捷键),它就很容易使用。至于delimitMate,没有入门要求。本教程旨在向您展示Vim的生产力。除了本文提到的那些,还有很多可供开发者使用的插件,我们将在下一节中讨论。如果您正在使用Vim插件进行开发并想让它为人所知,请在下面发表评论。