您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Vim 寄存器

寄存器这个概念,在之前的Vim复制、章节已经和大家提过。想必大家应该还有印象。我们根据那节场景讲了无名寄存器和复制专用寄存器。本节,我们就更加深入了解寄存器的概念和使用场景。

1. 寄存器概念

Vim 中的寄存器简单来说就是用于保存文本的容器。我们对不同场景划分了不同的寄存器,或者说容器。主要用于 Vim 使用中临时保存一些数据。

之前章节中我们我们提到过这个概念,并且对 Windows 和 Vim 编辑器之间不同点做了对比。它们之间最大不同就在于寄存器的概念。Vim 分门别类地划分了几十组不同的寄存器或者容器来临时保存文本。Windows 系统只使用单一的剪切板

Vim 寄存器有很多种,这里我们只会讲解四种常用的寄存器。其他大家可以在 Vim help(:h reg)中了解即可。

2. 实战案例

寄存器使用相关命令:

使用寄存器:"{reg_类型}+命令: 无论是存入寄存器还是引用寄存器都是这个公式。我们来具体看下。

这个是认寄存器,顾名思义就是没有名字。使用双引号表示——"".我们的、复制等操作都认存。当然复制除了认存在无名寄存器还会存入专用的复制寄存器,后面会提到。

操作

可以看到当我们了resource 后,通过查看寄存器可以看到在无名寄存器 ——""中包含了我们的字符串resource

复制操作

可以看到当我们复制字符串dataspace后,再查看寄存器时候发现两个变化:

首先无名寄存器中之前存入的 resource 被 dataspace 覆盖了。

可以看到数字0寄存器也变成了 dataspace。这就是我们之前说的复制专用寄存器。

除了刚才的数字 0 寄存器(也叫复制寄存器)之外,还有其他九个数字寄存器[1-9]。这就等于给寄存器编了个号码,类似于人的身份证号一样。

特点: 当一整行时候

数字1:最近的文本

数字2:存放倒数第二的文本

一整行场景

可以看到数字寄存器会按照行顺序倒序。需要注意的是只有整行才会这样。大家可以自己试试看单个单词会出现这样的情况么?

这就相当于给寄存器起了个名字。只不过名字比较简单 [a-Z]。场景和逻辑都比较简单。下面我们来看下演示:

可以看到我们给每个操作都分门别类取了个名字。这样就可以按需使用了。

黑洞寄存器

这个看名字就很容易理解。指定到这个寄存器的是有去无回的。真正意义上的。

使用黑洞寄存器后,我们可以通过 reg 命令查看寄存器。可以看到所有的寄存器都不存在env ,也就是说通过寄存器已经直接了。

3. 小结

以上就是寄存器的主要,如果大家看过 Vim 帮助的话。会发现还有很多其他的寄存器。这里只是涉及最常用的寄存器。基本可以满足大家日常使用需要。其他更高级的寄存器,大家可以自行查看使用。


联系我
置顶