vim基础目录
五、命令行模式操作:六、可视模式下操作七、视窗操作八、set 功能九、其它
一、6种基本模式
- 可视模式(高亮); 选择模式(不可输入); EX模式(:visual 命令退出)
i 或 aEsc Esc : wq普通模式插入模式命令行模式保存并退出vim
二、进入插入模式方式:
快捷键 |
作用 |
快捷键 |
作用 |
i |
在光标处插入 |
I |
在光标行首插入 |
a |
在光标后插入 |
A |
在光标行末插入 |
o |
在光标行后插入新行 |
O |
在光标行前插入新行 |
cw |
替换从光标所在位置后到一个单词结尾的字符 |
|
|
三、退出vim:
命令 |
作用 |
命令 |
作用 |
:q |
退出 |
:q! |
强制退出,不保存 |
:w <文件路径> |
另存为 |
x |
保存并退出 |
wq |
保存并退出 |
wq! |
强制保存并退出 |
普通模式下输入shift + zz 即可保存并退出vim
.
四、普通模式下操作:
h
左 j
下 k
上 l
右
-
.
重复上一命令
~
光标所在字母变大小写
Ctrl + o
回到上一次光标所在位置
4.1. 删除文本
快捷键 |
作用 |
快捷键 |
作用 |
x 或Delete |
删除游标所在字符 |
X |
删除游标所在前一个字符 |
dd |
删除整行 |
dw |
删除一个单词 |
d^ |
删除至行首 |
d$ 或D |
删除至行尾 |
d1G |
删除至文档首部 |
dG |
删除至文档尾部 |
4.2. 行间跳动
快捷键 |
作用 |
nG |
游标移动到第n行(输入:set nu 显示行号) |
gg |
游标移动到第1行 |
G |
移动到最后一行 |
4.3. 行内跳动
快捷键 |
作用 |
快捷键 |
作用 |
w |
跳到下一个单词开头 |
e |
跳到当前单词的结尾 |
b |
跳到前一个单词的开头 |
ge |
跳到前一个单词的结尾 |
0 或^ |
跳到行头 |
$ |
跳到行尾 |
f<字母> |
向后搜索<字母> |
F<字母> |
向前搜索<字母> |
t<字母> |
向后搜索<字母>,跳到匹配前一个字母 |
T<字母> |
向前搜索<字母>,跳到匹配的后一个字母 |
4.4. 复制粘贴
快捷键 |
作用 |
快捷键 |
作用 |
nyy |
复制游标所在的n 行 |
y^ 或y0 |
复制到行首,不含光标所在字符 |
y$ |
复制到行尾,含光标所在字符 |
ynw |
复制n 个单词 |
yG |
复制到文本末 |
y1G |
复制到文本首 |
p |
粘贴至光标后(下) |
P |
粘贴到光标前(上) |
ddp |
与下一行交换 |
|
|
4.5. 替换和撤销
快捷键 |
作用 |
快捷键 |
作用 |
r<字母> |
替换为指定字母 |
R |
连续替换,直到按下Esc |
cc |
替换整行,并进入插入模式 |
cw |
替换一个单词,并进入插入模式 |
C |
替换游标至行末 |
~ |
反转游标字母大小写 |
un |
撤销n次操作 |
U |
撤销当前行的所有操作 |
Ctrl + r |
redo ,即撤销undo 的操作 |
|
|
4.6. 快速缩进
>>
:整行将向右缩进
<<
:整行将向左回退
4.7. 快速查找
快捷键 |
作用 |
快捷键 |
作用 |
/icmp |
查找字符串icmp |
n |
查找下一个字符串icmp |
?tcp |
查找字符串tcp |
N |
查找上一个出现的tcp |
? |
向上查找 |
/ |
向下查找 |
\* |
向后找光标所在单词 |
\# |
向前找光标所在单词 |
noh |
取消搜索 |
g* 或g# |
分别同\* ,g# ,但部分符合即可 |
五、命令行模式操作:
5.1. 调整文本位置
命令 |
作用 |
命令 |
作用 |
命令 |
作用 |
:ce |
居中 |
:ri |
靠右 |
:le |
靠左 |
5.2. 缩放值
命令 |
作用 |
命令 |
作用 |
:set shiftwidth ? |
获取缩放值 |
:set shiftwidth=10 |
缩放值设为10个字符 |
5.3. 编辑多个文件
$ vim 1.txt 2.txt # 默认1.txt
命令 |
作用 |
命令 |
作用 |
命令 |
作用 |
:n |
切换到 2.txt |
:n! |
强制切换 |
:N |
切换到 1.txt |
5.4. 打开新文件
命令 |
作用 |
命令 |
作用 |
:e 3.txt |
打开新文件 |
:e# |
回到前一个文件 |
:b 2.txt |
切换到2.txt |
:bd 2.txt |
删除以前编辑过的列表中的文件 |
:f |
显示正在编辑的文件 |
e! 4.txt |
放弃正在编辑的文件,打开4.txt |
f new.txt |
重命名为new.txt |
|
|
5.5. 恢复文件
$ vim -r 1.txt
:ewcover 1.txt
六、可视模式下操作
shift + v
行选择
ctrl + v
区域选择
v
字符选择
七、视窗操作
命令 |
作用 |
命令 |
作用 |
vsp 1.txt |
新的垂直分屏视窗 |
:sp 2.txt |
新的水平分屏视窗 |
:new |
打开新vim视窗 |
ctrl+w s |
将当前窗口分割成两个水平的窗口 |
ctrl+w q |
即:q 结束分割 |
ctrl+w v |
将当前窗口分割成两个垂直的窗口 |
ctrl+w J(K,H,L) |
将当前视窗移至下(上、左、右)面 |
ctrl+w j(k,h,l) |
移至下(上、左、右)面视窗 |
ctrl+w + |
增加视窗的高度 |
ctrl+w - |
减少视窗的高度 |
ctrl+w o |
打开一个视窗并隐藏之前的所有视窗 |
|
|
八、set 功能
8.1. 获取目前设定
命令 |
作用 |
命令 |
作用 |
:set 或:se |
显示所修改过的配置 |
:set all |
显示所有的设定值 |
:set option? |
显示option的设定值 |
:set nooption |
取消当前设定值 |
8.2. set功能的说明
命令 |
作用 |
命令 |
作用 |
:set autoindent (ai ) |
设置自动缩进 |
:set autowrite (aw ) |
设置自动存档 |
:set background = dark (light ) |
设置背景风格 |
:set backup (bk ) |
设置自动备份 |
:set cindent (cin ) |
设置c 语言风格缩进 |
|
|
九、其它
9.1. 创建加密文档
$ vim -x file1
9.2. 执行外部的shell命令
命令 |
作用 |
:!ls |
用于显示当前目录的内容 |
:!rm FILENAME |
用于删除名为FILENAME的文件 |
w FILENAME |
另存为FILENAME的文件 |
9.3. 查看帮助
(1)普通模式按F1打开vim预设的帮助文档
(2)
h shiftwidth
:打开名为shiftwidth的帮助文档
(3)
ver
:显示版本及参数