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

是否可以轻松地直观地选择刚粘贴的文本块手动吗?

#1 楼

'[']标记界定了先前更改或选中的文本的第一行和最后一行。分别对应的`[`]划定了各自的行和列。

使用此视图,您可以直观地选择带有[[V]]的最后更改的行块,然后应用=命令。
但是,由于粘贴将光标留在粘贴内容的第一行,因此您还可以指定一个动作,在该动作上应应用=命令,在这种情况下,应将其应用于']标记。这将是=']。

评论


此答案描述了一种适用于所有类型的视觉选择(包括逐块视觉)的方法:stackoverflow.com/questions/4312664/…

–亚当·伯特克(Adam Byrtek)
17年5月7日在19:20

#2 楼

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

nnoremap gV `[v`]


,但是您应该改用[p]p

请参阅:help [p

评论


为[p和] p +1

–lisowski.r
15年2月3日,18:33

#3 楼

Vim包含以下有用的映射:

`[




`]


选择其中的第一个和最后一个字符

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

`[v`]


更快访问,则可以设置映射,例如:

nnoremap gp `[v`]