Linux开发工具之vim

news2024/11/23 5:01:26

文章目录

  • 1.vim是啥?
    • 1.1问问度娘
    • 1.2自己总结
  • 2.vim的初步了解
    • 2.1进入和退出
    • 2.2vim的模式
      • 1.介绍
      • 2.使用
  • 3.vim的配置
    • 3.1自己配置
    • 3.2下载插件
    • 3.3安装大佬配置好的文件
  • 4.程序的翻译

1.vim是啥?

在这里插入图片描述

1.1问问度娘

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2自己总结

vi/vim都是多模式编辑器,vim是vi的升级版本,不仅兼容vi的所有指令,而且还有一些新的特性: 语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、windows

2.vim的初步了解

vim: 文本编辑器 只负责写代码 不负责编译运行 是一款多模式的编辑器

2.1进入和退出

进入: vim
退出: shift: q
进入文件: vim code.c

2.2vim的模式

在这里插入图片描述
vim wq: 也可以创建文件

1.介绍

命令模式(command mode)、插入模式(Insert mode)、 底行模式(last line mode)

正常/普通/命令模式(Normal mode)[vim的默认打开模式]

  1. 控制屏幕光标的移动
  2. 字符/字/行的删除
  3. 移动复制某区段
  4. 进入Insert mode/last line mode

命令模式的基础常用指令

「yw」:将光标所在之处到字尾的字符复制到缓冲区中
yy: 复制当前光标所在行 5yy: 从当前行复制5行 [windows: ctrlc]
dd: 剪切当前光标所在行 ndd [ctrlx]
p: 粘贴 10p: 粘贴10次复制的内容 [ctrlv]
u: 撤销历史操作 [ctrlz]
ctrl+r: 恢复撤销 [ctrly]
shift~: 大小写转换
x/shift x: 删除光标所指向字符 nx: 删除n个
shift r: 覆盖式替换[进入替换模式]
只按r后输入一个字符: 对光标所指向字符用输入的字符进行覆盖式替换 nr: 替换n个字符

/text: 正向查找text值
?text: 反向查找text值
/\ctext:大小写不敏感查找text

光标上下移动

shiftg: 光标定位到文件尾
gg:光标定位到文件首
数字+ shiftg :光标定位到特定行

光标左右移动

shift^: 光标定位到行首
shift$: 光标定位到行尾
w: 光标跳到下个字的开头 以单词为单位 向后移动 5w向后移动五个单词
e: 光标跳到下个字的字尾
b: 光标回到上个字的开头 以单词为单位 向前移动 5b同上

按「ctrl」+「b」:屏幕往“后”移动一页
按「ctrl」+「f」:屏幕往“前”移动一页
按「ctrl」+「u」:屏幕往“后”移动半页
按「ctrl」+「d」:屏幕往“前”移动半页

[键盘上的箭头也可以移动不太便捷]

hjkl: 左下上右

  1. 老式键盘无箭头
  2. hjkl效率更高
  3. 后续注释等回使用
  4. 建议使用

插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。

底行模式(last line mode)

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

显示/隐藏行号

set nu/set nonu

分屏操作

在这里插入图片描述
进入code.c文件后在底行模式vs test.c 可以进行分屏操作
ctrl WW: 光标跳转至另一个屏

基础指令

w: 保存 w! : 强制保存
q:退出 q!: 强制退出
! cmd: 不退出vim 执行指令(命令行/编译/运行/查阅手册)
: text 跳到text行

2.使用

输入: i/a/o------>编辑/插入模式
按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

左下角状态变为在这里插入图片描述可以进行编写代码

输入esc

退出当前模式/返回上个模式

输入: shift:

底行模式

输入esc

退出当前模式/返回上个模式

注意: 无法从插入模式直接到底行模式  无法从底行模式直接到插入模式

3.vim的配置

3.1自己配置

首先在自己的工作路径下创建一个 .vimrc 文件 然后复制粘贴想要的配置

vim配置即.vimrc文件的配置及vim操作技巧

3.2下载插件

首先在自己的工作路径下创建一个 .vim 文件 然后按照指示下载

10款好用到爆的Vim插件,你知道几个?

3.3安装大佬配置好的文件

vim配置

4.程序的翻译

在这里插入图片描述

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

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

相关文章

linux安装kafka教程

kafka需要安装jdk,我的是jdk17 一、安装kafka 1、下载kafka 1.到kafka的官网,去下载想用的kafka包:http://kafka.apache.org/downloads 2.我这里下载的是:kafka_2.12-3.4.1.tgz 3.将安装包传送到服务器并解压(默认…

json数据格式的理解(前+后)

什么是JSON: JSON(JavaScript Object Notation)是一种广泛使用的数据交换格式,它在前端和后端开发中都扮演着重要的角色。 JSON 的结构: JSON 数据由大括号 {} 包围,表示对象。 对象中的数据以键值对形式…

leetcode:203. 移除链表元素(有哨兵位的单链表和无哨兵位的单链表)

一、题目 函数原型: struct ListNode* removeElements(struct ListNode* head, int val) 二、思路 本题有两种思路: 思路1 遍历单链表,如果遇到值为val的结点,则将该结点删除。 注意:当删除结点时,如果出现…

《持续交付:发布可靠软件的系统方法》- 读书笔记(十二)

