1.三种模式切换:
vim test 进入test文件的普通模式
普通模式按i进入插入模式
插入模式按Esc键退出到普通模式
普通模式按:进入命令行
命令行模式输入wq保存文件并退出Vim
2.进入Vim
vim test.txt / vim test 打开文件,进入vim编辑状态
vim 打开vim编辑器,但不打开任何文件
3.游标移动
按Esc键进入到普通模式:h(左)、l(右)、j(下)、k(上)、w(下一个单词)、b(上一个单词)
4.进入插入模式
模特模式下:i(光标前进行插入)、I(行首进行插入)、A(行末进行插入)、a(光标后进行插入)、o(当前行后插入新行)、O(当前行前插入新行)、cw(替换从光标所在位置到本行最后一个单词字符)
5.退出和保存(普通模式下)
:wq 保存并退出
:x 保存并退出
shift+zz 保存并退出
:q! 不保存退出
:q 退出(未做修改)
:w 保存不退出(可以加路径另存为)
6.删除文本
普通模式下:x / delete键(删除光标所在字符)、X(删除光标前一个字符)、dd(删除整行)、3dd(向下删除3行)、d$/ D(删除至行尾)、d^(删除至行首)、dG(删至文档结尾处,删除本行)、d1G(删至文档首部)
7.vim重复执行上次命令(普通模式下)
小数点(.)表示重复上一命令,如输入x,删除一个字符,输入.会再删除一个字符,除此之外也可以重复dd的删除操作
8.执行指定次数的相同命令(普通模式下)
10x 连续删除10个字符
3dd 删除3行
dw / daw 删除一个单词
d5w 删除5个单词
9.行间跳转(普通模式下)
nG 跳转到第n行(进入命令模式,输入:set nu,显示行号)
gg 游标移到第一行
G 游标移到最后一行
ctrl+o 回到上一次光标位置
10.行内跳转(普通模式下)
w 跳转到下一单词开头,再使用dw删除此单词
b 跳转到前一个单词开头
e 到当前单词的结尾,再使用~将游标所在的字母变大写或小写
^/ 0 到行头
$ 到行尾
f<字母> 向后搜索字母并跳转到第一个匹配的位置
11.复制及粘贴文本(普通模式下)
yy (复制游标所在整行)
y^ / y0 复制至行首(不含光标字符)
y$ 复制至行尾(含光标字符)
yw 复制一个单词
y3w 复制3个单词
yG 复制至文本末
y1G 复制至文本开头
p(小写) 粘贴至光标后(下)
P(大写) 粘贴至光标前(上)
12.剪切及粘贴(普通模式下)
可以使用dd删除内容,再使用p粘贴,实现剪切粘贴的效果
ddp 交换上下行
13.替换(普通模式下)
r+<待替换的字母> 将游标所在字母替换为指定字母
R 连续替换,直到按下Esc
cc 替换整行,即删除游标所在行,并进入插入模式
cw 替换一个单词,即删除一个单词,并进入插入模式
C 替换游标以后至行末
14.撤销(替换的内容、普通模式下)
u{n} 撤销一次或n次操作
U 撤销当前行的操作
ctrl+r 撤销undo操作
15.快速缩进(普通模式下)
>> 整行向右缩进
<< 整行向左回退
:set shiftwidth? /:set shiftwidth /:set sw /:set sw? 获取目前设定值(缩进和回退的字符数)
:set shiftwidth=8 /:set sw=8 设置缩进为8个字符
16.调整文本位置(普通模式下)
:ce 使本行内容居中
:le 使本行内容居左
:ri 使本行内容居右
17.快速查找(普通模式下)
/icmp 向下查找icmp
?tcp 向上查找tcp
n 进入查找之后,继续查找
N 进入查找之后,反向查找
18.高级查找(普通模式下)
\* 寻找游标处所在单词,向下找(继续查找,按n)
\# 同上,向上找
g\* 同\*,但部分符合该单词即可
g\# 同\#,但部分符合该单词即可