暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

在 Vim 中轻松使用视觉模式

TIAP 2022-06-30
1426

大家都知道 Vim 中有不同的模式(可参考:Vim 模式是什么?如何更改?),今天我们来讨论下其中的视觉模式(visual mode)。


Vim 中的视觉模式是什么

在Vim中,视觉模式用于选择文本。这相当于在GUI文本编辑器中通过鼠标点击并拖动来选择文本的操作。如下图所示:


视觉模式下的子模式

Vim 的视觉模式可以让你选择文本,其下的不同子模式有时候也挺有用的,这要看你想要怎样选择文本。其有三种子模式:

1)视觉[字符]模式(Visual [Character]):用于选择单个字符;

2)视觉行模式(Visual Line):用于一次选择整行;

3)视觉块模式(Visual Block):用于选择矩形块区域的文本。


切换到视觉模式

我们先前有一篇文章介绍 Vim 中的各个模式,以及如何在各个模式之间进行切换,大家有兴趣可参考:Vim 模式是什么?如何更改?

如果想要切换到视觉模式,首先当前要处于正常(Normal)模式:

1)视觉模式(Visual):v(小写的 v

2)视觉行模式(Visual Line):V(大写的V

3)视觉块模式(Visual Block):Ctrl + v


使用视觉模式

当你切换到视觉模式后,vim 会显示一些信息,比如你当前所处的模式,以及你选择的文本数量。

在视觉模式中,选择文本从光标所处的位置开始,然后使用导航键 h/j/k/l 来移动光标。

当你选择完文本后,就可以执行删除、拖动、替换等操作。


视觉[字符]模式(Visual [Character])

如上所述,光标是在单个字符上移动的,但它不仅限于选择单个字符,就像在普通模式一样,可以使用 w/e/b 键跳过单词,和使用 k/j 键上下跳转。

如下图:

如果你仔细观察,就会发现在编辑器底部就会显示一些信息。在左边显示 --VISUAL--,表示当前处于视觉[字符]模式,然后右侧,显示当前选择了多少个字符。


视觉行模式(Visual Line)

这个模式用来选择一整行文本。在视觉行模式中,你不能选择单个字符或单个单词,而只能选择整行。如果当前选择的行不是最后一行,那么“换行符”也会被选中。

如下图:


如上图例子中所演示的,在同一行来回移动光标不会对文本的选择产生什么变化,只要光标停留在这一行上,那么这一整行就会处于被选中的状态。

和视觉模式一样,在最下面会显示 --VISUAL LINE--,但是在右侧不会显示选中的字符数,而是显示选中的行数。


视觉块模式(Visual Block)

我觉得,这个是视觉模式中最有意思的子模式了,它可以对多行进行矩形选择。

来看一下如何使用其他文本替换选中的文本。在下面的例子中,我们将演示如何选中加号,然后使用乘号替换,以让等式成立。

在这个模式下,左下角显示模式名称,--VISUAL BLOCK--,然后右下角不再显示选中的字符数或者行数,而是显示选中的范围,包括行数和列数(行数 × 列数)。


文章转载自TIAP,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论