当前位置: 首页 > news >正文

【Linux】编辑器——vim(最小集+指令集+自动化配置)

目录

1.vim最小集

1.1 vim的三种模式

1.2 vim的基本操作

2.vim指令集

2.1 命令模式指令集

移动光标

删除文字

复制

替换

撤销上一次操作

更改

跳至指定的行

2.2 底行模式指令集

列出行号

跳到文件中的某一行

查找字符

保存文件

多文件操作

3.如何配置vim

配置文件的位置

常用配置选项

自动化配置


Linux中有这样两款编辑器 vi、vim。它们都是多模式编辑器,主要区别在于vim是vi的升级版。它不仅兼容vi的所有指令,而且还有一些新的特性在里面。

1.vim最小集

1.1 vim的三种模式

vim作为多模式编辑器,有多种不同的模式,在这里我们主要介绍 3 种模式,分别是命令模式、插入模式、底行模式。各模式所具有的功能如下:

命令模式

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入底行模式下,或者进入到插入模式下。

插入模式

只有在插入模式下,才可以做内容输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。

底行模式

文件保存或退出,也可以进行文件替换,查找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。若要查看你的所有模式:打开vim,在底行模式直接输入help vim-modes。

1.2 vim的基本操作

① 如何启动 vim?

vim + 文件名

 注意:启动 vim 后,默认在命令模式,需要切换插入模式才能输入内容。

 ② 「命令模式」切换至 「插入模式」

在命令模式下输入:

i:当前光标位置不变,进入插入模式;

a:光标从当前位置自动向后移动一位,进入插入模式;

o:从当前光标所在行向下另起一行,进入插入模式。

当左下角出现 INSERT 的字样时,证明处于插入模式。

③「插入模式」 切换至  「命令模式」

「ESC」即可。

④ 「命令模式」切换至 「底行模式」

shift + ; (其实就是 :)

⑤如何退出 vim?

在底行模式下

输入 w :保存当前文件;

输入 wq:保存并退出;

输入:q! :不保存,强制退出。

2.vim指令集

2.1 命令模式指令集

移动光标

▧ 小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格;

▧ 「 $ 」:移动到光标所在行的“行尾”;

▧ 「^」:移动到光标所在行的“行首”;

▧ 「w」:光标跳到下个单词的开头;

▧ 「e」:光标跳到下个单词的字尾;

▧ 「b」:光标回到上个单词的开头;

▧ 「nl」:光标移到该行的第n个位置,如:5l,56l;

▧ [gg]:进入到文本开始;

▧ 「G」:移动到文章的最后;

▧ [shift+g]:进入文本末端;

▧ 「ctrl」+「b」:屏幕往“后”移动一页;

▧ 「ctrl」+「f」:屏幕往“前”移动一页;

▧ 「ctrl」+「u」:屏幕往“后”移动半页;

▧ 「ctrl」+「d」:屏幕往“前”移动半页;

删除文字

▧ 「x」:每按一次,删除光标所在位置的一个字符; 

▧ 「nx」:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符;

▧ 「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符

▧ 「nX」:例如,「20X」表示删除光标所在位置的“前面”20个字符

▧ 「dd」:删除光标所在行;

▧ 「ndd」:从光标所在行开始删除n行;

复制

▧ 「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

▧ 「nyw」:复制n个字到缓冲区

▧ 「yy」:复制光标所在行到缓冲区。

▧ 「nyy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。

▧ 「p」:将缓冲区内的字符贴到光标所在位置。

注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

替换

▧ 「r」:替换光标所在处的字符。

▧ 「R」:持续替换光标所到之处的字符,直到按下「ESC」键为止。

撤销上一次操作

▧ 「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次恢复。

▧ 「ctrl + r」: 对撤销进行恢复

更改

▧ 「cw」:更改光标所在处的字到字尾处

▧ 「cnw」:例如,「c3w」表示更改3个字

跳至指定的行

