3

要实现粘贴一次,我可以使用:

noremap <silent> p p:let @"=""<cr>

这会在粘贴后清除寄存器,因此后续粘贴将不起作用。然而,将会发生的是空粘贴,它会更新撤消。因此,按 p3次将需要3撤消调用来撤消初始粘贴。

如何压制这个?我试过类似的东西:

:noremap <expr> @" != "" ? p:let @"="" : <Nop> <cr>

但它不会强加任何改变。

4

1 回答 1

4

这个对我有用:

:noremap <silent> <expr> p @" != "" ? 'p:let @"=""<cr>' : ""

简短一点:

:noremap <silent> <expr> p @" != "" ? 'pq"q' : ""
于 2016-06-20T07:57:29.063 回答