vim 键盘宏操作

您所在的位置:网站首页 大道至简原文与出处 vim 键盘宏操作

vim 键盘宏操作

2024-07-04 10:37:46| 来源: 网络整理| 查看: 265

最近利用vim做一些文本处理时 发现vim 支持的键盘宏是一个好东西啊,高效优雅得处理大量需要重复性操作的文本,让人爱不释手!!!

希望接下来对键盘宏的分享能够实际帮助到大家。

后文中描述的一些vim操作会汇集成指令字符串,方便大家参考。

1. 场景描述

在分享键盘宏之前,先看这样一个文本操作需求:

对如下文本增加markdown中的链接形态,并为每一个行增加一个递增的序号。

markdown的链接语法 是: [description](https://www.baidu.com)

HashKV.pdfCompaction management in dis-tributed key-value datastores.pdfDostoevsky.pdfLSM-trie.pdfNoFTL-KV.pdfWB-tree.pdfAccordion.pdfThonangi and Yang.pdfFD-tree.pdfElasticBF.pdfLSbM-tree.pdfVT-tree.pdf

完成操作之后的形态应该如下,这样我们就能在markdown语法中点击文字,跳转到指定的链接中了:

[1. HashKV.pdf](https://www.baidu.com)[2. Compaction management in dis-tributed key-value datastores.pdf](https://www.baidu.com)[3. Dostoevsky.pdf](https://www.baidu.com)[4. LSM-trie.pdf](https://www.baidu.com)[5. NoFTL-KV.pdf](https://www.baidu.com)[6. WB-tree.pdf](https://www.baidu.com)[7. Accordion.pdf](https://www.baidu.com)[8. Thonangi and Yang.pdf](https://www.baidu.com)[9. FD-tree.pdf](https://www.baidu.com)[10. ElasticBF.pdf](https://www.baidu.com)[11. LSbM-tree.pdf](https://www.baidu.com)[12. VT-tree.pdf](https://www.baidu.com)

假想,我们想要完成类似功能的操作,需要处理的文本成千上万行,这个时候我们需要用传统的方法去操作会把人逼疯。

而在vim的键盘宏中,这仅仅只是一系列指令操作的集合,并不会消耗太多的精力。

详细视频见:

vim 键盘宏操作 -- 大道至简_初始化

整个过程可谓非常简单,迅捷。只要在第一行录制一遍键盘宏,就能够应用在所有的行上。

2. 键盘宏概述vim 寄存器:vim提供了一系列寄存器,有一些是不允许修改的,而有一些可以由用户去修改写入​​a-z​​和​​A-Z​​。总的作用就类似CPU的寄存器一样,用来临时保存数据而已。 可以通过::reg a # 查看寄存器a的内容

键盘宏就是创建一个寄存器,将我们针对文本的操作指令记录到寄存器中,再将寄存器的内容应用到其他的文本行中。

录制键盘宏的寄存器操作一般模式 -- qa #录制以a命名的寄存器,按一次q表示开始录制一般模式 -- do some op # 做一些操作:我们针对文本的操作一般模式 -- q # 按第二次q 表示结束录制,两个q之间的文本操作已经保存到寄存器之中了:reg a # 可以看到刚才录制的寄存器 a 的内容变量赋值:let i=1:let str="https://www.baidu.com"变量取值插入模式 -- ^r=i # ctrl-r-=-i 会在当前插入位置添加i的值改变变量的值:let i+=1多行批量操作1. 可视化操作选中除了操作的第一行之外的所有行2. :normal @a #将寄存器内容应用在选中的多行中3. 案例的详细操作步骤1. :let i=1 #初始化变量i 的值,作为行编号使用2. :let str='https://www.baidu.com' # 初始化变量str,作为链接字符串使用3. qa # 开始录制键盘宏4. I[^r=i. A](^r=str):let i+=1 # 操作内容,按照字母大小写顺序以及字符敲就可以了5. q6. v 可视化操作选中剩余的所有行7. :normal @a # 对选中的行执行寄存器内的所有操作

关于第四步的寄存器操作内容如下:

vim 键盘宏操作 -- 大道至简_寄存器_02

学习起来有点麻烦,当多次操作熟悉之后就会发现这一些学习时间相比于成千上万行的重复操作来说简直是大道至简,也让我们更加深刻得体会到vim的神级编辑器并不是浪得虚名。



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