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

快速上手Vim的使用

Vim

  • Linux编辑器-vim使用
  • ==命令行模式下所有选项都可以带数字==
  • ==底行模式==
  • ==可视块模式(ctrl+V进入)==

Linux编辑器-vim使用

Vim有多种模式的编辑器。能帮助我们很快的进行代码的编辑,甚至完成很多其他事情。

在这里插入图片描述

默认情况下我们打开vim在命令模式下,我们切换到其他模式都是通过命令模式去按相应的快捷键,进入到其他的如插入模式(aio),底行模式,可视化模块模式。如果我们在底行模式想进入到插入模式,我们必须要需要按Esc退到命命令模式,再从命令模式进入到插入模式。因此我们在使用的时候要记住,我们要切换模式的时候,首先要退出到命令行模式

命令行模式下所有选项都可以带数字

按「G」:移动到文章的最后
按「 $ 」:移动到光标所在行的“行尾”
按「^」:移动到光标所在行的“行首”
按「w」:光标跳到下个字的开头
按「e」:光标跳到下个字的字尾
按「b」:光标回到上个字的开头
按[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行行首。

「Shift+~」:大小写替换

shiftI+#定位当前单词高亮显示,按n跳转到下一个单词处

多用Vim编辑下代码就记住这些快捷键了

底行模式

在底行模式当中我们可以进行这个文件的保存,比如说我们用这个shift+:进入底行模式。然后我们写wq就可以保存并退出,然后的话就是保存q就是单纯的退出,然后!+命令可以在vim中执行命令!./a.out

一键替换
:%s/printf/count/ 将printf全部替换成cout
:%s/printf/cout<</ 将cout前部替换成printf
打开多个文件进行分屏
:vs test.c(打开test.c并进行分屏)
跳转到不同文件中
ctrl+ww

其他一些快捷操作
vim code.c +14 打开文件光标直接定位到14行

可视块模式(ctrl+V进入)

进行批量化注释,
Vim当中上下移动光标最好使用HJKL(左上下右,尽管也可以通过键盘上的箭头移动但在可视块模式下只能通过HJKL移动)
进入命令模式(按 Esc 键)。
选择要注释的行(可以使用 V 进入可视行模式,然后使用 j 或 k 键选择多行)。
在命令模式下输入 I#(I 进入插入模式并在每行行首插入文本,# 是注释符号),然后按 Esc 键退出插入模式。


http://www.kler.cn/a/539821.html

相关文章:

  • 指定路径安装Ollama
  • 心脏滴血漏洞复现(CVE-2014-0160)
  • 使用PyCharm进行Django项目开发环境搭建
  • 【后端开发】系统设计101——Devops,Git与CICD,云服务与云原生,Linux,安全性,案例研究(30张图详解)
  • MySQL下载过程
  • Docker 部署 RabbitMQ | 自带延时队列
  • U3D支持webgpu阅读
  • DevOps的个人学习
  • matplotlib绘制三维曲面图时遇到的问题及解决方法
  • Ubuntu 20.04配置网络
  • 【东莞常平】戴尔R710服务器不开机维修分享
  • 数据库基础练习4(有关索引,视图完整解答)
  • 25/2/8 <机器人基础> 轨迹控制基本知识点,传动系统
  • 基于生成式语言模型岗位的就业指导
  • 云原生微服务
  • 深入解析 Sojson.v7 混淆加密技术(对比 Sojson.v6)
  • 免费PDF 转换成 Word、PPT、Excel 格式的工具
  • 蓝桥杯K倍区间(前缀和与差分,取模化简)
  • Ollama + AnythingLLM + Deepseek r1 实现本地知识库
  • iOS主要知识点梳理回顾-2-多线程
  • docker常用命令及案例
  • 【R语言】相关系数
  • Ubuntu禁止内核自动更新
  • 【Java八股】JVM
  • 为什么推荐使用 LabVIEW 开发
  • 日志2025.2.9