linux下vim的三种模式
Linux环境vim的三种操作模式
- 1. 一般模式/普通模式
- 2. 插入模式
- 3. 底行模式/命令行模式/交互模式
- 三种模式的切换示意图
1. 一般模式/普通模式
进行文本的剪切,删除,复制等
常用操作:
0/Home:将光标定位到一行的起始位置
$/End:将光标定位到一行的结束位置
w:一个单词一个单词地移动(空格隔开视为一个单词)
x:删除光标所在字符
数字num+x:从光标处删除num个字符
dd:删除光标所在的那一行(剪切光标所在行到内存中)
数字num+dd:从光标所在行开始删除num行元素
dw:将光标置于单词的首字母处,删除单词
数字num+dw:从光标所在处开始删除num个单词
d0:删除从行首到光标之前的所有元素
d$:删除从光标处到行末处的所有元素
yy:复制光标所在行到内存中
yw:复制一个单词
y0:复制光标所在处到这一行的起始位置
y$:复制光标所在处到这一行的结束位置
p:粘贴到光标所在处之后
数字n+p:粘贴n次缓冲区中的数据
r:替换光标处的字符
r+要替换的字符ch:将光标所在处的字符替换为ch
R:进入替换模式(可以任意替换字符)
退出替换模式:ESC键
u:撤销上一步操作
数字n+u:撤销上n步的操作
Ctrl+r:取消撤销,重做上一次的修改
数字n+G /数字n+gg:跳转到第n行
G:跳转到最后一行
gg:跳转到第一行
/:进入查找模式,从当前光标处开始,向文件尾部进行搜索
输入要查找的字符串,回车后,
如果找到会跳转到第一个匹配到的字符串头部,如果没找到会显示pattern not found
n:跳转到下一个匹配项的起始位置
N:跳转到上一个匹配项的起始位置
:nohl ------->消除高亮
2. 插入模式
主要进行文本的输入
进入插入模式的方法:
i:进入光标所在处
I(大写i):进入光标所在行的起始位置的前一个位置
a:进入光标的下一个位置
A:进入光标所在行的结束位置的下一个位置
o:在光标所在行和它的下一行之间开辟一行,
进入新开辟的这一行的起始位置
O:在光标所在行和它的上一行之间开辟一行,
进入新开辟的这一行的起始位置
退出插入模式的方法:
按Esc键
3. 底行模式/命令行模式/交互模式
运行退出保存等命令,也可以进行一些vim的配置
常用命令:
w:保存 w+文件名 可以另存文件
q:退出
q!:强制退出,不保存
wq:保存退出
x:保存退出
set nu:设置行号
set nonu:隐藏行号
s/旧字符串/新字符串:将光标所在行的第一个旧字符串替换为新字符串
s/旧字符串/新字符串/g:将光标所在行的所有的旧字符串替换为新字符串
起始行号l1,结束行号l2 s/旧字符串/新字符串/g:将从l1行到l2行的所有旧字符串替换为新字符串
%s/旧字符串/新字符串/g:将文本中所有的旧字符串全部替换为新字符串
r 另一个文件名:在光标处插入一个文件的内容
分屏
sp 另一个文件名 :横向分屏
vsp 另一个文件名 :垂直分屏
分屏下的快捷键:
Ctrl+w+Ctrl+w:跳转到另一个视图
Ctrl+w+h:跳转到左边的视图
Ctrl+w+l:跳转到右边的视图
Ctrl+w+j:跳转到下边的视图
Ctrl+w+k:跳转到上边的视图
Ctrl+w+'+':放大视图
Ctrl+w+'-':缩小视图
Ctrl+w+=:重新均匀分配视图,调整比例
Ctrl+w+r:调换各个视图的位置
Ctrl+w+R:反向调换各个视图的位置
Ctrl+w+q/c:退出视图
:quit/:close ----->退出视图
Ctrl+w+o :关闭其他视图,只保留当前视图
:only ---->关闭其他视图,只保留当前视图
!+外部命令:不离开vim运行外部命令(例如ls)
2201_75738790: 你好👋,代码运行还是报错
Hirro_: 如果在删除的时候左右儿子都存在的情况下,找到的前驱有左儿子,或者找到的后继有右儿子,阁下的代码还能应对吗
cxpxatu521: 具体运行时出现什么问题呢?
2301_78653956: 怎么运行不了
苍山负雪779: 基于无向图怎么输出迷宫的最短路径和全部路径啊?