详解 Vim 三种模式之一:可视模式

598 阅读3分钟

Vim是Linux中最常见的文本编辑器,今天我来谈谈Vim 可视模式。

Vim 中的可视模式是什么?

在 Vim 中,可视模式用于选择文本,这与在 GUI 文本编辑器中通过鼠标单击并拖动以选择文本操作来选择文本的 Vim 等效。

可视模式下的额外模式

Vim 中的可视模式允许您选择文本,但可视模式的不同子集将很有用,具体取决于您要如何选择文本。

Vim 中有 3 个可视模式子集:

  • Visual [Character] 模式:用于选择单个字符
  • 视觉线模式:用于一次选择整条线
  • 可视块模式:用于选择块状矩形形状的文本

切换到可视模式

你显然需要告诉 Vim 你打算切换到可视模式来使用它。

如果要切换到可视模式,则需要先进入普通模式:

  • 视觉模式:(v小写'v')
  • 视觉线模式:(V大写“V”)
  • 视觉块模式:Ctrl + v

使用可视模式

当你切换到可视模式时,Vim 会给你一些细节,它将显示您处于哪种模式以及您选择的文本数量。

进入可视模式后,选择从光标点开始,您可以使用导航键 h/j/k/l 移动它。

当您对选择感到满意时,您可以执行删除、拉取和替换等操作。

可视[角色]模式

如上所述,这用于将光标移动到单个字符上,但不限于选择单个字符,就像普通模式一样,您可以分别使用 w/e/b 键跳过单词和使用 k/j 键上下移动。

我将演示选择单个字符、选择几个单词、选择整行,然后使用 Visual [Character] 模式删除选择。

如果您仔细观察,当我进入可视模式时,底线向我表明了一些事情,它-- VISUAL --向最左侧表示,表示用户处于视觉 [字符] 模式。并且,在右侧,它显示了选择了多少个字符。

可视行模式

此模式用于选择整行。您不能在可视行模式中选择单个字符或单词,只选择完整的行。如果该行不是最底部的行,也会选择“换行符”字符。

在这里,我将演示选择多行并同时删除它们,仔细看;最后选择的行不会变成空行(因为也选择了“换行符”字符)。

在同一行上来回移动光标不会选择文本或撤消对文本的选择,只要光标停留在该行上,整行就会保持选中状态。

类似于 Visual [Character] 模式,右下角会显示-- VISUAL LINE --。但是,不是显示字符数,而是在可视行模式下显示所选行数。

可视块模式

在我看来,这是可视模式中最有趣的子集,您可以对行x列进行矩形选择。

为了展示如何使用可视块模式,让我们尝试用乘法符号替换所有加法符号以理解给定的数学方程,这也应该演示用一些其他文本替换(更像是覆盖,但你明白了)选定的文本(我们将使用剪贴板粘贴文本)。

在这里,右下角将通过显示文本指示您处于可视块模式-- VISUAL BLOCK --,并且不会显示所选字符或行数,而是使用所选行数 x 所选列数显示所选块的尺寸。

结论

本文介绍了可视模式的基础知识及其在 Vim 中的子集,如何导航和使用每个子集以实现最高效率。