【Linux】vim的基本操作与配置(下)

Hello everybody!今天我们继续讲解vim的操作与配置,希望大家在看过这篇文章与上篇文章后都能够轻松上手vim!

1.补充

在上一篇文章中我们说过了,在底行模式下set nu可以显示行号。今天补充一条:set nonu可以取消行号。这两条命令大家看看就可以,一点都不重要。因为在配置好vim之后会自动将行号显示出来。

2.搜索关键字

在底行模式下输入/关键字,可进行关键字得查找。

3.!command

有时在使用vim时,忘了某个函数是如何使用得,还要退出vim再查看该函数的用法。

或是在代码编写到一半的时候,想要编译测试一下代码,还是要退出vim。

这样过于麻烦,我们可以在底行模式下直接进行代码的编译或是查看函数的用法:

直接在对应命令前加上一个感叹号即可!

这样可以不用退出vim也可以编译程序

之后就来到这个界面,可以按任意键继续

再如,写代码的时候不知道strlen函数怎么用了,可以直接查看它的用法:

这样就会方便很多。

4.多文件操作

当我们需要同时编辑多个文件时,比如说要同时写头文件,源文件,测试文件等,怎么办呢?

vim支持多文件操作:

在我们编写test.c的时候,需要编写test.h,可以在底行模式下输入vs test.h(就算没有test.h也可以进行编写,写完保存后,vim会自动帮我们创建该文件)。

之后就是这个效果,左边是test.h,右边是test.c。

也可以多文件进行分屏,但光标只有一个。要实现光标在文件之间的来回切换需要CTRL按住同时敲两下w,就可以将光标切换到另一个文件中。并且文件之间也支持拷贝剪切等操作!

5.快速退出vim

补充命令:如果我们想快速退出vim,可以在命令模式下按住shift不动并敲两下z。就相当于两个大写的z。就直接保存并退出了。

6.批量化注释和批量化去注释

6.1加注释

在命令模式下敲ctrl v进入视图模式,然后h j k l等移动光标选择区域,接着shift i=I进入插入模式,输入//后按ESC即可!

这是进入视图模式。

移动光标选择区域。

进入插入模式。

输入//。

接着ESC后完成!

6.2去注释

在命令模式下敲ctrl v进入视图模式,然后h j k l等移动光标选择区域,选中后直接敲d就可以去注释。

7.vim的配置

在我们使用vim编写代码时你会觉得很麻烦,因为缩进,括号等等都需要敲两次,而且鼠标也不能用,还没有行号。你会觉得很不习惯。所以我们需要配置vim来使它变得更加方便我们使用!

7.1vim配置的原理

什么是vim呢?

vim,说白了就是一个可执行程序,就像我们windows下的一个应用程序一样。但是在vim运行时,它需要读取一些隐藏的配置文件。其中最典型的就是.vimrc。

当我们的文件夹中没有该文件时,我们可以创建一个这样的文件。

创建好后就可以在里面写一些配置的选项。

例如在里面写一个set nu。写好后,下一次我们用vim编辑其他文件时,vim会自动读取改文件中的选项并运行。

如上图,配置好后,用vim打开test.c后,左边的行号就会自动显示出来!

这就是vim的配置原理!

7.2配置vim

vim的配置选项有很多,比如说自动缩进,可以识别鼠标操作等等。反正目的就是让vim变得非常方便,十分利于我们写代码,符合我们的习惯等等。

当然,我这里有一键配置:

curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh

前提是:

1.必须以普通用户执行该命令。执行后需要输入root用户的密码。

2.平台必须是CentOS.7

才可以执行这个命令,否则可能会有一些小问题。

这是安装成功后的结果。

这就是配置完成之后的效果!

当然,如果你的机器不是CentOS.7的话可以在网上搜以下vim的配置选项,进行自己的个性化配置!

8.结语

