Linux下vim各模式的操作你了解吗

前言学习linux少不了和vim打交道,今天我们就来了解一下什么是vim,如何高效使用vim以及如何配置vim 。
vi和vim都是linux下多模式的编辑器,两者关系类似于c/c++的关系,vim是vi的升级版,不仅兼容vi的所有指令,还增加了一些新的特性,比如语法高亮,支持正则表达式等,vim具有程序编辑能力,常用于编写代码 。下面让我们具体了解vim

Linux下vim各模式的操作你了解吗

文章插图
Linux下vim各模式的操作你了解吗
vim的模式vim有多种模式,这里介绍一些常用的模式给大家,分别是命令模式(也叫普通模式Normal mode)、插入模式(Insert mode)、底行模式(last line mode)、可视化模式(Visual mode)、替换模式(Replace mode) 。
用得最多的就是命令模式、插入模式和底行模式 。文章后面也会教大家在vim上查看其他模式,linux下一般默认是安装了vim,没有下载vim执行下面指令即可
[king@VM-12-11-centos code]$ sudo yum intsall -y vimvim后直接跟文件就会打开对应的文件,如果文件不存在就会自动创建
[king@VM-12-11-centos code]$ vim tmp.c打开后就是这个界面,这里我的vim是配置过的,和原生的vim不同,文章后面会介绍vim的具体配置 。
Linux下vim各模式的操作你了解吗

文章插图
Linux下vim各模式的操作你了解吗
vim模式间的切换vim打开后默认在Normal命令模式下,也可以称为中间模式,因为模式间的切换都需要回到命令模式下再切换到对应的模式 在任何模式下只需要Esc键即可回到命令模式,如何从命令模式切换到指定模式我们我们接下来介绍
Linux下vim各模式的操作你了解吗

文章插图
Linux下vim各模式的操作你了解吗
命令模式控制屏幕光标的移动,字符、字或行的删除,移动复制某区段等
光标操作早期的键盘是没有上下左右键的
Linux下vim各模式的操作你了解吗

文章插图
Linux下vim各模式的操作你了解吗
所以用h(左)、j(下)、k(上)、l(右)
  • shift+^ :光标定位到当前行的行首,shift+$光标定位到当前行行尾
  • gg :定位到起始行
  • shift+g :定位到结束行
  • n+shift+g :n表示指定的行数,跳转到指定行
  • b/w :以单词为单位光标前/后移动
  • #l :光标在该行向后移动#个间距
  • ctrl + b :屏幕往“后”移动一页
  • ctrl +f :屏幕往“前”移动一页
  • ctrl +u :屏幕往“后”移动半页
  • ctrl+d :屏幕往“前”移动半页
文本操作
  • yy :复制当前行
  • nyy :以当前行开始,复制n行
  • p:粘贴
  • np :一次重复粘贴n行
  • u:撤销
  • ctrl+r :恢复刚才的撤销,也就是撤销刚才的撤销
  • dd :删除光标所在行(ps:这里删除还可以当做剪切使用,比如dd删除当前行后,按p可以粘贴到指定位置)
  • ndd :删除n行
  • shift+~ :单词大小写切换
  • x :删除光标所覆盖的字符
  • xn :删除光标后的n个字符
  • shift+x :删除光标前的一个字符
  • n+shift+x :删除光标前n个字符
  • r+字符 :用指定字符替换光标所在字符
  • n+r+字符 :用指定字符替换光标后的n个字符
替换模式
  • shift+r :从命令模式切换为替换模式,在键盘上不断输入就会不断替换当前光标所在字符
插入模式插入模式就是用来编辑文件内容的模式
从命令模式下进入插入模式:
  • i/I :在光标前面/行首插入
  • a/A :在光标后面/行尾插入
  • o/O :在光标下/上行行首插入
还有一些其他的方式这里就不介绍了,我们一般用i从命令模式进入插入模式然后编辑代码
底行模式