▧ 「ctrl」+「g」:列出光标所在行的行号。

▧ 「nG」:例如,「15G」,表示移动光标至文章的第15行行首

2.2 底行模式指令集

在命令模式下输入「:」进入底行模式。

列出行号

▧ 「set nu」: 输入「set nu」后,会在文件中的每一行前面列出行号。

跳到文件中的某一行

▧ 「n」:n表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。

查找字符

▧ 「/关键字」: 先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。

▧ 「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。

保存文件

▧ 「w」: 在冒号输入字母「w」就可以将文件保存起来离开vim

▧ 「q」:按「q」就是退出,如果无法离开vim,可以在「q」后跟一个「!」强制离开vim。

▧ 「wq」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

多文件操作

▧ 「vs filename」分屏打开并编辑另一个文件filename;

▧ 「ctrl ww」切换光标到另一个文件。

3.如何配置vim

原生的vim操作手感以及视图在使用时略显不适,我们可以通过vim配置文件对vim进行美化。美化的作用如同将记事本配置为Visual Studio 2022,可以为我们书写代码提供很好的体验。

配置文件的位置

▞  在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。

▞  而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,通常已经存在一个.vimrc文件。

▞  切换用户成为自己执行 su ,进入自己的主工作目录,执行 cd ~

▞  打开自己目录下的.vimrc文件,执行vim .vimrc

常用配置选项

▞  设置语法高亮: syntax on;

▞  显示行号: set nu;

▞  设置缩进的空格数为4: set shiftwidth=4;

...

此处不过多介绍,可自行搜索。我的建议是。手动配置既耗费时间精力又容易遇到各种各样的问题,所以我比较推荐自动化配置。

自动化配置

▞  自动化配置只需要输入一条指令即可,有需要的小伙伴直接私信即可,随时都在。

▞  如图为自动化配置vim后的页面: 

 

 

 

http://www.lryc.cn/news/16362.html

相关文章:

  • Centos7+Xshell+Jenkins堆装
  • Android system实战 — Android R(11) 进程保活白名单
  • oracle表 分组,并查每组第一条
  • Java代码弱点与修复之——DE: Dropped or ignored exception(无视或忽略异常)
  • JavaEE简单示例——动态SQL之更新操作<set>元素
  • 【极海APM32替代笔记】低功耗模式配置及配置汇总
  • 攻击者失手,自己杀死了僵尸网络 KmsdBot
  • 东阿县高新技术企业认定条件和优惠政策 山东同邦科技分享
  • 【基础算法】哈希表(拉链法)
  • 硬件学习 软件Cadence day07 PCB 底板电路图布线
  • SkyWalking仪表盘使用
  • 面渣逆袭:分布式十二问,万字图文详解
  • 设计模式C++实现23:中介者模式(Mediator)
  • Java方法【未完待续】
  • (考研湖科大教书匠计算机网络)第六章应用层-第一、二节:应用层概述和C/S及P2P
  • 禅道bug提醒脚本部署
  • 利用spring的retry重试编写Feign远程调用重试
  • Docker启动RabbitMQ,实现生产者与消费者
  • 【C语言】函数栈帧的创建与销毁
  • 【Git】使用Git上传项目到远程仓库Gitee码云步骤详解
  • Head First设计模式---3.装饰者模式
  • Python 算法交易实验48 表字段设计
  • 库存管理系统-课后程序(JAVA基础案例教程-黑马程序员编著-第六章-课后作业)
  • 【极海APM32替代笔记】HAL库低功耗STOP停止模式的串口唤醒(解决进入以后立马唤醒、串口唤醒和回调无法一起使用、接收数据不全的问题)
  • Python类变量和实例变量(类属性和实例属性)
  • Glide加载图片
  • 有关时间复杂度和空间复杂度的练习
  • linux服务器nfs数据挂载
  • Python 自动化测试必会技能板块—unittest框架
  • mysql存储引擎、事务、索引