2010-11-21 14 views
5

Tendría que redefinir las asignaciones de teclado de Vim en modo no gui.¿Cómo se configura la combinación de teclas Meta-Función en Vim?

Simplemente no entiendo por qué el comando siguiente no funciona:

:set <M-F5>=^[[15~ 

"E518: Unknown option: <M-F5>=^[[15~" 

Considerando que el mapa de tecla F5 solo o con la tecla Meta no hace la función de trabajo:

:set <F5>=^[[15~ 

"ok" 

:set <M-space>=^[[15~ 

"ok" 

Cómo redefinir Alt/Meta con las teclas de función F1-F12 en Vim?

Thx en un avance.

David

Actualización: corrección Pregunta En mi .vimrc que tienen la siguiente asignación de clave y combinación

autocmd Filetype python noremap <buffer> <silent> <M-F9> :w !pylint -E %<CR> 

pero funciona sólo en gVim. Desafortunadamente no funciona en la versión no guiada de Vim, porque Vim recibe la secuencia de escape "^ [[20 ~" en lugar de código clave Meta-F9 directo.

+0

Realmente 'set' puede usarse para mapear las teclas? Yo uso 'map'. ': map '. – khachik

+0

Disculpe la confusión, me refiero a restablecer la combinación del código clave, no al mapeo. Mis disculpas. –

Respuesta

1

He aquí un ejemplo de Vim wiki:

inoremap <M-i> <Tab> 

Echa un vistazo aquí:

En caso de que no funciona, intente lo siguiente:

inoremap <ESC>i <Tab> 

Tenga en cuenta que este es un truco y dará algunas cosas extrañas con las que probablemente tendrá que convivir.

Para teclas de función, algo como esto debería funcionar:

nnoremap <ESC><F9> :ls<CR> 
+0

Me temo que esta no es la respuesta a mi pregunta. –

+0

Bien, déjame ver si entiendo: ¿quieres redefinir teclas como Alt-F1 y otras para realizar alguna acción? Si es así, puede usar algo como ': nnoremap : ls ' para mapear Alt-F3 y listar todos los buffers. ¿Es eso lo que querías o no? –

+0

En general, he mapeado con la combinación de teclas noremap para ejecutar alguna acción. Funciona en modo GUI (gVim) porque asigna la tecla Alt/Meta directamente. Sin embargo, vim en Xterm (no-gui) reconoce la pulsación de tecla Meta como una secuencia de escape. Necesito SET para escapar de la secuencia y ENTONCES mapearlo. –

Cuestiones relacionadas