VIM操作手册
简介
vim 被称为模式化的编辑器,其有三种基本模式,分别为编辑模式,可进行文本编辑如(删除、复制、粘贴等),输入模式,可进行文本输入操作,以及末行模式,末行模式有诸多的命令行接口,可使用不同的命令对文本进行操作。
下文主要讲解以下几点:
- vim 三种工作模式切换
- vim 文件操作
- vim 中光标跳转
- vim 编辑命令
- vim 末行模式
- vim 多文件模式
- vim 窗口分割模式
- 定制vim工作特性
模式转换
选项 |
作用 |
i |
在当前光标下进入插入模式 |
I |
在行首进行插入 |
a |
在当前光标后进行插入 |
A |
在行尾进行数据插入 |
o |
在当前光标处下一行进行插入 |
O |
在当前光标处上一行进行插入 |
cc |
删除光标所在行并且进入插入模式 |
C |
删除光标所在行进入插入模式 |
按 Esc 键即可完成转换
按 " : " 键即可完成转换
按 Esc 键后, 再按“:”
文件操作
打开文件
$ vim [OPTION] ... FILE ...
选项 |
作用 |
+num |
打开文件后,光标直接进行 num 行 |
+/patterm |
打开文件直接让光标处于第一个被 patterm 匹配到的行首 |
关闭文件
使用vim工具进入文本编辑操作后,跳转到末行模式,进行文件关闭。
选项 |
作用 |
:q |
直接退出 |
:q!/ZQ |
强制退出 |
:wq/ZZ |
保存文件并退出 |
光标移动
字符间跳转
选项 |
作用 |
h |
光标向左跳转单个字符 |
j |
光标向下移动一个字符 |
k |
光标向上移动一个字符 |
l |
光标向右移动一个字符 |
num[h/j/k/l] |
指定移动字符个数---> 5l 向左移动五个字符 |
单词间跳转
选项 |
作用 |
w |
跳转到下一个单词词首 |
e |
跳转到下一个单词词末 |
b |
跳转前一个单词词首 |
行首行尾跳转
选项 |
作用 |
^ |
跳转到行首第一个非空白字符 |
& |
跳转到当前行行尾 |
0 |
跳转到当前行行首 |
行间移动
选项 |
作用 |
num+gg |
跳转到指定行数 |
gg |
快速跳转到行首 |
G |
快速跳转到行尾 |
编辑命令
字符编辑
x: 删除光标处的字符
[num]x: 删除光标处起始的 num 个字符
xp:交换光标所在处的字符及后面字符的位置
删除命令
删除命令,可结合光标跳转字符,实现范围搜索。
d$: 删除光标至行未的内容
d^: 删除光标至第一个以非空白字符开头的内容
do: 删除光标至行首的内容,包括空白字符
dw: 删除光标至下一个单词词首的内容
de: 删除光标至下一个单词词首的内容
db: 删除光标至前一个单词词首的内容
\#COMMAND([d$\\d^\\ d0\\ ...]): 删除由#指定的多个内容
dd: 删除光标所在行|
[num]dd: 删除多行
复制命令
y: 复制,工作机制相似于d命令
y$: 复制光标至行未的内容
y^: 复制光标至第一个以非空白字符开头的内容|
y0: 复制光标至行首的内容,包括空白字符|
yw: 复制光标至下一个单词词首的内容|
ye: 复制光标至下一个单词词首的内容|
yb: 复制光标至前一个单词词首的内容|
\#COMMAND([y$\\y^\\ y0\\ ...]): 复制由#指定的多个内容
yy: 复制光标所在行|
[num]yy 复制多行
修改命令
c: 修改,类似于输入模式下的d命令,c选项实现了从编辑模式到输入模式的操作切换。
c$: 删除光标至行未的内容
c^: 删除光标至第一个以非空白字符开头的内容
co: 删除光标至行首的内容,包括空白字符
cw: 删除光标至下一个单词词首的内容
ce: 删除光标至下一个单词词首的内容
cb: 删除光标至前一个单词词首的内容|
\#COMMAND([c$\\c^\\ c0\\ ...]):删除由#指定的多个内容
cc: 删除光标所在行
[num]cc: 删除多行