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

Linux初始——Vim

Vim

  • 前言
  • 初始Vim的各种模式
  • 正常模式详解
  • 底行模式详解
  • vim的批量注释
  • vim的总结

前言

在学习Vim之前,要先知道一些基本的概念,例如IDE是什么,编辑器,编译器是什么?
IDE是集成开发环境,所谓集成就是将多种功能集中在一款软件上,例如微软的visual stdio系列,这系列的软件是集成了编辑代码,编译代码,调试代码等功能的。而像vscode工具,在严格意义上讲,他也只是一款编辑器,是加了各种插件才具备编译调试的功能。
而Vim是一款具备多种模式的编辑器,即Vim只能进行代码编辑,无法进行代码编译运行的。

初始Vim的各种模式

我们在输入vim test.c时,如果没有test.c文件,那么vim会自动在该目录下创建test.c文件并打开,在经过配置后的vim打开如图:在这里插入图片描述
左下角表明为正常模式,此时是没办法进行输入代码的,此时我们输入i之后就进入了插入模式
在这里插入图片描述
此时就可以进行输入代码了。
在代码编辑完毕想要保存并退出的时候,就先按Esc退出到正常模式,在按:,进入到底行模式
在这里插入图片描述
再输入wq,表明保存并退出,如果只是q就只会保存不会退出。

正常模式详解

• 按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入
文件;
• 按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
• 按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
• 从插入模式切换为命令模式,按「ESC」键。
• 移动光标
• vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格
• 按「 $ 」:移动到光标所在行的“行尾”
• 按「^」:移动到光标所在行的“行首”
• 按「w」:光标跳到下个字的开头
• 按「e」:光标跳到下个字的字尾
• 按「b」:光标回到上个字的开头
• 按「#l」:光标移到该行的第#个位置,如:5l,56l
• 按[gg]:进入到文本开始
• 按[shift+g]:进入文本末端
• 按「ctrl」+「b」:屏幕往“后”移动一页
• 按「ctrl」+「f」:屏幕往“前”移动一页
• 按「ctrl」+「u」:屏幕往“后”移动半页
• 按「ctrl」+「d」:屏幕往“前”移动半页
• 删除文字
• 「x」:每按一次,删除光标所在位置的一个字符
• 「#x」:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符
• 「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符
• 「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符
• 「dd」:删除光标所在行
• 「#dd」:从光标所在行开始删除#行
• 复制
• 「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
• 「#yw」:复制#个字到缓冲区
• 「yy」:复制光标所在行到缓冲区。
• 「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。
• 「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
• 替换
• 「r」:替换光标所在处的字符。
• 「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
• 撤销上一次操作
• 「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行
多次回复。
• 「ctrl + r」: 撤销的恢复
• 更改
• 「cw」:更改光标所在处的字到字尾处
• 「c#w」:例如,「c3w」表示更改3个字
• 跳至指定的行
• 「ctrl」+「g」列出光标所在行的行号。
• 「#G」:例如,「15G」,表示移动光标至文章的第15行 首。

底行模式详解

• 列出行号
• 「set nu」: 输入「set nu」后,会在文件中的每一行前面列出行号。
• 跳到文件中的某一行
• 「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。
• 查找字符
• 「/关键字」: 先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。
• 「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。
/ 和 ?查找有和区别?/从光标位置向下搜索,?向上,例如在搜索之后,再按n,/会跳到下一个位置,而?会跳到上一个位置
• 保存文件
• 「w」: 在冒号输入字母「w」就可以将文件保存起来
• 离开vim
• 「q」:按「q」就是退出,如果无法离开vim,可以在「q」后跟一个「!」强制离开vim。
• 「wq」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

vim的批量注释

在正常模式的前提下,按[ctrl + v]进入视图模式,用hjkl进行选择,之后按住shift + i,输入//再按ESC即可

vim的总结

vim一共有12种模式,常用的就上述三种,虽然命令很多,但熟则生巧,不必刻意记忆。

http://www.dtcms.com/a/361005.html

相关文章:

  • 前端静态资源缓存与部署实践总结
  • 云手机为什么会受到广泛关注?
  • 【算法基础】链表
  • (Arxiv-2025)VACE:一体化视频创作与编辑
  • uniApp App 嵌入 H5 全流程:通信与跳转细节拆解
  • 【菜狗学聚类】聚类的一些评估指标——20250901
  • 交互体验升级:Three.js在设备孪生体中的实时数据响应方案
  • 飞牛nas修改crontab计划默认编辑器
  • RPA背后的核心技术有哪些?
  • 【论文阅读】Sparse4D v3:Advancing End-to-End 3D Detection and Tracking
  • 基于Hadoop与层次聚类技术的电子游戏销售分析系统的设计与实现
  • wpf之WrapPanel
  • 了解软件测试之软件测试技能
  • 第六章:健壮Go应用:工程实践与生产就绪之测试
  • Spring Bean生命周期的完全指南
  • 警告:OPENCV_FFMPEG_READ_ATTEMPTS (current value is 4096)
  • Altium Designer中的Net-Tie:解决多网络合并与电气隔离的利器
  • Spring中bean的作用域
  • [Godot] C#使用Json进行数据结构的保存与加载
  • QT中的TCP
  • 摄像头模块的电子集成设计
  • 开发使用mybatis是用混合模式还是全注解模式
  • pprint:美观打印数据结构
  • Spring Boot 和 Spring Cloud 的原理和区别
  • Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
  • 单例模式
  • Day19_【机器学习—线性回归 (3)—回归模型评估方法】
  • 网站模板源代码 静态网页网站模板
  • VBA数据库解决方案第二十二讲:根据工作表数据生成数据库中数据表
  • 零售行业的 AI 革命:从用户画像到智能供应链,如何让 “精准营销” 不再是口号?