在vim中,如何直观地选择以前粘贴的文本

Rn2*_*2dy 6 vim

我通常直观地选择一个块并将其复制/剪切到其他地方,然后我发现自己总是格式化粘贴的文本,所以有没有办法快速直观地选择文本.

Pet*_*ker 5

修改缓冲区(和yanks)的每个命令都将在更改的区域周围设置'[']标记.因此,您可以通过以下方式重新格式化粘贴的块:

`[v`]=
Run Code Online (Sandbox Code Playgroud)

有些人甚至使用以下映射来重新选择最后修改的文本块:

nnoremap <expr> gV '`[' . getregtype()[0] . '`]'
Run Code Online (Sandbox Code Playgroud)

使用此映射,您只需执行gV=并格式化刚粘贴的文本即可.

但是,如果你有unimpaired.vim插件,并且你正在按行键式粘贴,你可以使用=p它提供的命令.这将粘贴然后重新格式化文本.它还提供了一些其他替代粘贴命令>p,例如将更深层次地粘贴一个缩进级别.