目录
vim是一款功能强大的文本编辑器。vi/vim的区别简单来说,vim是vi的升级版本,可以兼容vi的所有指令,并且同时存在一些新的特性。例如:语法高亮... ...
vim一共有12种模式,其中最基础也是最重要的三个模式分别为:
命令模式、插入模式、底行模式
1.命令模式(Normal mode)
可以控制光标移动,通过各种命令快捷处理文本
2.插入模式(Insert mode)
可以进行文本编辑,输入文字
3.底行模式(Last line mode)
进行文件的保存与退出,或者文件替换,找字符串,列出行号
进入vim之后,默认的是命令模式,要切入到插入模式才能进行输入
1.正常模式切换至插入模式
输入i:从光标当前位置开始输入文件
或者输入a:从目前光标所在位置的下一个位置开始输入文字
或者输入o:插入新的一行,从行首开始输入文字
2.插入模式切换至命令模式
esc
3.命令模式切换至底行模式
shift + :
命令模式可以与插入、底行模式进行直接转换,而插入与底行两个模式想要转换时,就要先转换为命令模式。
G:移动到文章最后
#G:15G,表示移动光标至文章的第15行行首
gg:移动到文章最开始
$:移动到行尾
^:移动到行首
w:光标跳到下个字的开头
e:光标跳到下个字的字尾
b:光标回到上个字的开头
#l:光标回到该行的第#个位置,如:5l,6l
ctrl+b:屏幕向后移动一页
ctrl+f:屏幕向前移动一页
ctrl+u:屏幕向后移动半页
ctrl+d:屏幕向前移动半页
x:删除光标所在位置的一个字符
#x:例如:6x表示删除光标所在位置的后面(包含自己在内)的6个字符
X: 删除光标所在位置的前一个字符
#X:与#x同理
dd:删除光标所在行
#dd:从光标所在行开始删除#行
yw:将光标所在之处到字尾的字符复制到缓冲区
#yw:复制#个字到缓冲区
yy:复制光标所在行到缓冲区。
#yy:例如,6yy表示拷贝从光标所在的该行“往下数”6行文字。
p:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能
#p:粘贴#次
替换
r:替换光标所在处的字符
R:替换光标所到之处的字符,知道按下esc为止
撤销
u:回到上一个操作,可以多次撤回
ctrl+r:撤销的撤销,意思是撤销掉刚才的撤销操作,理解为反撤销
更改
cw:更改光标所在处的字到字尾处
c#w:c3w表示更改3个字
行号
ctrl+g:列出光标所在行的行号
移动
h,j,k,l:左下上右
列出行号或取消
set nu:在文件每一行前面列出行号
set nonu:取消行号
跳到文件中的某一行
#:#号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行
查找字符
/关键字:先按/键,再输入想要寻找的字符,如果第一次找的关键字不是想要的,可以一直按n,会往后寻找到您想要的关键字为止
?关键字:先按?键,再输入想要寻找的字符,如果第一次找的关键字不是想要的,可以一直按n,会往前寻找到您想要的关键字为止
保存与退出
w:保存
q:退出
wq:保存并且退出
!:强制,wq!,强制保存或者退出
分文件
vs [文件名]:如果有该文件,就直接分屏打开;如果没有该文件,创建文件并分屏打开
ctrl + ww:分屏时,光标在不同文件间跳转
可以在vim下执行bash命令
![指令]:不用退出vim,直接按照正常指令显示,按回车键可以回到vim界面
这里如果是要用gcc/g++编译代码的话,要先w进行写入(保存)才可以生成可执行程序