VI编辑器的设计理念
- 通过键盘完成所有的操作,通过减少目光转移从而提高编辑效率。
VI的工作模式
- 命令模式
- 通过VI编辑器打开之后默认就是命令模式,此时是不能对文本进行编辑的,需要通过输入命令才能进行下一步操作,通过输入i,a,等指令即可进入插入模式。
- 插入模式
- 在插入模式下,可以对文本进行编辑,如果需要退出插入模式,单击ESC。
- 底行模式
- 在命令模式下单击:进入底行模式,此时可输入指令进行文件保存,退出等操作。
命令模式基础操作
-
i
- 在光标所在字符前进行插入
-
a
- 在光标所在字符后追加
-
o
- 在光标所在行下一行插入新的一行,输入后自动切换为插入模式
-
O
- 在光标所在行上一行插入新的一行,输入后自动切换为插入模式
-
cw
- 替换从当前光标之后到单词结尾的字符,输入完成后会自动进入插入模式
-
0
- 将光标移动至当前行所在的第一个字符
-
^
- 将光标移动至当前行所在的第一个非空白字符
-
$
- 将光标移动至当前行所在的最后一个字符
-
g_
- 将光标移动至当前行所在最后一个非空白字符
-
/ <string>
- 搜索string并高亮显示,可以通过n查找下一个
-
x
- 删除光标所在字符
-
dd
- 将当前行移动到剪切板
-
yy
- 复制光标所在行
-
p
- 将剪切板中的数据粘贴到下一行
-
u
- 撤销上一次操作
-
ctrl+r
- 恢复上一次操作
-
hjkl
- 移动光标(左下上右)
- 把光标键映射为nop(修改/etc/vim/vimrc)
- moremap <Up> <Nop>
- moremap <Down> <Nop>
- moremap <Left> <Nop>
- moremap <Right> <Nop>
-
:hep <cmd>
- 显示相关命令的帮助111
-
:e <path>
- 新打开一个文件
-
:w
- 保存文件修改
-
:q
- 退出
-
:q!
- 强制退出不保存
-
:saveas <path>
- 另存
-
:bn
- 打开多个文件时切换到下一个文件
-
:bp
- 打开多个文件时切换到上一个文件
-
.
- 重复上一次的命令
-
N <command>
- 重复上一条命令N次
-
NG
- 移动到N行
-
gg
- 移动到第一行(相当于1G)
-
G
- 移动到最后一行
-
w
- 下一个单词的开头
-
e
- 下一个单词的结尾
-
%
- 匹配括号移动,可以是({[
-
# 和 *
- 匹配光标所在单词,*匹配上一个,#匹配上一个
-
ctr+d
- 向后翻半页
-
ctr+u
- 向前翻半页
-
ctr+f
- 向后翻整页
-
ctr+b
- 向前翻整页