阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

实用!开发者的 Vim 插件(一)

301次阅读
没有评论

共计 2884 个字符,预计需要花费 8 分钟才能阅读完成。

导读 作为 Vi 的升级版,Vim 毫无争议是 Linux 中最受欢迎的命令行编辑器之一。除了是一个多功能编辑器外,世界各地的软件开发者将 Vim 当做 IDE(集成开发环境 Integrated Development Environment)来使用。事实上,因为 Vim 可以通过插件来扩展其自身功能才使得它如此功能强大。不用说,肯定有那么几个 Vim 插件是旨在提高用户的编程体验的。特别是对于刚刚使用 Vim 或者使用 Vim 做开发的的软件开发者来说,我们将在本教程中讨论一些非常有用的 Vim 插件,具体请看例示。

请注意:本教程中列举的所有例示、命令和说明都是在 Ubuntu 16.04 环境下进行测试的,并且,我们使用的 Vim 版本是 7.4。

插件安装设置

这是为新用户准备的,假设他们不知道如何安装 Vim 插件。所以,首先,就是给出一些完成安装设置的步骤。

在你的家目录下创建 ”.vim” 目录,并在其中创建子目录 ”autoload” 和 ”bundle”。

然后在 ”autoload” 放置 ”pathogen.vim” 文件,这个文件可以从 ”https://raw.githubusercontent.com/tpope/vim-pathogen/master/autoload/pathogen.vim” 此处下载。

最后在你的家目录创建 ”.vimrc” 文件,并添加以下内容。

1. call pathogen#infect()

实用!开发者的 Vim 插件(一)

至此,你已完成了 Vim 插件安装的准备工作。

注意:我们已经讨论了使用 Pathogen 管理 Vim 插件。当然还有其他的插件管理工具——欲了解,请访问:”http://vi.stackexchange.com/questions/388/what-is-the-difference-between-the-vim-plugin-managers”。

现在已经全部设置完毕,就让我们来讨论两个好用的 Vim 插件吧。

Vim 标签侧边栏 (Tagbar) 插件

首先就是标签侧边栏 (Tagbar) 插件。该插件能够让你浏览源文件包含的标签,从而提供该源文件的结构简览。其官网的插件说明是这样说的:“它通过创建侧边栏,然后以一定顺序展示从当前文件以 ctags 提取的标签来完成这一功能。这意味着,比如,C++ 中的方法将展示在其自身所定义在的类里边。”

听起来很酷,不是吗? 让我们来看看该怎么安装它。

标签侧边栏 (Tagbar) 的安装过程是相当容易的——你只需要运行下列命令:

1. cd ~/.vim/bundle/
2. 
3. git clone git://github.com/majutsushi/tagbar

安装完之后就可以使用了,你可以在 Vim 中打开一个 ”.cpp” 文件来测试它:进入命令模式,然后运行 ”:TagbarOpen” 命令。以下是运行 ”:TagbarOpen” 命令之后出现侧边栏(右侧) 的效果图。

实用!开发者的 Vim 插件(一)

使用 ”:TagbarClose 可以关闭侧边栏。值得一提的是,可以使用 ”:TagbarOpen fj” 命令打开侧边栏来打开它的跳转 (shift control) 功能。也就是说,你可以很方便的浏览当前文件包含的标签——在对应的标签上按下 Enter 键,然后在左侧的源代码窗口跳转到对应的位置。
实用!开发者的 Vim 插件(一)

假如你想要反复地开关侧边栏,你可以使用 :TagbarToggle 命令,而不用交替的使用 :TagbarOpen 和:TagbarClose 命令。

如果你觉得输入这些命令很费时间,你可以为 :TagbarToggle 命令创建快捷键。比如,添加以下内容到.vimrc 文件中:

nmap <F8> :TagbarToggle<CR>

这样,你就可以用 F8 来切换标签侧边栏 (Tagbar) 了。

更进一步,有时候你可能会注意到某个标签前边有一个 ”+”、”-“ 或者 ”#” 符号。比如,以下截图 (取自该插件的官网) 展示了一些前边有 ”+” 号的标签。
实用!开发者的 Vim 插件(一)

