Vim 是 Linux 下的经常使用文本编辑器,但也常常被称为是一个上古神器,由于它对于初学者而言至关不友好,也很差入门。程序员
可是,对于高手而言,他们不只将 Vim 玩得很溜,并且还将它看成代码开发的主要工具。为何?由于 VS 等 IDE 比较庞大,运行起来比较慢,而 Vim 就至关轻量了,瞬间就能打开代码并开始工做,这对于追求效率的高手而言天然是爱不释手。面试
可是,若是是官方版的 Vim ,依然是局限性至关大,十分不方便。可是高手毕竟是高手,高手懂得使用插件。下面良许就介绍高手经常使用的 3 个很实用的插件。vim
这个插件叫 Auto Pairs
,它能够自动补全配对的符号,好比:花括号、方括号、圆括号、引号等。这对于咱们程序员而言很是有用,由于在代码里咱们大量使用到了上述的几种配对符号,若是能自动补全那将很大提升咱们的写 bug 效率。架构
使用这个插件后,当咱们敲入一个符号时,会自动补全它的所匹配的另外一个符号。好比,咱们敲入 [
时,它会自动补全 ]
。当咱们删掉 [
时,]
也自动被删除了。编辑器
若是咱们开启了自动缩进,那么它不只会在合适的位置补全匹配的符号,还会将光标插入到合适的位置。好比下面这段 Go 代码:工具
package main
import "fmt"
func main() {
x := true
items := []string{"tv", "pc", "tablet"}
if x {
for _, i := range items
}
}复制代码
如今,我在倒数第 3 行 items 后面插入一个花括号 {
,而后敲一下回车,咱们就获得这样的结果:学习
package main
import "fmt"
func main() {
x := true
items := []string{"tv", "pc", "tablet"}
if x {
for _, i := range items {
| (光标在这里了)
}
}
}复制代码
固然 Auto Pairs 还提供了不少选项,咱们能够在它的 Github 仓库查看更多用法。可是,以上的这些基本用法就已经能够节约咱们不少时间了。网站
做为一个合格的上古神器,Vim 没办法像那些 IDE 同样去注释代码块。可是有了 NERD Commenter
这个插件,咱们就能够实现这样的目标。spa
NERD Commenter 很智能,它能够自动识别代码,并给出对应语言的注释风格。最简单的方法,咱们能够在命令模式下经过敲 <Leader> +空格
来快速注释代码块。在这里,
\
键,咱们也能够进行自定义。
咱们怎么选中多行呢?那就是要在 visual mode (可视化模式)下进行了,这是 Vim 的基本操做了。
还有一个颇有用的特性是 Sexy Comment
(性感模式),咱们可使用 <Leader>+cs
来触发。性感模式能够将代码块用很优雅的方式来注释,好比下面这种风格的注释就是性感模式:
package main
import "fmt"
func main() {
/*
* x := true
* items := []string{"tv", "pc", "tablet"}
*
* if x {
* for _, i := range items {
* fmt.Println(i)
* }
* }
*/
}复制代码
Vim Surround
插件堪称是一个大杀器,由于它能够将现有的代码添加成对包围符号。好比咱们如今有这么一句代码:
"Vim plugins are awesome !"复制代码
若是咱们想把引号去掉,只需敲 ds"
便可:
Vim plugins are awesome !复制代码
若是咱们想将双引号改为单引号,咱们能够敲 cs"'
:
'Vim plugins are awesome !'复制代码
想要换成其它符号也是同样的道理。不只如此,它还对 HTML 或 XML 标记语言支持很是好。好比有这么一句 HTML 语句:
<p>Vim plugins are awesome !</p>复制代码
如今咱们想要加粗 awesome 这个词,咱们能够将光标放在这个单词上,而后敲 ysiw<em>
,它就会自动添加标记:
<p>Vim plugins are <em>awesome</em> !</p>复制代码
Vim Surround 还能够以锯齿的方式,在语句的上下方添加包围符号,并将当前语句自动缩进。好比咱们想在上面那条代码添加标签,咱们能够敲 ySS<div class="normal">
:
<div class="normal">
<p>Vim plugins are <em>awesome</em> !</p>
</div>复制代码
一样地,它的功能不只于此,咱们能够进它的 Github 仓库查看更多强大的功能。
最后,最近不少小伙伴找我要Linux学习路线图,因而我根据本身的经验,利用业余时间熬夜肝了一个月,整理了一份电子书。不管你是面试仍是自我提高,相信都会对你有帮助!目录以下:
免费送给你们,只求你们金指给我点个赞!
连接:pan.baidu.com/s/1_6uniaFV… 提取码:9pbc
也但愿有小伙伴能加入我,把这份电子书作得更完美!
推荐阅读: