我正在寻找一种方法来绑定组合键(比如leader+p)以:set paste
使用相同的组合键打开和关闭。
我知道我可以:set paste
并且:set paste!
可以将它们绑定到 2 个不同的键组合,但我希望进行切换。
有一个特定的命令可以切换粘贴模式:
set pastetoggle=<F10>
例如将其设置为F10键。
编辑:要将其与领导密钥一起使用,您将使用
set pastetoggle=<leader>p
您可以使用pastetoggle
粘贴切换。
set pastetoggle=<F3>
好吧pastetoggle
,对我没用。
有效的是(在我的.vimrc 中):
" Invert paste when \p is pressed
:nnoremap <leader>p :set invpaste<CR>
这个问题的公认答案导致了一个相当隐蔽的错误发生在以“空间”为他们的环境中<leader>
假设我想复制以下文本:
Hello there people!
随着接受的配置set pastetoggle=<leader>p
我会看到以下内容:
Hello thereeople!
发生的事情是它吞没了,<space>p
因为我的领导者恰好是空格键。
这不是“空间”的一个非常罕见的领导键,所以我想我会为那些试图弄清楚这种奇怪行为的人提及它!
https://stackoverflow.com/users/8783819/indrajeet-kumar建议执行以下操作就像一个魅力:
:nnoremap <leader>p :set invpaste<CR>
我还没有被堆栈溢出接受到足以发表评论,所以请原谅我给出这个答案。如果有人可以将此作为评论粘贴到顶部帖子,我将非常感激!