如何直观地选择刚粘贴到Vim中的文本块?


13

我通常需要在源文件之间移动/复制代码段。粘贴文本块后,通常需要对该文本块执行一些操作,例如使用=

有没有一种方法可以轻松地直观地选择我刚刚粘贴的文本块,而无需手动执行?

Answers:


21

'[']标记分隔上次改变或者抽出的文本的第一个和最后一行。的`[`]对应物限定的各线与列。

使用该命令,您可以直观地选择更改的最后一行行,'[V']然后应用=命令。

但是,由于粘贴使您的光标停留在粘贴内容的第一行,因此您还可以仅指定要在其=上应用命令的动作,在这种情况下为']标记。这将是=']


这个答案描述的方法,对于所有类型的视觉选择的作品(包括可视列块):stackoverflow.com/questions/4312664/...
亚当Byrtek

14

此映射使您可以重新选择刚粘贴的文本:

nnoremap gV `[v`]

但是您应该使用[p]p代替。

请参阅:help [p


2
+1 [p]p
lisowski.r,2015年

3

Vim包括以下有用的映射:

`[

`]

分别选择先前更改的文本的第一个和最后一个字符。

以下一系列键(在正常模式下)将选择最后粘贴的文本:

`[v`]

为了更快地访问,您可以设置一个映射,例如

nnoremap gp `[v`]
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.