7.8. 技巧 23——尽可能使用操作符而不是视觉命令

未匹配的标注

Vim 的视觉模式可能比正常操作模式更直观。但是它有一个弱点:不能很好地适配于点命令。在合适的时候使用正常模式操作符可以绕过这个弱点。

假如想将下面的链接列表文字转换为大写:

image-20221202171837130

可以通过运行 vit(可以读作 visually select inside the tag )选择标签内的内容。it 命令是一种叫做文本对象的特殊移动。我们会在 126 页技巧 52 用精确的文本对象跟踪你的选择来详细讨论。

在视觉模式选择一个区域,然后对它进行操作。在这个例子中,使用 U 命令,它将选择的字符转换为大写(:h v_U )。见 46 页,表 4 在视觉模式中转换大写

转换第一行后,现在想对下面两行进行同样的修改,试试使用点公式怎么样运行?

运行 j. 将光标移到下一行,然后重复上一个修改。它对第二行是有用的。但是如果再试一次,将会得到一个看起来很奇怪的结果。

image-20221202172223049

看到发生了什么吗?当一个视觉命令被重复时,它影响同样范围的文本。在本例中,原来的命令影响了包含三个字母的单词,这对第二行是可以的,因为它恰好也是含有一个三个字母的单词。但是当对一个含有 5 个字母的单词重复这个命令时就不适用了。

视觉模式的 U 命令,有一个正常模式的等价命令 gu{motion}(:h gu ) 如果使用这个来进行第一次的更改,就可以使用点公式完成随后的编辑。

image-20221202173057350

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~