2010-11-21 18 views
5

Je devrais redéfinir les mappages de clavier de Vim en mode non-gui.Comment régler la combinaison de touches Méta-Fonction dans Vim?

Je ne comprends pas pourquoi la commande suivante ne fonctionne pas:

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

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

alors que la cartographie de la seule touche F5 ou Meta avec clé non fonction fonctionne:

:set <F5>=^[[15~ 

"ok" 

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

"ok" 

Comment redéfinir Alt/Meta avec les touches de fonction F1-F12 dans Vim?

Thx dans une avance.

David

Mise à jour: Question correction Dans mon .vimrc je donne les résultats suivants cartographie combinaison de touches

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

mais il ne fonctionne que dans gVim. Il ne fonctionne malheureusement pas dans une version non-gui de Vim, car Vim reçoit la séquence d'échappement "^ [[20 ~" au lieu du code-clé direct Meta-F9.

+0

vraiment 'set' peut être utilisé pour cartographier les clés? J'utilise 'map'. ': carte '. – khachik

+0

Désolé pour la confusion, je voulais dire réinitialiser la combinaison de touches, pas de cartographie. Mes excuses. –

Répondre

1

Voici un exemple de wiki Vim:

inoremap <M-i> <Tab> 

Jetez un oeil ici:

Dans le cas qui ne fonctionne pas, essayez ceci:

inoremap <ESC>i <Tab> 

Notez que ceci est un hack et qu'il vous donnera quelques trucs bizarres avec lesquels vous devrez probablement vivre.

Pour les touches de fonction, quelque chose comme cela devrait fonctionner:

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

J'ai peur que ce ne soit pas la réponse à ma question. –

+0

OK, laissez-moi voir si je comprends - vous voulez redéfinir des touches comme Alt-F1 et tel pour effectuer une action? Si oui, vous pouvez utiliser quelque chose comme ': nnoremap : ls ' pour mapper Alt-F3 pour lister tous les tampons. Est-ce que c'est ce que tu voulais ou pas? –

+0

J'ai généralement mappé avec la combinaison de touches noremap pour exécuter une action. Il fonctionne en mode GUI (gVim) car il mappe directement la touche Alt/Meta. Cependant vim dans Xterm (non-gui) reconnaît Meta keypress comme une séquence d'échappement. J'ai besoin de SET pour échapper à la séquence et puis le mapper. –