持续交付:发布可靠软件的系统方法(十二) 第 12 章 数据管理12.1 引言12.2 数据库脚本化12.3 增量式修改12.3.1 对数据库进行版本控制12.3.2 联合环境中的变更管理 12.4 数据库回滚和无停机发布12.4.1 保留数据的回滚12.4.2 将应用程序部署与数…

数字孪生与电力行业的完美融合

电力行业一直是现代社会不可或缺的一部分,而数字孪生技术正逐渐改变这一传统行业的面貌。数字孪生电力解决方案通过将物理世界与数字世界相结合,为电力行业带来了前所未有的机会和挑战。本文为大家介绍山海鲸电力行业系列解决方案,带大家了解…

Android修行手册-实现利用POI将图片插入到Excel中(文末送书)

点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册点击跳转>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分享&…

MySQL的默认引擎为什么是InnoDB

MySQL支持InnoDB、MyISAM、MEMORY、CSV等多个存储引擎,那为什么选InnoDB作为默认引擎呢? 主要原因有几点: 事务 事务主要用于保持数据一致性,是一组操作的集合,要么全部成功,要么全部失败。InnoDB引擎提供…

STM32笔记—EXTI外部中断

一、简介 中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行; 中断优先级&…

自制编程语言基于c语言实验记录之五:虚拟机

1.创建类与堆栈框架 1 )对象调用实例方法,也就是向一个对象发送消息 时,运行时系统会在对象所属类的方法集合中查找方法。 2 )类调用类方法,也就是向一个类发送消息时,运行时系统会在类的 meta-class 的 方…

Sysmon 日志监控

系统监视器 (Sysmon) 是一个 Windows 日志记录加载项,它提供精细的日志记录功能并捕获默认情况下通常不记录的安全事件。它提供有关进程创建、网络连接、文件系统更改等的信息。分析 Sysmon 日志对于发现恶意活动和安全威胁至关重要。 在不断…

浅谈智能变电站自动化系统的应用与产品选型

安科瑞电气股份有限公司 上海嘉定 201801 摘要:现如今,智能变电站发展已经成为了电力系统发展过程中的内容,如何提高智能变电站的运行效率也成为电力系统发展的一个重要目标,为了能够更好地促进电力系统安全稳定运行,…

单片机程序无法下载?

原因一:电源问题 电源可能是导致STM32微控制器无法下载程序的一个常见原因。确保电源稳定对于正常运行和下载程序至关重要。以下是一些电源问题: 1. 电源电压不足:如果STM32微控制器没有足够的电压供应,它可能无法正常工作或下载程…

【AICFD案例教程】电子机箱风冷散热分析

AICFD是由天洑软件自主研发的通用智能热流体仿真软件,用于高效解决能源动力、船舶海洋、电子设备和车辆运载等领域复杂的流动和传热问题。软件涵盖了从建模、仿真到结果处理完整仿真分析流程,帮助工业企业建立设计、仿真和优化相结合的一体化流程&#x…

关于脑机接口实现的思考——再谈埃隆马斯克的脑机接口新动态

今天看到了埃隆马斯克的Neuralink的新动态,要招募志愿者进行试验,因此基于此前的文章,这里做一个新的探讨,第一篇文章在下面的链接,大家可以先过去看一下: 关于脑机接口该如何实现的考虑 埃隆马斯克的Neura…

评估APP网页小程序代码UI开发H5估价师怎么评估开发精确研发价格?

作为一名应用程序开发评估师,可能涉及到的主要任务是为特定的应用程序提供估算开发成本和所需时间预测。为了为一个应用程序更准确地评估价格,须遵循以下几个步骤: 问: 如何让一个App更好、更精确地评估出价格? 答: 以下是一个可…

MOSFET和IGBT栅极驱动器TLP250H(D4-TP1,F)电路的基本原理

TLP250H,TLP250H(D4-TP1,F)是SOP8封装中的光电耦合器,由GaA组成ℓ作为红外发光二极管(LED)光学耦合到集成的高增益、高速光电探测器IC芯片。它在高达125℃的温度下提供有保证的性能和规格. TLP250H具有内部法拉第屏蔽,…

浏览器插件实现国税网自动登录,以及解决浏览器记住密码会自动填充表单无法修改的问题

公司的做账系统,用户在系统里设置保存了国税网的账号密码以后,下次点击进入国税网,能够直接进入国税系统。 之前的解决方案是pupptteer模拟登录一遍拿到cookie等登录凭证后,保存到数据库,然后插件请求接口拿到cookie&…

柴油发电机负载测试的方法

柴油发电机负载测试是检查发电机组性能的重要环节,通过模拟实际工作负载,检测发电机组在不同负载下的运行情况,以确保其安全可靠地为用电设备提供电力。以下是柴油发电机负载测试的方法: 1. 准备工作:在进行负载测试之…

黔院长 | 黄帝内经:脏气法时论!

自然界有四季,四季更替影响万物的轮回。人体脏腑功能和气机运行与时间变化也有显著的影响。古人结合五脏之气,取四时五行的生克规律作为救治疾病的法则,对至今中医养生有重要参考作用! 五行,即木、火、土、金、水&…

C#Web文件上传的几种方式

1.第一种上传方式,基本通用于.net所有的框架 [HttpPost][Route("Common/uploadFile1")]public string uploads(){HttpContextBase context (HttpContextBase)Request.Properties["MS_HttpContext"];//获取传统contextHttpRequestBase request context.Re…