Vim 是 linux 下的常用文本编辑器,但也经常被称为是一个上古神器,因为它对于初学者而言相当不友好,也不好入门 。
但是,对于高手而言,他们不仅将 Vim 玩得很溜,而且还将它当作代码开发的主要工具 。为什么?因为 VS 等 IDE 比较庞大,运行起来比较慢,而 Vim 就相当轻量了,瞬间就能打开代码并开始工作,这对于追求效率的高手而言自然是爱不释手 。
【关于vim的实用插件】但是,如果是官方版的 Vim ,依然是局限性相当大,十分不方便 。但是高手毕竟是高手,高手懂得使用插件 。下面良许就介绍高手常用的 3 个很实用的插件 。
1、括号自动补全插件
这个插件叫 Auto Pairs ,它可以自动补全配对的符号,比如:花括号、方括号、圆括号、引号等 。这对于我们程序员而言非常有用,因为在代码里我们大量使用到了上述的几种配对符号,如果能自动补全那将很大提高我们的写 bug 效率 。
使用这个插件后,当我们敲入一个符号时,会自动补全它的所匹配的另一个符号 。比如,我们敲入 [ 时,它会自动补全 ]。当我们删掉 [ 时,] 也自动被删除了 。
如果我们开启了自动缩进,那么它不仅会在合适的位置补全匹配的符号,还会将光标插入到合适的位置 。比如下面这段 Go 代码:
package mainimport "fmt"func main() { x := true items := []string{"tv", "pc", "tablet"} if x {for _, i := range items } }现在,我在倒数第 3 行 items 后面插入一个花括号 { ,然后敲一下回车,我们就得到这样的结果:package mainimport "fmt"func main() { x := true items := []string{"tv", "pc", "tablet"} if x { for _, i := range items { | (光标在这里了) } }}当然 Auto Pairs 还提供了很多选项,我们可以在它的 Github 仓库查看更多用法 。但是,以上的这些基本用法就已经可以节约我们很多时间了 。
2、代码块注释插件
作为一个合格的上古神器,Vim 没办法像那些 IDE 一样去注释代码块 。但是有了 NERD Commenter 这个插件,我们就可以实现这样的目标 。
NERD Commenter 很智能,它可以自动识别代码,并给出对应语言的注释风格 。最简单的方法,我们可以在命令模式下通过敲 +空格 来快速注释代码块 。在这里,键默认是反斜杠 键,我们也可以进行自定义 。
我们怎么选中多行呢?那就是要在 visual mode (可视化模式)下进行了,这是 Vim 的基本操作了 。
还有一个很有用的特性是 Sexy Comment (性感模式),我们可以使用 +cs 来触发 。性感模式可以将代码块用很优雅的方式来注释,比如下面这种风格的注释就是性感模式:
package mainimport "fmt"func main() {/* * x := true * items := []string{"tv", "pc", "tablet"} * * if x { * for _, i := range items { * fmt.Println(i) * } * } */}3、添加包围符号插件
Vim Surround 插件堪称是一个大杀器,因为它可以将现有的代码添加成对包围符号 。比如我们现在有这么一句代码:
"Vim plugins are awesome !"如果我们想把引号去掉,只需敲 ds" 即可:Vim plugins are awesome !如果我们想将双引号改成单引号,我们可以敲 cs"':'Vim plugins are awesome !'想要换成其它符号也是一样的道理 。不仅如此,它还对 html 或 XML 标记语言支持非常好 。比如有这么一句 HTML 语句: Vim plugins are awesome !现在我们想要加粗 awesome 这个词,我们可以将光标放在这个单词上,然后敲 ysiw ,它就会自动添加标记: Vim plugins are awesome !Vim Surround 还可以以锯齿的方式,在语句的上下方添加包围符号,并将当前语句自动缩进 。比如我们想在上面那条代码添加标签,我们可以敲 ySS :Vim plugins are awesome !同样地,它的功能不仅于此,我们可以进它的 Github 仓库查看更多强大的功能 。小结
以上 3 个 Vim 插件,熟练使用的话将为我们节约很多时间,而且用起来也非常顺手,可以提高我们的效率 。当然 Vim 社区里还有非常多大牛开发的很有用的插件,后续良许也会再推送一些好玩的插件,敬请期待!
推荐阅读
- 侗族别具风味的打油茶风俗
- 别具特色的俄罗斯茶俗
- 广东早茶的来源
- 独具趣味的湖南桃源擂茶风俗
- 企业如何解决搜索引擎中出现的负面信息?
- Java中final关键字的几种用法
- 英国人是这么喝普洱茶的
- 日本茶道的四个时代
- 关于UI位置布局的三条法则
- 纳西族,神秘的龙虎斗茶俗