VIM经典命令系列之数字递增、递减

系列文章目录

第二章 Vim使用技巧进阶之数字递增、递减操作


文章目录


前言

提示:这里可以添加本文要记录的大概内容:


提示:以下是本篇文章正文内容,下面案例可供参考

一、为什么需要数字递增递减操作

主要是因为有的时候需要定义很多的有规律性的后缀数字,一个一个手写费时费力,充分利用vim快捷键可以高效的完成任务。

二、使用步骤

1.单列数字递增、递减

比如想实现以下操作,只有一列数字需要进行递增或递减的情况:

cpp 复制代码
wire a0;
wire a1;
wire a2;
wire a3;
wire a4;

有以下方法可以快速实现:

1.1 手动选中数字利用大写的I

cpp 复制代码
wire a0;
wire a3;
wire a4;
wire a8;
wire a9;

==》 利用列操作选中数字列,数字保持被选中状态
==》 按下:
==》 输入I
==》 回车

就会变成如下:
wire a0;
wire a1;
wire a2;
wire a3;
wire a4;

以选中的数字第一个为起始进行递增

1.2 利用qa命令

cpp 复制代码
wire a0;       #首先手动写出来
ESC退出命令模式 #
qa             #利用寄存器a记录
yy             #复制wire a0这一行
p              #粘贴这一行

ctrl+a         #这个时候数字自动加1
ctrl+x         #这个时候数字自动减1
2 ctrl+a       #这个时候数字自动加2,也可以连续按2次ctrl+a
2 ctrl+x       #这个时候数字自动减2,也可以连续按2此ctrl+x

q              #退出记录过程
5@a            #上述操作重复5次

2.多列数字递增、递减

2.1手动选中利用大写的I

方法跟上面的一样,因为可以手动的选择列,并执行I,这里不再赘述

2.2 利用f进行跳转

cpp 复制代码
i             #进入插入模式;
array[0] = 5; #输入首行代码;
ESC           #进入普通模式(normal) --->备注:后续操作全在普通模式下进行;

qa            #打开操作记录器,将后续动作放在记录器a中;(左下角会显示一个【记录中@a】提示符号)
yy            #复制本行;
p             #粘贴到下一行;         --->备注:光标会自动定位到新粘贴的一行行首;
ctrl+a        #角标自加1;
f=            #光标定位到等号,即数组值左边;
5 ctrl+a      #数组值自加5;
q             #关闭记录器;           --->备注:此时仍处于normal模式

4@a           #将上述记录器记录的动作执行4次。

这样就会出现下面:

array[0] = 5;
array[1] = 10;
array[2] = 15;
array[3] = 20;

总结

充分利用vim的快捷键可以很大程度上提供工作效率;

相关推荐
物理与数学10 小时前
linux 内存分布
linux·linux内核
东城绝神10 小时前
《Linux运维总结:基于ARM64+X86_64架构使用docker-compose一键离线部署MySQL8.0.43 NDB Cluster容器版集群》
linux·运维·mysql·架构·高可用·ndb cluster
creator_Li11 小时前
即时通讯项目--(1)环境搭建
linux·运维·ubuntu
Mr'liu12 小时前
MongoDB 7.0 副本集高可用部署
linux·mongodb
文静小土豆12 小时前
Rocky Linux 二进制 安装K8S-1.35.0高可用集群
linux·运维·kubernetes
暮云星影13 小时前
二、linux系统 应用开发:整体Pipeline流程
linux·arm开发
weixin_4307509314 小时前
OpenMediaVault debian Linux安装配置企业私有网盘(三) 静态ip地址配置
linux·服务器·debian·nas·网络存储系统
4032407314 小时前
[Jetson/Ubuntu 22.04] 解决挂载 exFAT 硬盘报错 “unknown filesystem type“ 及只读权限问题的终极指南
linux·运维·ubuntu
Source.Liu14 小时前
【沟通协作软件】使用 Rufus 制作 Ubuntu 启动盘的详细过程
linux·ubuntu
Love丶伊卡洛斯14 小时前
Ubuntu 部署 STUN服务端
linux·运维·ubuntu