我已经使用vim很长一段时间了,我意识到在可视模式下选择文本块就像SHIFT+V和逐行向上或向下移动箭头键一样简单,直到我到达我想选择的文本块的末尾。
我的问题是-在可视模式下是否有更快的方法来选择一个文本块,例如通过SHIFT+V,然后指定我希望停止选择的行号?(例如,通过:35,其中35是我想要选择的行号-这显然是行不通的,所以我的问题是,如果类似的事情可以做到…)
我已经使用vim很长一段时间了,我意识到在可视模式下选择文本块就像SHIFT+V和逐行向上或向下移动箭头键一样简单,直到我到达我想选择的文本块的末尾。
我的问题是-在可视模式下是否有更快的方法来选择一个文本块,例如通过SHIFT+V,然后指定我希望停止选择的行号?(例如,通过:35,其中35是我想要选择的行号-这显然是行不通的,所以我的问题是,如果类似的事情可以做到…)
当前回答
v%
将选择整个块。
玩也:
V} vp vs等等。
看到帮助:
:帮助文本对象
它列出了选择字母、单词、句子、段落、块等的不同方法。
其他回答
了解以下信息可能会派上用场:
为了选择相同数量的线,例如使用1v 你应该做一些修改,以便能够使用1v,按块或按线。
今天我看到了这个很棒的建议:
:5mark < | 10mark > | normal gvV
:5mark < | 10mark > | normal gv
你也可以这样重置可视化块边界:
m< .......... sets the visual mode start point
m> .......... sets the visual mode end point
文本对象:http://vim.wikia.com/wiki/Creating_new_text_objects
http://vimdoc.sourceforge.net/htmldoc/motion.html#text-objects
除了其他人说过的内容,您还可以使用模式搜索来扩大选择范围。
例如,v/foo将从你的当前位置选择到“foo”的下一个实例。如果您实际上想展开到“foo”的下一个实例,例如在第35行,只需按n将选择展开到下一个实例,依此类推。
更新
我不经常这样做,但我知道有些人广泛地使用标记来进行视觉选择。例如,如果我在第5行,我想选择第35行,我可以按ma在第5行上放置标记a,然后按:35移动到第35行。Shift + v进入直线可视模式,最后' a选择回标记a。
G Goto line [count], default last line, on the first
non-blank character linewise. If 'startofline' not
set, keep the same column.
G is a one of jump-motions.
V35G实现了你想要的
v35G将选择从光标到第35行的所有内容。
v让你进入选择模式,35指定你想要G到的行号。
你也可以使用v},它将选择下一段开始之前的所有内容。