创建一个用于vim粘贴管理的宏

创建一个用于vim粘贴管理的宏

我想创建一个宏来执行以下操作:

set paste
<paste>
set nopaste

这将使我免于<paste>(哦,我又忘了!)删除。执行上面的操作。一遍又一遍。 :-)

但我想不出一种方法来做到这一点,因为动作来自 vi 外部。我在 Mac 上使用 iTerm2。

有任何想法吗?

答案1

如果您从剪贴板粘贴,请直接使用 进行粘贴"+p。我用\p它作为映射:

nnoremap <leader>p "+p

这应该可以防止缩进等问题。

我有以下映射用于从剪贴板粘贴并复制到其中:

noremap <leader>p "+p
noremap <leader>y "+y

答案2

您可以将粘贴命令重新映射到LEADER + p

nnoremap <leader>p :set paste<cr>p:set nopaste<cr>

相关内容