Linux--vim

news2024/10/5 15:26:18

文章目录

  • Vim的介绍
  • Vim的几种模式
  • 命令模式下的基本操作
  • 批量化注释
  • Vim的简单配置
    • 使用插件

Vim的介绍

Vim是一个强大的文本编辑器,是从vi编辑器发展而来的,在vi编辑器的基础上进行了改进和拓展,具有强大的特性和功能。
Vim是一个自由开源软件,可在多个系统上运行,包括Windows、MacOS、Linux发行版;适用于各种编程和系统管理任务。

Linux通常都默认安装好了Vim文本编辑器,我们只需要通过Vim指令就可以直接打开Vim编辑器了;
执行命令

vim [文件名]

我们将通过test.c文件来进行演示讲解:
在这里插入图片描述

进去效果:在这里插入图片描述

Vim的几种模式

Vim是有操作模式的,在各个模式下,可以利用键盘做出不同的操作;
这里将讲解vim的几种常用的模式;

命令模式(Command mode):在我们打开Vim时,默认处于命令模式。在这个模式下,你可以执行各种命令,例如搜索、复制、粘贴、删除、移动光标等。

插入模式(Insert mode):在命令模式下,按下i、a、o其中一个字符,就可以进入插入模式,在当前光标位置开始输入文本。这时既可以像在常规文本编辑器中一样输入和编辑文本。

可视模式(Visual mode):在命令模式下,按下v进入可视模式。在可视模式中,可以使用移动命令选中一定范围的文本,并对其进行文本操作,例如复制、替换、删除等。

命令行模式(Command-line mode):在命令模式下,按下冒号(:)键后,进入命令行模式。在这个模式中,可以输入各种命令,例如保存文件、退出Vim等。完成命令输入后,按下回车执行该命令。

命令模式下的基本操作

我们先进入插入模式输入一些基本文本;
在这里插入图片描述
在除了命令模式的其他模式下,都可以通过esc返回到命令模式

移动光标

操作指令作用
shift+4光标定位在当前行的最右侧结尾处
shift+6光标定位在当前行的最左侧结尾处
shift+g光标定位到文本的最结尾
gg光标定位到文本的最开始
h向左移动光标
j向下移动光标
k向上移动光标
l向右移动光标
w按照单词向后移动,行尾会自动换行
b按照单词向后移动, 行尾会自动换行

插入文本

操作指令作用
i在光标前插入文本
a在光标后插入文本
o在当前行下方插入新行并进入插入模式
O在当前行上方插入新行并进入插入模式

删除、复制、粘贴

操作指令作用
n+yy从当前光标位置,向下复制n行(包括光标位置的行),没有输入n默认复制光标位置行
n+p在下一行开始粘贴,n表示粘贴次数,没有n表示粘贴一次
n+x删除光标所在字符(向右方向),n表示n个字符
n+X删除光标所在字符(向左方向),n表示n个字符
n+dd剪切行,从光标位置(包括光标位置行),n表示行数

替换

操作指令作用
~大小写快速切换
n+r输入任意字符可替换当前光标所在字符
R进入替换模式

高亮、撤销和重做

操作指令作用
#高亮查找,可高亮相同的单词
n对高亮的进行查找
u撤回上一步操作
ctrl+r对撤销操作进行撤回

保存和退出

操作指令作用
:w保存文件
:q退出编辑器
:wq保存并退出
:q!强制退出,丢弃修改

复制粘贴操作:

复制多行后粘贴
在这里插入图片描述

复制一行粘贴3次
在这里插入图片描述

删除多行:
在这里插入图片描述

保存和退出:
一般我们最常用的操作就是:wq,最后回车键确定;
-blog.csdnimg.cn/673e65e027f84f3d837d195fb6bd0fd0.png)

!感叹号是强制的意思,搭配w或q进行使用;
如果我们在编辑文本时,没有保存就退出时:
在这里插入图片描述

批量化注释

如果我们想批量化注释,可以按以下操作进行:
在这里插入图片描述
批量化去注释
在这里插入图片描述

Vim的简单配置

在目录/etc/下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户均有效。
在这里插入图片描述
如果以上的退出操作都没用,可以使用shift+zz的操作,进行保存并退出vim。

在用户目录下,我们可以自己创建一个.vimrc文件,来进行配置:
在这里插入图片描述

使用插件

在这里,要配置好看的界面和齐全的功能,需要安装插件来完善配置;
这里我们将使用别人配置好的文件进行安装;
VimforCpp链接入口
在该页面滑下去,按照指示步骤进行;
在这里插入图片描述
在这里插入图片描述
这样就可以像其他编辑器一样正常使用了。

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

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

相关文章

CSS特效002:花样的鼠标悬停效果

GPT能够很好的应用到我们的代码开发中,能够提高开发速度。你可以利用其代码,做出一定的更改,然后实现效能。 css实战中,鼠标的悬停有各种各样的效果,下面的这个示例集中了填充、脉搏抖动,关闭,…

Qt插件开发_入门教程

