为什么要使用vim?原本是使用sublime来做前台开发,但是随着想学习node,一边要使用命令台,一边要切换回来,在mac本上真的不是那么的方便。所以开始学习vim。
简单介绍一下,刚果进入vim中是没有任何模式的,也就是独立于输出模式 i,并且独立于命令模式 : 之外的一个模式。这个模式是我们主要学习的模式。 none -> i -> : 这三个模式通过Esc进行快捷的进行切换。 当点击键盘上的 i 的时候,就只能进行输入了,和普通的编辑器没什么区别。在i模式中的时候,通过点击Esc,可以跳出这个模式,然后进入none(我自己命名)模式中,这就是我们这次主要学的内功,所有的输入字符都存在快捷键的嫌疑了!
对于整个屏幕来说:
上下左右 h j k l ,前面都可以加n,进行重复操作例如3h
删除字符:
x 一个字符,dd 一行字符,J 删除换行符
撤销重做:
u 将会撤销操作,Ctrl-R可以撤销u的撤销操作。
其他命令:
a 可以在选中字符的后一个字符处。 o 可以在下一行开始一个新行,自动进入 i 模式。
保存并且推出:ZZ
移动:
词之间移动:
w,下一个词词首,b上一个词词首。 e,下一个词词尾,ge上一个词词尾。
行首,行尾:
$ 行尾,^ 行首,f移动到指定的字符。
括号匹配:
%可以进行括号匹配。
行之间移动:
gg:行首。
G行尾。
支持数字nG定位行。
H:行首,M:行中,L:行尾。
滚屏:
ctrl-f 向上一屏,ctrl-b向下一屏。
ctrl-u 向上移动半屏,ctrl-d向下移动半屏。
ctrl-e 向上移动一屏,ctrl-y向下移动一屏。
zz:屏幕中间,zt:屏幕顶部,zb:屏幕底部。
查找:
:/ 向下查找,:?向上查找 ,下一个n
正则匹配:
^前匹配,$后匹配。.三个字符匹配。*选择文本字符。