本文整理自 vimtutor 这个vim的帮助文档,在命令行执行 vimtutor 即可进入,感谢大牛们把这篇文章翻译为中文
- 光标移动
h j k l 移动光标
ctrl + g 显示文件状态信息
gg 移动到第一行
G 移动到最后一行
12g 移动到第12行
/ 查找,使用n查找下一个,使用N查找上一个
ctrl + o 跳转到上一个位置
ctrl + i 跳转到较新的位置
% 配对括号查找
- 退出编辑
:q 退出编辑
:q! 强制退出编辑
:w test 以test为文件名保存文件
:wq 保存并退出
:wq! 强制保存并退出
v :w test 选择性保存,按住v键并选择要保存的行,按:,按w test,文件就会被保存了
- 文本编辑
x 删除光标所在位置字符
de 删除至单词末尾
dw 删除至一个下一个单词的起始处
d2w 删除两个单词
d$ 删除至行末
dd 删除整行
2dd 删除两行
e 移动到单词末尾
2e 向后移动到第二个单词的末尾
w 移动到下一个单词开始
2w 向后移动两个单词到末尾
0 移动到行首
^ 移动到行首
$ 移动到行未
i 光标前插入文本
a 光标之后插入文本
A 行末插入文本
o 在下方插入一个空行并进入编辑模式
O 在上方插入一个空行并进入编辑模式
u 撤销掉最后执行的命令
U 恢复该行的原始状态
ctrl + r 重做被撤销的命令
y 复制
yy 复制一行
p 将删除的内容插入
r + word 将光标位置所在字符替换为word
R 连续替换多个字符
ce 删除至词尾,并进入插入模式
c$ 删除至行未并进入插入模式
:s/old/new 替换光标所在行第一个匹配的
:s/old/now/g 替换全行匹配的
:1,2s/old/new/g 替换1至2行之间所有符合条件的
:%s/old/new/g 替换整个文件中匹配的
:%s/old/now/gc 替换整个文件中匹配的,并对每个匹配串提示是否替换
- 其他
:!ls 执行命令行命令ls,以:!开始,也可以执行其他命令
:set ic 查找时忽略大小写
:set noic 禁用忽略大小写
:set hls is 匹配项的高亮显示
:nohlsearch 移除匹配项的高亮显示