当你的光标在某一行的任意位置时,如何在VIM中选择该行?
我知道你可以使用(v, $)到达行尾,或者(v, ^)到达行首,但是当你使用(v,$,^)时,它逻辑上并没有选择整行,而是从光标开始到行尾,然后切换到光标到行首...所以这种方法当然会失败。
我知道你可以使用(v, $)到达行尾,或者(v, ^)到达行首,但是当你使用(v,$,^)时,它逻辑上并没有选择整行,而是从光标开始到行尾,然后切换到光标到行首...所以这种方法当然会失败。
使用键盘快捷键,按下 V 键可选择当前行; 如果你在按下 v 时同时按下 "shift" 键,则需要按两次。
\r
),但 0v$
不会。您可以在选择后尝试使用 p
。 - KentV将是直接答案。但我很少这样做,因为“选择当前行”通常是更大任务的一部分。此类任务的示例包括复制该行和删除该行。通常有更好的方法来完成整个任务。以下是我能想到的一些任务:
:set cursorline
我使用 V 的一种情况是选择不是段落或其他文本对象的多行。在这种情况下,有一个提示可能对您有用:一旦处于选择模式,您可以使用 o 在选择的起始点和结束点之间跳转光标。
虽然这可能需要更多按键。
如果您已经在可视模式下,可以使用o
键转到可视选择的另一端。
因此,您可以输入
v0o$
要选择整行,请查看:h visual-change
然而,从评论中可以看出您只想复制整行。
这只需要yy
。
noremap \v v0o$
添加到您的 vimrc 中,这样您就可以将其用作快捷方式。 - Alan Dong^,v,$
正如@Kent建议的那样:如果该行有前导空格,因为^会跳转到第一个非空字符:
0,v,$
0v$
,因为 ^
会跳到第一个 非空 字符。如果该行有前导空格,则不会选择这些空格。 - Kent0
将光标移至行首
v
启用可视化模式
$
移至行尾 - oromoiluig我知道这个帖子非常老,但我刚刚有了同样的问题。这个帖子是第一个出现的,但我找到了不同于任何在这里找到的答案。使用“V”选择整行。这很容易。只需一个字符即可选择整个当前行。
yy
就足够了吗?或者没有换行符的话,使用0y$
。 - FDinoff