python vim plugins conflict

python jedi



ResoluciĆ³n de un conflicto de mapeo del plugin vim: el mapeo ya existe para / t (3)

Seguí http://sontek.net/blog/detail/turning-vim-into-a-modern-python-ide#intro para instalar un montón de complementos para la programación de Python en gvim (instalado en una máquina con Windows 8). Parece que hay un conflicto de mapeo entre los plugins ''command-t'' y ''tasklist'', ya que recibo el siguiente mensaje de error:

>Error detected while processing C:/Users/Willem/vimfiles/bundle/tasklist/pl >ugin/tasklist.vim: > >line 369: > >E227: mapping already exists for /t

Luego escribo: map in vim y veo que una de las asignaciones es:

>n /t * :CommandT<CR>

¿Hay una buena manera de resolver esto?


Aquí hay una explicación más general:

De la ayuda de vim:

Tanto <SID> como <Plug> se utilizan para evitar que las asignaciones de claves mecanografiadas interfieran con las asignaciones que solo se utilizarán desde otras asignaciones. Tenga en cuenta la diferencia entre usar <SID> y <Plug> :

<Plug> es visible fuera del script. Se utiliza para mapeos a los que el usuario puede querer asignar una secuencia de teclas. <Plug> es un código especial que una clave mecanografiada nunca producirá. Para que sea muy poco probable que otros complementos usen la misma secuencia de caracteres, use esta estructura: scriptname mapname En nuestro ejemplo, el scriptname es "Typecorr" y el mapname es "Add". Esto da como resultado "TypecorrAdd". Solo el primer carácter de scriptname y mapname está en mayúscula, por lo que podemos ver dónde comienza mapname.

Entonces, si quiere que el error no aparezca, necesita asignar algo a <Plug>Tasklist en su muestra.

Me gusta esto:

nnoremap <leader>v <Plug>TaskList


La lista de tareas no se correlacionará con <leader>t si se encuentra una asignación a <Plug>TaskList .

Entonces solo necesita crear una asignación a <Plug>TaskList en su vimrc. El ejemplo que encontré en el código fuente era

nnoremap <leader>v <Plug>TaskList


Otra solución, quizás imperfecta, sería editar directamente tasklist.vim alrededor de la línea 369 y cambiar manualmente la asignación que se realiza allí.