02 vim指令
1 插入命令
从命令模式进入输入模式,需要输入插入命令。
常用插入命令:
i
: 在当前光标所在位置插入,I
: 在当前光标所在的行首插入,行首指的是本行的第一非空字符之前。a
: 在当前光标所在的位置之后插入。A
: 在光标所在行的行尾插入。o
: 在光标所在行的下面插入新的一行。O
: 在光标所在行的上面插入新的一行。
2 光标移动命令
在命令模式下,可以以移动光标位置
2.1 以字符为单位移动
- 上、下、左、右键移动光标位置
- h、j、k、l 键移动光标位置
2.2 以单词为单位移动
w
: 移动光标到下一个单词的单词首。b
: 移动光标到上一个单词或本单词的单词首。e
: 移动光标到下一个单词或本单词的单位尾。
2.3 移动到行尾或行首
0
或^
: 移动光标到行首。$
: 移动光标到行尾。
2.4 移动到一行内的指定字符处
f字符
: 移动光标到第一个符合条件的字符处。(光标须在字符之前)
2.5 移动到匹配的括号出
%
: 在匹配的括号建切换
3 内容编辑命令
包括内容的查找、替换、复制、粘贴等。也需要在命令模式下进行。
3.1 查找指定字符串
/要查找的字符处
: 从光标所在行向下查找。?要查找的字符处
: 从光标所在行向下查找。set ic
: 查找时忽略大小写。set noic
: 查找时不忽略大小写。
如果匹配到的字符串有多个,按
n
键向下继续匹配,按N
键继续向上匹配如果没有找到要查找的字符串,出现 "Pattern not found"提示
如果查找的字符串中特殊字符,须转义,常见的特殊字符有 \、*、?、^、$ 等
3.2 替换
r
: 替换光标所在处的字符。R
:从光标所在处的某个字符,按 Esc 键结束。
批量替换: (进入编辑模式)
:起始行号,结束行号 s/源字符串/替换的字符串/g # 替换范围内的字符串
:%s/源字符串/替换的字符串/g # 替换整稿文档的字符串
3.3 删除、粘贴、复制
x
: 删除光标所在处字符。nx
: 从光标所在位置向后删除 n 个字符,n 为数字。dd
: 删除整行。如果之后粘贴,则此命令的作用是剪切。ndd
:删除多行。dG
: 删除从光标所在行到文件末尾的内容。D
: 删除从光标所在处到这行行尾的内容。:起始行,终止行 d
: 删除指定范围的行。(进入编辑模式)yy
或Y
: 复制单行。nyy
或nY
: 复制多行p
: 粘贴到当前光标所在的行下。P
: 粘贴到当前光标所在的行上。
3.4 区域复制
光标移动到某个地方,按 Ctrl
+ V
键,底部状态栏显示 “VISUAL BLOCK”,可以使用上下左右键进行区域选取。 输入 y
命令可以复制,输入 d
命令可以剪切。
3.5 撤销
u
: 撤销
4 保存退出命令
底线命令模式,保存退出可以输入一下指令:
:w
: 保存不退出:q
: 不保存退出:wq
: 保存并退出:w!
: 强制保存:q!
: 强制不保存退出:wq!
: 强制保存并退出
三个指令可以组合在一起使用,比如
wq
、!q
、!wq
等,注意 顺序!注意输入
:
进入编辑模式,在输入以上指令
5 其他设置指定
底线命令模式下:
:set nu
显示行号:set nonu
不显示行号:syn on
显示颜色:sys off
不显示颜色