这些符号基本是用来表明一个特定标签的可见性信息。特别是 + 表示该类是 public 的,而 – 表示一个 private 类。# 则是表示一个 protected 类。

以下是使用标签侧边栏 (Tagbar) 的一些注意事项:

  • 该插件的官网早就有说明:“标签侧边栏 (Tagbar) 并非是管理标签 (tags) 文件而设计,它只是在内存中动态创建所需的标签,而非创建任何文件。标签 (tags) 文件的管理有其他插件提供支持。”
  • 低于 7.0.167 版本的 Vim 和标签侧边栏 (Tagbar) 插件存在着一个兼容性问题。根据官网:“如果你受到此问题的影响,请使用代替版:(“https://github.com/majutsushi/tagbar/zipball/70fix”)下载 zip 压缩包。这对应到 2.2 版本,但由于大量的依赖变更,它可能不会再升级。”
  • 如果你在加载该插件时遇到这样的错误:未找到 ctags!(Tagbar: Exuberant ctags not found!)。你可以从 (“http://ctags.sourceforge.net/”) 下载并安装 ctags 来修复错误。
  • 获取更多信息请访问(“https://github.com/majutsushi/tagbar”)。
Vim 界定符自动补齐 (delimitMate) 插件

下一个要介绍的插件就是界定符自动补齐(delimitMate)。该插件在 Vim 插入模式下提供引号、圆括号和方括号等界定符自动补齐功能。

该插件官网说:“它同时也提供一些相关的特性让你在输入模式下变得更加便捷,比如语法纠错 (在注释区或者其他的可配置区不会自动插入结束界定符)、回车和空格填充(默认关闭) 等。”

安装步骤与之前介绍的相似:

1. cd ~/.vim/bundle/
2. 
3. git clone git://github.com/Raimondi/delimitMate.git

一旦你成功安装这个插件(即上述命令执行成功),你就不需要进行任何配置了——当 Vim 启动时会自动加载这个插件。

至此,在你使用 Vim 的任何时候,只要你输入一个双引号、单引号、单号、圆括号、方括号,它们都会自动补齐。

你可以自己配置界定符自动补齐(delimitMate)。比如,你可以添加需要自动补齐的符号列表,阻止自动加载该插件,对指定类型文件关闭该插件等。想了解如何配置这些(或者其他更多的配置),请阅读该插件的详细文档——运行 ”:help delimitMate” 即可。

上述命令会将你的 Vim 窗口水平分割成两个,上边一个包含我们所说的文档。
实用!开发者的 Vim 插件(一)

结论

本文之中提到的两个插件,Tagbar 需要花费较多时间来适应——你应该会同样这个说法。但只要正确设置好它(这意味着你像是有了快捷键一样方便),就容易使用了。至于 delimitMate,不需要任何要求就可以上手。

本教程就是向你展示 Vim 如何高效能的想法。除了本文中提及的,仍然还有许多开发者可用的插件,我们将在下一个部分进行讨论。假如你正在使用一个关于开发的 Vim 插件,并希望广为人知,请在下方留下评论。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计2884字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19352
评论数
4
阅读量
8060075
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
免费领取huggingface的2核16G云服务器,超简单教程

免费领取huggingface的2核16G云服务器,超简单教程

免费领取 huggingface 的 2 核 16G 云服务器,超简单教程 前言 HuggingFace.co...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

  三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Andr...
星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...
星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛 NAS-1:安装飞牛 NAS 前言 在家庭和小型工作室场景中,NAS(Network Atta...
星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛 NAS 硬件 02:某鱼 6 张左右就可拿下 5 盘位的飞牛圣体 NAS 前言 大家好,我是星...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...
星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

  星哥带你玩飞牛 NAS-16:不再错过公众号更新,飞牛 NAS 搭建 RSS 对于经常关注多个微...
Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集 在云原生体系中,Prometheus 已成为最主流的监控与报警...
开发者福利:免费 .frii.site 子域名,一分钟申请即用

开发者福利:免费 .frii.site 子域名,一分钟申请即用

  开发者福利:免费 .frii.site 子域名,一分钟申请即用 前言 在学习 Web 开发、部署...