¿Cómo puedo redefinir las asignaciones de teclas del complemento?

21

He instalado un complemento que no proporciona un mecanismo para deshabilitar las asignaciones de teclas que define. Quiero redefinir una de las asignaciones ( <leader>cc) definidas por el complemento para mi propia cartera, he intentado poner la siguiente línea en mi .vimrc:

noremap <leader>cc echo "my purpose"

Pero esto no funciona, <leader>cctodavía está ejecutando el comando del complemento.

¿Cómo puedo definir mi mapeo para que anule los definidos por el complemento?

toro2k
fuente
una opción (ciertamente no es genial) es simplemente entrar y editar la fuente y eliminar el mapeo ofensivo directamente
JonnyRaa

Respuestas:

20

Los complementos se obtienen después de su, vimrcpor lo que no hay forma de anular una asignación de complementos en su vimrcsi el complemento no proporciona una forma de hacerlo.

Colocar su mapeo personalizado en ~/.vim/after/plugin/mystuff.vim(el nombre del archivo no importa) debería permitirle anular el mapeo del complemento.

romainl
fuente
1
Hacer esto no me funciona. Coloco map <C-l> somethingallí y que todavía se pone anulado por Pydocstring.
pez remo
¿Hay alguna manera de hacer esto que sea específica para un tipo de archivo (como ftplugin)?
Steven Lu
Además, de acuerdo, esto en realidad ni siquiera funciona.
Steven Lu
20

Como se menciona en otras respuestas, los complementos se obtienen después de que se realiza el vimrc.

Si desea mantener sus anulaciones en su vimrc en lugar de hacer un complemento posterior, puede usar este "truco" en cualquier parte de su archivo vimrc:

autocmd VimEnter * noremap <leader>cc echo "my purpose"

De :help VimEnter:

VimEnter: después de hacer todas las cosas de inicio, incluida la carga de archivos .vimrc, la ejecución de los argumentos "-c cmd", la creación de todas las ventanas y la carga de los búferes en ellas.

Entonces, todo lo que coloque en un comando automático VimEnter se ejecuta después de que Vim esté listo. Usando VimEnter esta manera le permite mantener todas sus correspondencias con sus otros entornos en los que se utilizan para mantenerlos: vimrc.

John O'M.
fuente