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的快捷键可以很大程度上提供工作效率;

相关推荐
●VON11 小时前
鸿蒙 PC Markdown 编辑器离线专业渲染管线
华为·编辑器·harmonyos·鸿蒙
BelongPanda11 小时前
Linux Nginx 纯手动 Let‘s Encrypt 泛域名证书配置教程
linux·nginx
酷可达拉斯11 小时前
Linux操作系统-shell编程(0)
linux·运维·服务器·python·云计算
2301_7779983411 小时前
Linux中断机制:操作系统如何高效运行
linux·运维·服务器
yunwei3711 小时前
eBPF 教程:检查 exec 后真正安装的可执行镜像
linux·开源
笑锝没心没肺12 小时前
yum update 报错:GPG key retrieval failed: [Errno 14] HTTPS Error 404 - Not Found
linux·运维·服务器
这就是佬们吗12 小时前
Python入门③-运算符、条件与循环
开发语言·数据库·vscode·python·pycharm·编辑器
AAA@峥12 小时前
CentOS Stream8 基于 Packstack 搭建 OpenStack 云平台全流程实战
linux·centos·openstack
汤永红12 小时前
gtk-x11-2.0.so.0
linux·运维·服务器
Yana.nice13 小时前
Linux logrotate 日志切割未生效
linux·运维·服务器