文章目录 前言插件的好处具体流程1. 第一,我们先创建一个主框架应用(**第一个工程**)2. GUI 设计 ![在这里插入图片描述](https://img-blog.csdnimg.cn/f215270ccfac4e038e7261c4b4891ec1.png)3. 创建动态库项目(**第2个工程**)4. 给插件项目添加qt界面类5.在插件工程添加一个头…

矩阵乘积的迹对矩阵求导

矩阵A、B乘积的迹对矩阵A求导 下面来证明。

从研发域到量产域的自动驾驶工具链探索与实践

导读 本文整理自 2023 年 9 月 5 日百度云智大会 - 智能汽车分论坛,百度智能云自动驾驶云研发高级经理徐鹏的主题演讲《从研发域到量产域的自动驾驶工具链探索与实践》。 全文中部段落附有演讲中 2 个产品演示视频的完整版,精彩不容错过。 (视频观看&…

原文远知行COO张力加盟逐际动力 自动驾驶进入视觉时代?

11月7日,通用足式机器人公司逐际动力LimX Dynamics官宣了两位核心成员的加入。原文远知行COO张力出任逐际动力联合创始人兼COO,香港大学长聘副教授潘佳博士为逐际动力首席科学家。 根据介绍,两位核心成员的加入,证明一家以技术驱…

SAP-MM-查找采购订单的创建和修改日期

在采购订单页面可以查看采购订单的修改和创建,但是有些内容不能完成看到 例如这个订单显示是用户唐创建,但是他不记得是什么时候创建的,怎么创建的? 点击菜单-环境-表头更改、项目更改,可以查看更改内容 通过这个表可…

【解密ChatGPT】:从过去到未来,揭示其发展与变革

🎊专栏【ChatGPT】 🌺每日一句:天行健,君子以自强不息,地势坤,君子以厚德载物 ⭐欢迎并且感谢大家指出我的问题 文章目录 一、ChatGPT的发展历程 二、ChatGPT的技术原理 三、ChatGPT的应用场景 四、ChatGPT的未来趋势 五、总结 引言:随着…

kubernetes集群编排——k8s存储(configmap,secrets)

configmap 字面值创建 kubectl create configmap my-config --from-literalkey1config1 --from-literalkey2config2kubectl get cmkubectl describe cm my-config 通过文件创建 kubectl create configmap my-config-2 --from-file/etc/resolv.confkubectl describe cm my-confi…

ROS学习笔记(5):ros_control

1.ros_control简介 ros_control - ROS Wiki ros_control是为ROS提供的机器人控制包,包含一系列控制器接口、传动装置接口、控制器工具箱等,有效帮助机器人应用功能包快速落地,提高开发效率。 2.ros_control框架 ros_control总体框架: 针对…

vue使用websocket与springboot通信

WebSocket是HTML5下一种新的协议,它实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽并达到实时通讯的目的 在很多项目中,都要用到websocket,使得前端页面与后端页进行实时通信,例如,实时查询…

SCI论文公式快捷获取

文章目录 前言IEEE论文公式获取Elsevier论文公式获取Springer的论文公式获取Wiley出版社公式获取SAGE出版社论文公式获取Taylor & Francis Group出版社论文公式获取latex源码转矢量公式 前言 相信许多做科研的同学对于文献公式如何提取很是抓狂,尤其是做PPT时&…

HCIP---企业网的三层架构

文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 一.园区网 概念: 园区网是指在园区内建立起来的互联网基础设施,包括网络设备、传输网络、网络管理系统等,其目的是为了方便企业和园区管理方在园区内进…

论文浅尝 | 基于对多条思维链的元推理实现智能问答

笔记整理:屠铭尘,浙江大学硕士,研究方向为知识图谱 链接:https://arxiv.org/abs/2304.13007 1. 动机 1.1 Chain of Thought的诞生 尽管大语言模型在许多自然语言处理任务上表现出色,但由于其本质是token by token的类似…

深度学习环境搭建入门环境搭建(pytorch版本)

从Python安装到深度学习环境搭建 1. Anaconda安装 python可以通过官网下载exe,这里提供的是使用anaconda创建多个虚拟 的python环境,使用Anaconda Prompt管理虚拟环境更方便。 官网地址:Free Download|Anaconda 下载到本地后双击此文…

Mall4cloud 微服务商城系统 2.0 发布

导读现在 jdk17 和 spring boot 以及 spring cloud alibaba 2022 的第三方依赖已经趋于成熟,所以 mall4cloud 也一把梭哈做了升级嗷。 本次更新重点: 系统由 jdk8 最低要求升级到 jdk17spring boot 由 2.7.x 升级到 3.1.xjavax 升级到 jakartaspring-cl…

Flink--简介

1、Apache Flink 是一个实时计算的框架和分布式处理引擎,用于在无边界喝有边界数据流上进行有状态的计算,并且能够在常见的集群上运行,并能以内存速度和任意规模进行计算。 有边界数据流:指的是有开始,也有结束&…

CCF ChinaSoft 2023 论坛巡礼 | NASAC青年软件创新奖论坛

2023年CCF中国软件大会(CCF ChinaSoft 2023)由CCF主办,CCF系统软件专委会、形式化方法专委会、软件工程专委会以及复旦大学联合承办,将于2023年12月1-3日在上海国际会议中心举行。 本次大会主题是“智能化软件创新推动数字经济与社…

gdal3.5.0升级及安装cmake

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 本文主要是将gdal旧版本v3.2.1升级到v3.5.0,解决升级过程中的问题。 一、…

智慧社区大屏:连接社区生活的数字桥梁

随着科技的不断发展,智慧社区已经不再只是未来的概念,它已经在我们的眼前悄然崭露头角。智慧社区是一种基于数字技术的社区管理和生活方式,旨在提高社区的安全性、便利性和生活质量。而在这个数字化的社区中,智慧社区大屏起到了连…

竞赛 深度学习疲劳检测 驾驶行为检测 - python opencv cnn

文章目录 0 前言1 课题背景2 相关技术2.1 Dlib人脸识别库2.2 疲劳检测算法2.3 YOLOV5算法 3 效果展示3.1 眨眼3.2 打哈欠3.3 使用手机检测3.4 抽烟检测3.5 喝水检测 4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习加…