OK!那么关于vim的操作与配置就全部介绍完啦!下一篇文章我将专门跟大家讲解一下指令提权!内容不多,欢迎宝子们赏光!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/674450.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10个常考的前端手写题,你全都会吗?(上)

前言 📫 大家好,我是南木元元,热爱技术和分享,欢迎大家交流,一起学习进步! 🍅 个人主页:南木元元 今天来分享一下10个常见的JavaScript手写功能。 目录 1.实现new 2.call、apply、…

[office] excel表格怎么绘制股票的CCI指标- #媒体#学习方法#笔记

excel表格怎么绘制股票的CCI指标? excel表格怎么绘制股票的CCI指标?excel表格中想要绘制一个股票cci指标,该怎么绘制呢?下面我们就来看看详细的教程,需要的朋友可以参考下 CCI指标是一种在股票,贵金属,货…

《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第6章 逻辑斯谛回归与最大熵模型(2)6.2 最大熵模型

文章目录 6.2 最大熵模型6.2.1 最大熵原理6.2.3 最大熵模型的学习6.2.4 极大似然估计 《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第3章 k邻近邻法 《统计学习方法:李航》笔记 从原理到实现(基于python&am…

Mysql报错:too many connections

1 问题原因 MySQL报错“too many connections”通常是由于数据库的最大连接数超过了MySQL配置的最大限制。有以下几个原因: (1)访问量过高:当MySQL服务器面对大量的并发请求时,已经建立的连接数可能会不足以处理所有的请求,从而导致连接池耗尽、连接被拒绝、出现“too …

VMware17上安装centos7.9成功后,进入linux命令行以后,运行没几分钟直接卡死,或者说非常卡

VMware17上安装centos7.9成功后,进入linux命令行以后,运行没几分钟直接卡死,或者说非常卡 解决方案:关闭windows的Hyper-V服务,重启虚拟机

Biu懂AI:Object Detection训练数据的Label格式

Bui~ 新系列博文将专注AI相关领域,想要学习高通蓝牙相关知识请查看之前的系列或关注大博主声波电波就看今朝 在CV(computer vision)中,Object detection是其中的一个核心任务,它可以在输入图像或视频中识别并框出目标。…

Rust 初体验2

变量类型 Rust 语言的变量数据类型,主要包括整型、浮点型、字符、布尔型、元组、数组、字符串、枚举、结构体和可变变量等。 fn main() { // 整型 let integer: i32 100; println!("整型: {}", integer); // 浮点型 let floating_point: f64 3.1…

15.2 Linux入门(❤❤❤❤)

15.2 Linux入门 1. Linux基础1.1 基础概念1. 操作系统2. Linux操作系统3. CentOS操作系统1.2 CentOS安装配置1. 运行要求2. 虚拟机与CentOS安装1.3 Linux目录结构1.4 Linux远程管理配置2. Linux高级操作2.1 命令:vim文本编辑器(❤❤)2.2 命令:常用文本工具(❤❤)1. echo命令<

【网页设计期末】茶文化网站

本文资源&#xff1a;https://download.csdn.net/download/weixin_47040861/88818886 1.题目要求 设计要求&#xff1a; &#xff08;1&#xff09;网站页面数量不少于4个&#xff0c;文件命名规范&#xff0c;网站结构要求层次清楚&#xff0c;目录结构清晰&#xff0c;代码…

使用ORM模型操作MySQL数据库:Python爬虫数据持久化实践

源码分享 https://docs.qq.com/sheet/DUHNQdlRUVUp5Vll2?tabBB08J2 在Python爬虫开发中&#xff0c;数据持久化是一个重要的步骤。通常&#xff0c;我们会将爬取的数据保存到数据库中。本篇博客将介绍如何使用对象关系映射&#xff08;ORM&#xff09;模型在Python中操作MySQ…

Redis的数据类型与示例演示

目录 一、KEY操作 1.1 相关命令 说明&#xff1a; 1.2示例演示 二、String类型 2.1 结构图 2.2 示例演示 三、List类型 3.1 结构图 3.2 相关命令 3.3 示例演示 四、SET类型 4.1 结构图 4.2 相关命令 4.3 示例演示 五、ZSET类型 5.1 结构图 5.2 相关命令 六、…

NumPy基础之花式索引

1 NumPy基础之花式索引 NumPy的花式索引(Fancy indexing)指ndarray数组使用整数数组进行索引。这的整数数组可以是python的列表等可迭代对象&#xff0c;也可以是NumPy数组。 花式索引&#xff0c;用整数数组的元素作为对应轴的索引&#xff0c;并且按数组元素顺序选取子集。…

负载均衡SLB

1. 什么是阿里云上的负载均衡SLB&#xff1f;它的主要功能是什么&#xff1f; 阿里云上的负载均衡SLB是一种流量分发服务&#xff0c;它的主要功能是扩展应用系统的吞吐能力和提升系统可用性。 负载均衡SLB&#xff08;Server Load Balancer&#xff09;在阿里云中是一个核心…

useEffect的4种使用情况

useeffect的用法是&#xff1a;useEffect就是指定一个副效应函数&#xff0c;组件每渲染一次&#xff0c;该函数就自动执行一次。组件首次在网页 DOM 加载后&#xff0c;副效应函数也会执行。 useEffect使用时有以下4种情况 1、不传递 useEffect不传递第二个参数会导致每次渲染…

【Spring连载】使用Spring Data访问Redis(十一)----Redis事务 Transactions

【Spring连载】使用Spring Data访问Redis&#xff08;十一&#xff09;----Redis事务 Transactions Transactional 支持 Redis通过multi, exec 和 discard命令为事务提供支持。RedisTemplate上提供了这些操作。但是&#xff0c;RedisTemplate不能保证使用相同的连接运行事务中的…

C#上位机与三菱PLC的通信02--MC协议介绍

1、协议介绍 三菱 PLC MC 协议是一种用于三菱 PLC 与上位机之间进行数据通信的协议&#xff0c;也称为 Mitsubishi Communication Protocol。该协议支持串口、以太网等多种通讯方式&#xff0c;可实现实时数据的采集和交换。三菱PLC的MC协议是一种数据通信协议&#xff0c;它用…

Bootstrap5 响应式导航栏

Bootstrap5 响应式导航栏 我们可以使用 Bootstrap5 导航栏组件为网站或应用程序创建响应式导航标题。 这些响应式导航栏在手机等小视口的设备上会折叠&#xff0c;但当用户单击切换按钮时会展开。 但是&#xff0c;它在中型和大型设备&#xff08;例如笔记本电脑或台式机&#…

考研数据结构笔记(4)

链表&#xff08;链式存储&#xff09; 单链表定义基本操作的实现单链表的插入按位序插入指定节点的前插指定节点的后插 单链表的删除 小结 单链表 定义 顺序表优点:可随机存取&#xff0c;存储密度高&#xff0c;缺点:要求大片连续空间&#xff0c;改变容量不方便。 单链表优…

中科星图——如何利用中科星图智脑引擎来下载0.5米分辨率的高清遥感影像

简介 如何利用中科星图智脑引擎来下载0.5米分辨率的高清遥感影像,这里我们一旦您有GEE的基础那么还是非常好的接入到这个平台当中的,所以这里我们依旧是使用的JavaScript语言来进行编程,地球计算器-地球编程 (geovisearth.com) 这里有一个好处是这里的函数我们可以直接悬浮…

1898_野火FreeRTOS教程阅读笔记_链表操作

1898_野火FreeRTOS教程阅读笔记_链表操作 全部学习汇总&#xff1a; g_FreeRTOS: FreeRTOS学习笔记 (gitee.com) 新的节点的插入&#xff0c;影响到的是链表中最后一个元素的后继以及当前被插入元素的前驱、后继以及归属属性。具体的操作效果为&#xff1a;新的节点更新自己的前…