如何在Vim中以粘贴模式使imap工作?

Sam*_*ong 16 vim

我最近开始使用:imap jj,我试图忘掉Ctrl + [.

但是,粘贴模式打开时,imap不起作用.如何使其在粘贴模式下工作?

小智 16

启用"粘贴"时,您根本无法使用映射,因为这是Vim粘贴模式的重点.

Vim的粘贴模式允许你甚至在终端中的控制台Vim的实例中粘贴东西 - 其中Vim可能不知道你正在使用鼠标粘贴 - 并且你想要在粘贴缓冲区中插入文字文本而不触发映射,或自动/智能/表达缩进等

我建议你看看:

:
help'paste':help'pastetoggle'


JE4*_*E42 5

将以下代码段添加到.vimrc,以便在通过终端粘贴时自动触发粘贴模式:

let &t_SI .= "\<Esc>[?2004h"
let &t_EI .= "\<Esc>[?2004l"

inoremap <special> <expr> <Esc>[200~ XTermPasteBegin()

function! XTermPasteBegin()
   set pastetoggle=<Esc>[201~
   set paste
return ""
endfunction
Run Code Online (Sandbox Code Playgroud)

来自:https: //coderwall.com/p/if9mda