Pulpcode

捕获,搅碎,拼接,吞咽

0%

暴力的使用vim

实际上对于我这种人而言,使用emacs就足够了。

但是特么的不是每一台机器都有emacs。你想,难道你要每次登陆一台服务器,就要安装一次emacs?然后编写各种配置?所以对于那些普通的机器,要是我只在上面“暂时”开发,那我就随便去加个配置足够了,如果说仅仅是看个日志,或者去改个配置文件,或者帮你的vim党同事看代码,那么你必须要会用vim了。还有要注意的一点就是不要把你的vim配置的乱七八糟的,导致只有你会用。这样当你出现问题了,需要你同事帮你查问题的时候,他又无从下手,当然如果你吊到不需要同事来帮你查问题,当我没说。

说白了,本文就是想性价比的使用vim,花最小的代价学习vim,还能获得高收益。

安装配置

这里推荐一个国人的vim配置k-vim,我mac的vim配置就是用的这个。不过我建议只在linux服务器上用vim,所以你可以选择只安装他的service版:很简单,就一个配置文件:k-vim-for-server

##常用的快捷键

快速移动

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
h: 向左移动
j: 向下移动
k: 向上移动
l:向后移动
%: 在匹配的括号间移动
^: 行首
$: 行末
f: 向后跳到第一个匹配的字母
F: 向前跳到第一个匹配的字母
b:单词的开始
e: 单词的结尾
w: 下一个单词

gg:到buffer首
G: 到buffer尾

插入

1
2
3
4
5
6
7
8
9
10
11
i: 像当前字符的前一个字符插入
I:到行首插入
a: 像当前字符的后一个字符插入
A: 到行尾插入
O:向上一行插入
o:向下一行插入
P:向前粘贴
p:向后粘贴
x: 删除字符

r:不进入插入模式的替换

查找和替换

1
2
3
4
查找:/xxx
替换:
:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky

 

复制,剪贴,粘贴,删除,撤销和重做

1
2
撤销: u
重做: C-r

buffer和文件,分屏:

1
2
命令 ls 可查看当前已打开的buffer
命令 b num 可切换buffer (num为buffer list中的编号)

文件,buffer和分屏

1
2
3
4
5
6
7
8
9
10
11
e: 打开一个文件
w: 写入一个文件

:ls -- 列出所有buffer
:bn -- buffer列表中下一个 buffer
:bp -- buffer列表中前一个 buffer
:b# -- 你之前所在的前一个 buffer
:bdelete num -- 删除第num编号buffer
:split 上下分屏
:vsplit 左右分屏
Ctrl+w + 方向 (hjkl),在屏幕间移动

动作宏

1
2
3
4
5
在vim中,每一个动作只要前面加一个数字,就可以执行n次了。
. 重复执行命令
开始录制宏:q+宏的名字(注意,连续的命令在vim中要快按)
结束宏: q
执行宏: @+q

其它键:

1
2
3
4
5
6
bcw: 如果你的光标停留在某个单词的中间,使用这个命令可以删除这个单词
xp: 交换相邻两个字母的位置
%: 在匹配的括号间跳转
: 标识区分空格和制表符
: set list: 这样的话,制表付就被展示成^I
:set paste: 在粘贴python代码的时候很有用