⚡️【linux】linux编辑器-VIM的高频使用,快快收藏起来!

news/2024/11/15 0:49:45/

⚡️目录

1️⃣VIM最小集

2️⃣VIM指令集

3️⃣VIM的配置


🌲前言:VIM和VI的区别简单点来讲,他们都是多模式编辑器,不同的是VIM是VI的升级版本,它不仅兼容VI的所有指令,而且还有一些新的特征在里面。例如语法加亮,可视化操作不仅可以再终端运行,也可以运行于x window、mac os、windows。今天我们来介绍VIM😘。

1️⃣VIM最小集

❄️VIM是一款多模式编辑器,它包含各种模式,每种模式都有它独特的用法和差别,并且每种模式之间可以相互切换💫,目前我们常用的有3-5种模式(插入模式、命令模式、底行模式、切换模式、视图模式)。

❄️当我们进入VIM时,就默认进入了命令模式,命令模式也是我们进行模式转换的最基础的模式。

🌼命令模式如图1:

 ❄️既然能进行模式间的切换,那么我们如何进入插入模式来对代码进行编辑呢😳?

🌊答案:按i/a/o键进入插入模式。(注:每个键都能独立的进入插入模式,但是进入插入模式前都有自己不同的操作,大家下去自行验证哦,这样可以加深记忆👍)

🌼插入模式图2:

 ❄️首先我们知道我们命令模式是进行模式转换的基础,那么如果我们编辑完成之后,如何退出插入模式呢?

🌊答案:按esc当左下角的insert变成了normal,说明就退出了插入模式,如图1。

❄️那么如果我们不想看到代码的行号,或者想对代码进行高亮化操作,我们要怎么做呢?------进入底行模式!如何进入底行模式呢?首先我们要确认自己是再命令模式下,然后按"shift"  +  "",就可以进入底行模式啦!进入后,光标就在左下角,等待你输入各种命令😁。

🌼底行模式图3:

 ❄️如何退出底行模式呢?

🌊答案:输入wq保存并退出。输入wq!强制保存并退出哦!

❄️如果我们对某行代码不满意或者写错了想要修改,不进入插入模式能否修改呢?当然可以😏!我们可以进入替换模式对文本进行替换更改,如何进入替换模式呢?

🌊答案:" shift " + " r " 进入。(这时候你是可以按小键盘进行光标的上下移动)

🌼替换模式图4

 ❄️如果想退出替换模式,也是按esc键退出。

⭐️总结:

 🔥注意事项:

①如果你不知道自己在什么模式下,无脑esc退出😆。

②退出的时候,一般都是先保存后退出,即wq😏。

2️⃣VIM指令集

☁️底行模式下:

set nu/nonu:调出和去掉行号

☁️命令模式下:

yy/nyy:复制当前行在内的指定若干行

p/np:粘贴一行或者多行相同的内容到光标所在行之下

u:撤销刚刚的操作

ctrl+r:对撤销的操作进行撤销

dd/ndd:对当前行,或当前行在内的n行内容进行剪切

shift + g:将光标定位到文档结尾

gg:将光标定位到文档开始

n shift + g:将光标定位到指定行

shift + 4:将光标定位到所在行结尾

shift + 6:将光标定位到所在行开始

nw/nb:以单词为单位,进行光标的前后移动,w向后,b向前

shift + ~:快速对光标所在位置进行大小写切换

n r:替换光标所在的字符

n x/X:行内删除,x向后删除,X向前删除

前后移动:h(向左),j(向下),k(向上),l(向右)

%s/source/destination/g:选择性文本替换

/sth:搜索某些内容

vs file:新建一个文件

🔥:在VIM分屏模式下,光标在哪里,就是编辑哪一个文件,如果想切换不同的文件,用ctrl+ww来操作。

3️⃣VIM的配置

1.自行配置

创键一个.vimrc的文件,进入之后把你想要的配置输入进去,就可以了。

2.自动化配置(也就是下载别人的配置安装包


http://www.ppmy.cn/news/9457.html

相关文章

前端基础_离线Web应用概述

离线Web应用概述在Web应用中使用缓存的原因之一是为了支持离线应用。在全球互联的时代,离线应用仍有其实用价值。当无法上网的时候,你会做什么呢?你可能会说如今网络无处不在,而且非常稳定,不存在没有网络的情况。但事…

编写 MBR 主引导记录

文章目录前言mbs.S代码实验操作前言 本博客记录《操作系统真象还原》第二章最后一节的实验操作~ 实验需要安装Bochs软件,具体可食用Bochs下载安装博客。 实验环境:ubuntu18.04VMware 实验内容:在屏幕上打印字符串“1 MBR”,背…

人工智能期末试卷

一、简答题(共 24 分) 若将人看成一个信息处理系统,1) 人的智能具有哪些特征?2) 举例说明哪一特征是最重要的并 3) 阐述其与实现通用人工智能的关系。(要求:2、3 小问一定用自己的语言作答!)(8 …

vue3学习记录二组件之间的通信方式-下

三 defineProps和defineEmits - defineProps 和 defineEmits 都是只能在 <script setup> 中使用的编译器宏。 - 不需要导入 - defineProps 接收与 props 选项相同的值&#xff0c;defineEmits 接收与 emits 选项相同的值。 - defineProps 和 defineEmits 在选项传入后&a…

什么是密码管理器?它安全吗?

密码管理器或密钥管理员是一类用于生成、检索、保存及管理复杂密码、数字签名的措施&#xff0c;可以由硬件或软件实现。因此&#xff0c;密码管理器一般也称作密码管理软件。复杂密码的生成一般按需要以随机算法产生&#xff0c;而密码数据则保存于一个以密码、数字签名等方式…

代码随想录拓展day7 649. Dota2 参议院;1221. 分割平衡字符串;5.最长回文子串;132. 分割回文串 II;673.最长递增子序列的个数

代码随想录拓展day7 649. Dota2 参议院&#xff1b;1221. 分割平衡字符串&#xff1b;5.最长回文子串&#xff1b;132. 分割回文串 II&#xff1b;673.最长递增子序列的个数 贪心和动态规划的题目。因为贪心其实没什么规律&#xff0c;所以就简要记录了。 649. Dota2 参议院 …

基于Vue和SpringBoot的宾馆管理系统的设计和实现

作者主页&#xff1a;Designer 小郑 作者简介&#xff1a;Java全栈软件工程师一枚&#xff0c;来自浙江宁波&#xff0c;负责开发管理公司OA项目&#xff0c;专注软件前后端开发&#xff08;Vue、SpringBoot和微信小程序&#xff09;、系统定制、远程技术指导。CSDN学院、蓝桥云…

CAS 的使用场景 CAS的ABA问题的优化 以及 synchronized 的三大优化

目录 &#x1f388;专栏链接:多线程相关知识详解 一.什么是CAS 二.CAS最常用的两个场景 Ⅰ.实现原子类 Ⅱ.实现自旋锁 三.CAS的ABA问题 四.优化解决CAS的ABA问题 五.synchronized的优化 Ⅰ.锁升级/锁膨胀 Ⅱ.锁消除 Ⅲ.锁粗化 一.什么是CAS CAS&#xff08;Compar…