2017-04-24 1 views
0

J'essaye de lier la commande-F pour trouver la boîte de dialogue dans vim. Le code suivant dans .vimrc fonctionne:Affectation des touches pour fonctionner en mode insertion également dans vim

:map <C-F> :promptfind<CR> 

Cependant, cela fonctionne uniquement en mode de commande. Comment puis-je le configurer pour qu'il fonctionne également en mode insertion?

+0

La réponse est présentée de façon assez détaillée dans ': help: map' ou': help map-commands'. –

+0

: imap à la place de: map fonctionne en mode insertion. Mais alors cette liaison ne fonctionne pas en mode commande. Peut-être que j'ai besoin de placer les deux: imap et: les énoncés de carte. Je lis le matériel d'aide. – rnso

Répondre

0

Dans insertmode, votre liaison insérera simplement :promptfind, puis passera à la nouvelle ligne. Utilisez <C-O> pour exécuter une seule opération en mode commande avant de revenir en mode insertion (:help i_ctrl-o) ou <Esc> à sa place pour passer en mode commande et y rester par la suite.

:nnoremap <C-F> :promptfind<CR> 
:inoremap <C-F> <C-O>:promptfind<CR> 
+0

je trouve que ': imap : promptfind I' et': carte : promptfind 'sont également bien fonctionner. – rnso

+0

La première produira des résultats inattendus si le curseur se trouve à la fin de la ligne après ': promptfind'. Utilisez '', il est là pour une raison. – Amadan