2010-10-09 12 views
13

Recientemente comencé a usar: imap jj y estoy intentando desaprender Ctrl + [.¿Cómo hago que imap funcione en modo pegar en Vim?

Sin embargo, imap no funciona cuando el modo pegar está activado. ¿Cómo hago que funcione en modo pegar?

+0

lo que dijo Heptite. Tendrá que conformarse con las teclas reales '' o Ctrl, como 'Ctrl- [' o 'Ctrl-C' cuando esté en modo pegar. – progo

Respuesta

13

Simplemente no puede hacer que las asignaciones funcionen cuando 'pegar' está habilitado, ya que ese es el punto principal del modo de pegar de Vim.

El modo de pegar de Vim le permite pegar cosas incluso en una instancia de la consola Vim en un terminal — donde Vim puede no saber que está usando el mouse para pegar — y desea insertar texto literal desde su búfer de pegado sin activar asignaciones, o auto/inteligente/expresión sangría, etc.

le sugiero que tome un vistazo a:

: ayuda 'pegar'
: ayuda 'pastetoggle'

5

Agregar siguiente fragmento de su .vimrc para activar el modo de pasta de forma automática al pegar a través del terminal:

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 

Desde: https://coderwall.com/p/if9mda

+0

¿Qué significa 'pegar a través de un terminal'? –

Cuestiones relacionadas