Question

J'essaie de configurer un mappage de clé vim qui mappera la clé ';' à A; - c’est-à-dire que je veux ajouter automatiquement ';' à la fin de la ligne. Cependant, j'ai du mal à établir cette cartographie. Je voudrais aussi limiter cela à des fichiers java si possible. Cela peut-il être fait?

Merci

Était-ce utile?

La solution

Le mappage lui-même se fait de la manière suivante:

:map ; A;<esc>

Je vous conseillerais de mettre cette ligne dans votre fichier .vimrc et de vivre avec elle (cela ne devrait pas vous déranger, car le mappage ne fonctionne qu'en mode commande). Si vous devez vraiment limiter ce comportement à certains fichiers, vous devez vous pencher sur la fonction autocmd (: help autocmd )

Autres conseils

Si vous souhaitez limiter cette fonctionnalité aux tampons java, consultez ftplugins. Le mappage devient alors:

nnoremap <buffer> ; A;<esc>

BTW, je vous déconseille de mapper sur '; ' car c'est une commande très utile qui peut être utilisée dans d'autres mappages mal définis (trop de vimmers utilisent : * map au lieu de : * noremap ).

Utilisez les ftplugins comme Luc Hermitte l’a dit ou ajoutez ce qui suit à votre .vimrc

autocmd filetype java :nnoremap <buffer> ; A;<esc>

Mettez ceci dans ~ / .vim / after / ftplugin / java.vim

nnoremap <buffer> ; A;<Esc>

Ce mappage doit maintenant être local pour les tampons java uniquement

Comme mise en œuvre rapide, qu’en est-il:

map ; $a;cntl-vESC

puis appuyez sur Entrée

Je réfléchirai à l'activation de cette option pour les fichiers Java uniquement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top