vim 使用心得
从15年开始使用vim,一开始总是用的不顺手,后来发现是因为没有对vim进行定制化。 vim需要个人配置才真正属于自己。我将自己平时使用的一些心得分享出来,如果不对的地方,欢迎指正。
一、基本命令
1 | u 撤销上一步的操作 |
1.1 查找
/
向下查找
?
向上查找
n查找下一个,N查找上一个
*
查找下一个光标所在处的单词,
#
查找上一个光标所在处的单词
1.2 保存退出
:wq
或者按两次Z保存退出
下面是我自定义的Ctrl+s保存退出
1 | " 快速保存退出 |
二、跳转
2.1、行内跳转
跳转到行首或者行尾部
1 | 行首: ^ 或者0 或者Home |
这个是vim自带的跳转到行首和行尾的快捷键,不过我真的用不惯,因为手指没有那么长,囧...
所以我定义了自己的快捷键(esc也比较远,所以也定义了快捷键)
1 | " H跳转到行首 |
I
是定位到行首切换到插入模式,A
是定位到行末并切换到插入模式。
fa
跳到当前行下一个a
,这个命令非常好用,f,
即跳转到下一个,
fa这个命令这个可以配合;
,比如找到a之后按;可以快速的跳转到下一个a,也就是重复前一个指令,,
重复反向找的操作。
ta
跳到下一个a
前面
大写的意思相反,这个快速定位
w
跳到下一个单词的开始 3w
调到从当前位置第三个单词的开始 e
跳到单词的结束
为了方便我自定义了行首行尾的跳转
2.2、文章跳转
1 | h, j, k, l分别代表向左、下、上、右移动。 |
Ctrl - d
向下半页 Ctrl - u
向上半页我觉得更实用 这样看文章时就不会跳转出错
2.3、 滚屏
<C-f>
向下滚动一屏幕<C-b>
向上滚动一屏幕<C-u>
向上滚动半屏幕<C-d>
向下滚动半屏幕
2.4、标记移动
标记是Vim中一个很神奇的功能,它能在你需要的地方以某个按键作为标记,你就可以通过这几个按键来进行快速的跳转。
- :marks 标记列表
- m + x 标记当前位置为x
- `x 跳转到标记为x的位置
- 'x 跳转到标记为x的行
``
跳转到跳转之前的位置- ' ' 跳转到跳转之前的行
- `. 跳转到最后修改的位置
- '. 跳转到最后修改的行
三、删除与复制
X 向前删除
x 向后删除
ddyG 全部复制 ggdG 全部删除
g全局替换,c表示需要确认
:%s/FISH/fish/gc
四、visual模式
v
切换到visual模式
V
切换到visual行选中模式
Ctrl+v
切换到块选中模式,可以一次操作多行
五、我的vim配置
请参考:https://gist.github.com/iceqing/06299c59bf42d73549899268b557e8e5
系列文章: 1. Vim 使用心得 2. Vim解决UltiSnips requires py >= 2.7 or py3
https://saul-mirone.github.io/2017/06/27/vim-basic-operation/#2-pao-qi-esc-he-fang-xiang-jian