vim常用命令

正常模式(Normal Mode)

浏览和修改文本内容,一般的,打开 Vim 都是正常模式。在任何模式下,只要按下 Esc 键就可以返回正常模式。

命令 作用(解释)
h 表示往左
j 表示往下
k 表示往右
l 表示往上
ctrl + f 上一页
ctrl + b 下一页
w,e / W,E 跳到单词的后面,小写包括标点
b,B 单词为单位往前跳动光标,小写包含标点
o 开启新的一行
^ 一行的开始
$ 一行的结尾
gg 文档的第一行
[N]G 文档的第 N 行或者最后一行
dd 删除一行
dw 删除一个单词
x 删除后一个字符
X 删除前一个字符
D 删除一行最后一个字符
[N]yy 复制一行或者 N 行
yw 复制一个单词
p 粘贴
u 撤销上一步操作
ctrl+ r 恢复上一步操作
. 重复最后一个命令
/pattern 向光标下搜索字符串,可以是正则表达式
?pattern 向光标上搜索字符串
n 向下搜索前一个搜素动作
N 向上搜索前一个搜索动作

插入模式(Insert Mode)

向文本中添加内容

命令 作用(解释)
i 插入到光标前面
I 插入到行的开始位置
a 插入到光标的后面
A 插入到行的最后位置
o, O 新开一行
Esc 关闭插入模式

视觉模式 (Visual Mode)

相当于高亮选取文本后的普通模式,可视模式具有子模式,以行为单位进行选取的可视行模式,使用 “V” 键进入(也就是 Shift+v );和以块为单位进行选取的可视块模式,使用 “Ctrl+v” 键进入。

命令 作用(解释)
v 选中一个或多个字符
V 选中行
ctrl+ v 选中列

命令模式 (Command Mode)

操作文本文件(而不是操作文本文件的内容),例如保存文件;或者用来改变编辑器本身的状态,例如设定多栏窗口、标签或者退出编辑器

命令 作用(解释)
:set nu 显示行号
:set nonu 取消显示行号
:set paste 设置粘贴模式
:%s/old/new/g 全文替换
:w 保存
:wq, :x 保存并关闭
:q 关闭(已保存)
:q! 强制关闭
:split 水平方向分割出一个窗口
:vsplit 垂直方向分割出一个窗口
:close 关闭窗口
ctrl+ w 切换窗口, h 到左边窗口,j 到下方窗口,k 到上方窗口,l 到右边窗口