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

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

http://www.lryc.cn/news/237990.html

相关文章:

  • 基于深度学习的单帧图像超分辨率重建综述
  • 开源与闭源:创新与安全的平衡
  • C# 22H2之后的windows版本使用SetDynamicTimeZoneInformation设置时区失败处理
  • 分布式与微服务 —— 初始
  • 多因素方差分析(Multi-way Analysis of Variance) R实现
  • git撤销某一次commit提交
  • 数据结构详细笔记——图
  • 黑马React18: 基础Part II
  • Maven工程继承关系,多个模块要使用同一个框架,它们应该是同一个版本,项目中使用的框架版本需要统一管理。
  • Selenium UI 自动化
  • 竞赛 题目:基于深度学习的图像风格迁移 - [ 卷积神经网络 机器视觉 ]
  • 【unity3D-网格编程】01:Mesh基础属性以及用代码创建一个三角形
  • Java贪吃蛇小游戏
  • Linux:系统基本信息扫描(1)
  • VR全景打造亮眼吸睛创意内容:三维模型、实景建模
  • ProTable高级表格获取表单数据
  • 力扣刷题第二十七天--二叉树
  • 一个快递包裹的跨国之旅
  • qsort函数使用方法总结
  • 机器学习介绍与分类
  • linux控制台命令
  • 快时尚品牌Halara登上TikTok美国小店榜Top 5,运动健身风靡TikTok
  • Docker 安装 Oracle Database 23c
  • 什么是美国服务器,有哪些优势,适用于什么场景?
  • TeXLive 2023安装教程
  • uniapp中swiper 轮播带左右箭头,点击切换轮播效果demo(整理)
  • 网络连接Android设备
  • Redis(位图Bitmap和位域Bitfield)
  • 【ArcGIS】批量对栅格图像按要素掩膜提取
  • 二进制安装minio 并实现主从同步