vim模式用法总结
0.前言
我们用gcc编译文件的时候,如果发生了下面的错误,那么如何用vim打开的时候就定位到?

我们可以知道,这是第6行出现了错误;
所以我们使用vim打开的时候多输入个这个,我们就可以快速定位了
vim test.c +6
一、常用模式间转换按键
命令模式:vim打开的时候默认进入命令模式,控制屏幕光标的移动,字符、字或行的删除,移动复制某区段
插入模式:进行文本的输入
底行模式:文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。

二、命令模式快捷键
一定要切换成英文输入法
1. 移动操作
| 快捷键 | 作用 |
| ^(shift + 6) | 定位到当前行的最左侧 |
| $(shift + 4) | 定位到当前行的最右侧 |
| G(shift + g) | 定位到文本末行的开头 |
| gg | 定位到文本最开始 |
| n + G(shift + g) | 定位到第n行开头 |
| h j k l | 控制光标向左,下,上,右移动 |
| w | 跳跃到下一个字的开头 |
| b | 跳跃到上一个字的开头 |
| e | 跳跃到下一个字的结尾 |
| ctrl + b | 屏幕往后移动一页 |
| ctrl + f | 屏幕往前移动一页 |
2. 复制粘贴操作:
| n + yy | n = 1 复制当前行 n > 1 向下复制n行 |
| n + p | n = 1 在下一行粘贴由yy复制的文本 n > 1 在下一行粘贴n次由yy复制的文本 |
3 删除,剪切操作:
| n + dd | n = 1 删除当前行 n > 1 向下删除n行 |
| n + dd + p | 将删除的再复制出来,相当于剪切 |
| n + x(小写) | n = 1 删除光标所在的字符 n > 1 向右删除n个字符 |
| n + X(大写) | n = 1 删除光标前一个字符 n > 1 向左删除光标前n个字符 |
4 撤销操作:
| u | 撤销我们的编辑操作 |
| ctrl + r | 对u撤销 |
5 替换操作:
| n r + 字符 | n = 1 用你给的字符替换光标所在的字符 n > 1 用你给的字符替换光标后面n个字符 |
6 切换大小写
| ~(shift + `) | 切换大小写 |
三、底行模式快捷键
使用之前切换到命令模式,按冒号进入底行模式,输入结束默认回到命令模式,所以底行模式需要每次都加个冒号才可以切换。
1. 行号和跳转到num行
| 快捷键 | 作用 |
| :set nu | 显示行号 |
| :set nonu | 取消显示行号 |
| : num | 跳转到文本的num行 |
2. 查找字符
| :/ 内容 +n | 高亮内容,并且光标从头开始找,按一次n,找下一个 |
| :? 内容 +n | 高亮内容,并且光标从最后开始找,按一次n,找上一个 |
3. 保存和退出vim
| :q | 仅退出 |
| :q! | 强制退出 |
| :w | 仅保存 |
| :w! | 强制保存 |
| :wq | 保存并退出 |
| :wq! | 强制保存并退出 |
4. 在不退出vim下,进行命令行操作
| :! 命令 | 不退出vim,对Linux进行命令行操作 |
5. 对比不同的文件
| :vs file | 当前的文件与file文件对比 |
注意⚠️⚠️:
1. 若file不存在,系统会创建一个f名为file的文件名
但是我们不写file,退出时file销毁
当我们写入file,file存在
2. 在比较的时候,我们的底行是和光标所处一个文件的
3. 按住ctrl + w+w 切换光标所处的窗口
6. 查找vim的模式
:help vim-modes
四、视图模式快捷键
ctrl v进入视觉模式
视觉模式:用来批量化注释的
1. 批量化注释
步骤1:hjkl(或者键盘的上下左右键)进行注释部分的选择,可以控制鼠标一起
步骤2: I (shift + i),进入插入模式
步骤3: 在当前行输入 // (注释符号)
步骤4: esc(2次) 完成注释
2. 撤销注释
先进入视图模式 ctrl v
步骤1:hjkl(或者键盘的上下左右键)进行注释部分的选择,可以控制鼠标一起
步骤2: d
相关文章:
vim模式用法总结
0.前言 我们用gcc编译文件的时候,如果发生了下面的错误,那么如何用vim打开的时候就定位到? 我们可以知道,这是第6行出现了错误; 所以我们使用vim打开的时候多输入个这个,我们就可以快速定位了 vim test.c 6…...
基于深度学习的单帧图像超分辨率重建综述
论文标题:基于深度学习的单帧图像超分辨率重建综述作者: 吴 靖,叶晓晶,黄 峰,陈丽琼,王志锋,刘文犀发表日期:2022 年9 月阅读日期 :2023.11.18研究背景: 图像…...
开源与闭源:创新与安全的平衡
目录 一、开源和闭源的优劣势比较 一、开源软件的优劣势 优势 劣势 二、闭源软件的优劣势 优势 劣势 二、开源和闭源对大模型技术发展的影响 一、机器学习领域 二、自然语言处理领域 三、数据共享、算法创新与业务拓展的差异 三、开源与闭源的商业模式比较 一、盈…...
C# 22H2之后的windows版本使用SetDynamicTimeZoneInformation设置时区失败处理
使用SetDynamicTimeZoneInformation设置时区返回false,设置失败。 使用PowerShell设置Set-TimeZone成功。 /// <summary> /// 设置本地时区 /// 参数取值"China Standard Time",即可设置为中国时区 /// </summary> /// <param …...
分布式与微服务 —— 初始
前言 距今微服务的提出已经过去快十个春秋,网络上的博文讲微服务也是一抓一大把,但是荔枝仍然觉得还是有必要自己梳理一下整个知识体系。在这篇文章中,荔枝将会以一个初学者的角度来切入,从分布式系统和微服务架构引入,…...
多因素方差分析(Multi-way Analysis of Variance) R实现
1, data0507 flower 是某种植物在两个海拔和两个气温下的开花高度,采用合适 的统计方法,检验该种植物的开花高度在不同的海拔之间和不同的气温之间有无差异?如果有差异,具体如何差异的?(说明依据、结论等关…...
git撤销某一次commit提交
一:撤销上一次commit提交,但不删除修改的代码 可以使用使用VSCode 二:使用 git reset --hard命令删除提交时,将会删除该提交及其之后的所有更改(相当于你想要回滚到的提交的提交ID) git reset --hard 版本…...
数据结构详细笔记——图
文章目录 图的定义图的存储邻接矩阵法邻接表法邻接矩阵法与邻接表法的区别 图的基本操作图的遍历广度优先遍历(BFS)深度优先遍历(DFS)图的遍历和图的连通性 图的定义 图G由顶点集V和边集E组成,记为G(V,E),…...
黑马React18: 基础Part II
黑马React: 基础2 Date: November 16, 2023 Sum: 受控表单绑定、获取DOM、组件通信、useEffect、Hook、优化B站评论 受控表单绑定 受控表单绑定 概念:使用React组件的状态(useState)控制表单的状态 准备一个React状态值 const [value, se…...
Maven工程继承关系,多个模块要使用同一个框架,它们应该是同一个版本,项目中使用的框架版本需要统一管理。
1、父工程pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/PO…...
Selenium UI 自动化
一、Selenium 自动化 1、什么是Selenium? Selenium是web应用中基于UI的自动化测试框架。 2、Selenium的特点? 支持多平台、多浏览器、多语言。 3、自动化工作原理? 通过上图,我们可以注意到3个角色,下面具体讲解一…...
竞赛 题目:基于深度学习的图像风格迁移 - [ 卷积神经网络 机器视觉 ]
文章目录 0 简介1 VGG网络2 风格迁移3 内容损失4 风格损失5 主代码实现6 迁移模型实现7 效果展示8 最后 0 简介 🔥 优质竞赛项目系列,今天要分享的是 基于深度学习卷积神经网络的花卉识别 该项目较为新颖,适合作为竞赛课题方向,…...
【unity3D-网格编程】01:Mesh基础属性以及用代码创建一个三角形
💗 未来的游戏开发程序媛,现在的努力学习菜鸡 💦本专栏是我关于游戏开发的网格编程方面学习笔记 🈶本篇是unity的网格编程系列01-mesh基础属性 网格编程系列01 mesh基础属性实践操作用代码初始化一个三角形在三角形的基础上改成正…...
Java贪吃蛇小游戏
Java贪吃蛇小游戏 import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.util.LinkedList; import java.util.Random;publi…...
Linux:系统基本信息扫描(1)
#系统基本信息: uname -a #Linux发行版信息: lsb_release -a #内核与发行版信息: cat /proc/version #linux 用户 cat /etc/passwd #Linux 组查询 cat /etc/group #CPU详细信息:lscpu -a #获取CPU模式: cat /sys/devices/system/cpu/cpu0/cpufreq/scaling\_governor #per…...
VR全景打造亮眼吸睛创意内容:三维模型、实景建模
随着VR技术在不同行业之间应用落地,市场规模也在快速扩大,VR全景这种全新的视觉体验为我们生活中的许多方面都带来了无限的可能。更加完整的呈现出一个场景或是物体的所有细节,让浏览者感受到自己仿佛置身于现场一般;其次…...
ProTable高级表格获取表单数据
隐藏高级表格中的收起按钮 手动控制高级表格中的搜索按钮 获取高级表格中的表单数据 Forminstance 引入 然后在代码中定义 const refForm useRef(); 使用 refForm.current.getFileDsValue();...
力扣刷题第二十七天--二叉树
前言 题目大同小异,按要求来即可。 内容 一、二叉树的右视图 199.二叉树的右视图 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 广度优先搜索 取每层最后一个…...
一个快递包裹的跨国之旅
事情要从今年三月份说起,一位爱尔兰的同事在6月份结婚,团队同事准备了中国风的丝绸画轴、领带、丝巾作为礼物。3月份开始邮寄,4月初爱尔兰方面收件,5月份因为文件不足、不完整、不正确等原因被取消进口,7月份退回到大连…...
qsort函数使用方法总结
目录 一、qsort函数原型 二、compar参数 三、各种类型的qsort排序 1. int 数组排序 2. 结构体排序 3. 字符串指针数组排序 4. 字符串二维数组排序 四、回调函数 1. 什么是回调函数 2. 为什么要用回调函数? 3. 怎么使用回调函数? 4.下面是…...
从古代数学到信息学奥赛:秦九韶算法如何帮你秒杀多项式计算题?
从古代数学到信息学奥赛:秦九韶算法如何帮你秒杀多项式计算题? 在杭州西湖畔的岳王庙旁,矗立着一块刻有"大衍求一术"的石碑,这是南宋数学家秦九韶留给后人的智慧结晶。当我们今天面对一道看似普通的多项式计算题时&…...
现在的人为什么不焦虑了!
就拿我来说吧!现在你努力没有方向,焦虑只能让自己的什么出现问题,晚上睡不好的,伴随着偏头疼,是在是太难了。 !、而且回过头来看我们真的需要那么多消费吗?消费降一点,吃踏实点&…...
从‘一片蓝’到‘五彩斑斓’:手把手教你美化Matlab三维柱状图,让论文图表脱颖而出
从‘一片蓝’到‘五彩斑斓’:科研级Matlab三维柱状图视觉优化全攻略 当审稿人翻开一篇论文时,图表往往是他们最先注意到的元素。我曾参与过多次学术期刊的评审工作,那些配色考究、细节精致的图表总能在第一时间抓住眼球——这不仅仅是审美问题…...
6自由度机械臂精准控制:开源ROS方案的技术突破与工业应用
6自由度机械臂精准控制:开源ROS方案的技术突破与工业应用 【免费下载链接】pick-place-robot Object picking and stowing with a 6-DOF KUKA Robot using ROS 项目地址: https://gitcode.com/gh_mirrors/pi/pick-place-robot 在工业自动化领域,…...
10个无状态服务构建技巧:解锁gh_mirrors/awe/awesome-sre中的水平扩展最佳实践
10个无状态服务构建技巧:解锁gh_mirrors/awe/awesome-sre中的水平扩展最佳实践 【免费下载链接】awesome-sre A curated list of Site Reliability and Production Engineering resources. 项目地址: https://gitcode.com/gh_mirrors/awe/awesome-sre 在现代…...
PC显示器HDR选购指南:DisplayHDR标准详解与实战应用
1. 从混乱到清晰:PC显示器HDR标准的演进与现状如果你最近在挑选一台新的PC显示器,尤其是为了游戏、影音剪辑或者专业设计,那么“HDR”这个标签你一定绕不开。它被印在包装盒上,出现在电商页面的标题里,是销售员口中的“…...
DeepSeek-R1大模型微调实战:从LoRA原理到完整项目部署指南
1. 项目概述:一个面向开发者的开源大模型微调项目最近在开源社区里,一个名为FareedKhan-dev/train-deepseek-r1的项目引起了我的注意。乍一看,这只是一个托管在代码托管平台上的仓库,但如果你像我一样,在过去几年里深度…...
2026测绘、遥感、地信三大专业就业现状对比
01测绘测绘目前的情况是易就业,劳动密集但薪酬不高,且比较辛苦。招聘网站上测绘的岗位一搜一大把:测绘实习岗位也非常多:但是大部分测绘岗位没有递进式积累。很多岗位会呈现一个类似下面公式的发展路线图:”助理--XX师…...
忘记压缩包密码怎么办?3步找回加密文件的终极免费解决方案
忘记压缩包密码怎么办?3步找回加密文件的终极免费解决方案 【免费下载链接】ArchivePasswordTestTool 利用7zip测试压缩包的功能 对加密压缩包进行自动化测试密码 项目地址: https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool 你是否曾经面对一个加…...
别再让图片拖慢你的Unity项目!手把手教你用AssetPostprocessor搞定尺寸与压缩
Unity项目性能优化:智能图片处理全攻略 1. 为什么图片处理对Unity项目至关重要 在Unity开发过程中,图片资源往往是项目体积膨胀的罪魁祸首。一个中型项目可能包含数千张纹理,如果不加控制,这些资源会迅速吞噬内存和存储空间。更糟…...
