当您的光标位于该行的某个随机点时,您如何在 VIM 中选择一行?
我知道你可以做 (v, $) 到行尾,或者 (v, ^) 到开始,但是当你做 (v,$,^) 它逻辑上不会选择整个行,它从光标中选择,直到结束,然后将其切换到光标直到开始......所以这种方法当然失败了。
当您的光标位于该行的某个随机点时,您如何在 VIM 中选择一行?
我知道你可以做 (v, $) 到行尾,或者 (v, ^) 到开始,但是当你做 (v,$,^) 它逻辑上不会选择整个行,它从光标中选择,直到结束,然后将其切换到光标直到开始......所以这种方法当然失败了。
大写V
一键选中当前行;shift二,如果您在+中包含“移位” v。
V将是直接的答案。但是,我很少需要这样做,因为“选择当前行”通常是一项更大任务的一部分。此类任务的示例包括复制行和删除行。通常有更好的方法来完成整个任务。以下是我能想到的一些任务:
:set cursorline
在 .vimrc 文件中使用我使用的一种情况V是选择不是段落或其他文本对象的多行。在这种情况下,有一个提示可能对您有用:一旦进入选择模式,您可以使用o光标在选择的开始和结束之间跳转。
虽然这可能是更多的击键。
如果您已经处于视觉模式,您可以使用o
转到视觉选择的另一端。
所以你可以输入
v0o$
选择整行。看一眼:h visual-change
但是,从评论看来,您只想复制整行。
这只是yy
只需更改您的操作顺序即可。你几乎拥有它。
^,v,$
或者正如@Kent 所建议的那样:因为 ^ 转到第一个非空字符,如果该行有前导空格:
0,v,$
我知道这个线程非常古老,但我也有同样的问题。该线程首先出现,但我找到了与此处找到的答案不同的答案。使用“V”选择整行。就这么简单。一个字符选择整个当前行。