插入指令
i 在光标处插入字符
I 在光标所在行最前插入
a 在光标所在字符后面插入
A 在光标所在行的最后插入
o 在光表所在行下面插入一行
O 在光标所在行上面插入一行
r 替换光标所在字符,只替换一次
R 替换光标处字符,知道按下ESC为止
跳转指令
0 跳转到光标所在行开头
$ 跳转到光标所在行末尾
n<空格键>从光标开始跳转n个字符
G 跳转到最后一行开头
nG 跳转到第n行
gg 跳转到第一行开头
n<Enter>从光标所在行开始向下跳转n行
删除指令
x 删除光标所在字符
X 删除光标前面字符
dd 删除光标所在行
ndd 从光标所在行开始,向下删除n行
d1G 从光标所在行开始,向上删除到第一行
dG 从光标所在行开始,向下删除到最后一行
d0 从光标位置开始一直删除到本行开始
d$ 从光标开始一直删除到本行末尾
复制粘贴指令
yy 复制本行
nyy 从光标所在行开始,向下复制n行
y1G 从光标所在行开始,向上复制到第一行
yG 从光标所在行开始,向下复制到最后一行
y0 从光标位置开始,复制到本行开始
y$ 从光标位置开始,复制到本行末尾
p 将复制内容在光标所在行的下面进行粘贴
P 将复制内容在光标所在行的上面进行粘贴
查找替换指令
/word 从光标处往下寻找word
?word 从光标处往上寻找word
:n 继续向下寻找
:N 继续向下寻找
:n1,n2s/word1/word2/g 将第n1行到n2行的单词word1全部替换为word2
:n1,n2s/word1/word2/gc 将第n1行到n2行的单词word1全部替换为word2,并且需要用户确认,c即confirm的意思
另存指令
:w filename
撤销与重做指令
u 撤销指令,撤销前一个动作
CTRL+r 重做指令,重做前一个动作
连接指令
J 将光标所在行和下一行连接为同一行
:r filename 读入档案filename,并将filename的内容添加到光标所在行后面
shell command指令
:! shell command 在vim中运行shell 命令
多文档编辑指令
vim filename1 filename2 ... 在vim中同时打开多个文件
:files 列出所有打开的文件
:n 查看下一个文件
:N 查看上一个文件
:xn 切换到向下的第x个文档
:xN 切换到向上的第x个文档
多窗口编辑指令
:sp filename 同时打开多个vim窗口浏览文件,如果省略filename则浏览的是同一个文件
CTRL+w+j(向下箭头)光标移动到下一个窗口
CTRL+w+k(向上箭头)光标移动到上一个窗口
CTRL+w+q 关闭所处分屏
CTRL+w+o 仅显示当前分屏
区块选择指令
v 在光标经过的字符反白选择
V 将光标经过的行反白选择
CTRL+v 以矩形区域选择光标经过的字符
y 复制选择的区块
p 在光标处粘贴复制的区块
d 删除选择的区块
自动补全指令
CTRL+x->CTRL+n 先按CTRL+x,后按CTRL+n, 根据正在编辑的文件内容进行自动补全
CTRL+x->CTRL+o 先按CTRL+x, 后按CTRL+o, 根据正在编辑的文件后缀名进行自动补全