1、vim 有三种工作模式:
一般模式:以vim直接打开的默认模式
编辑模式:左下角有插入命令的字符
命令模式:左下角没有任何提示,按:进入命令模式
2、模式之间的切换
一般模式切换到编辑模式:
i I o O s S a A
编辑模式切换到命令模式:
按ESC 按:进入命令模式
3、一般模式下基本操作
删除:dd:表示删除一行
ndd:表示删除n行
x:表示删除一个字符
nx:删除多个字符
dw:删除一个单词
ndw:删除多个单词
daw:删除一个单词,光标在单词的中间
dgg:删除当前行至文件内容的开头。
dG:删除当前行至文件内容的结尾。
d^:删除光标位置到行首。
d$:删除光标位置到行尾。
J:两行合并为一行
u:撤销前次的操作
ctrl + r:取消撤销
复制:
yy:复制一行
nyy:复制多行
:m,ny:复制m行到n行文本到vim的缓冲区
p:粘贴
4、可视字符
复制:
首先按v->通过方向键选中字符->y(copy)->一般模式下p
剪贴:
首先按v->通过方向键选中字符->c(cut)->一般模式下p
可视行操作:
shift + v
可视块的操作:
ctrl + v
选中后,按r进行替换
5、移动
h:光标向左移动一位
l:光标向右移动一位
j:光标向下移动一位
k:光标向上移动一位
^:光标移动到行首(有效字符的行首)
0:光标移动到行首(行的第一个位置)
$:光标移动到行尾。
H:光标移动该屏幕的顶端
M:光标移动该屏幕的中间
L:光标移动该屏幕的行尾
gg:光标移动该文件的行首
G:光标移动该文件的行尾
ngg:光标移动该文件的第n行
50%:移动光标到中间
w:移动光标到下一个单词,到单词的词首
b:移动光标到上一个单词,到单词的词首
e:移动光标到下一个单词,到单词的词尾
ctrl + u:将窗口向上移动半屏
ctrl + d:将窗口向下移动半屏
ctrl + f:将窗口向上滚动一整屏
ctrl + b:将窗口向下滚动一整屏
6、编辑模式
i I o O s S a A
i:在光标的位置插入
I:行首插入
o:下一行插入
O:上一行插入
s:删除光标出的字符插入
S:空清光标行插入
a:光标的后面插入
A:行尾的插入
10i:输入一个单词,退出这种模式,自动做十次这样的动作。
7、命令模式
:w 保存
:q 退出
:w! 强制保存
:q! 强制退出
:wq 保存退出
:waq 一次性全部保存退出多个文件
8、查找替换
查找:
:/ ? 查找字符
/ 表示自上而下的操作
? 表示自下而上的操作
n 查看下一个匹配的字符串
N 查看上一个匹配的字符串
\< 表示以什么开头
例: /\<root 表示查找意root开头的字符串
\> 表示结尾
例:/\>root 表示查找意root结尾的字符串
替换:
格式:范围s/原操作符/新操作符/参数
范围:
1:表示第一行
$:最后一行
%:全文
参数:
g:全局替换(默认每一行的第一个)
i:不区分大小写
c:确认替换
特殊字符需要转义:\