Appliquer un nombre à une commande mappée


1

Je veux joindre toutes les quatre lignes d'un fichier en une seule ligne. Je peux le faire en tapant:

JJJj

Depuis que je vais faire cela à plusieurs reprises, je l'ai mis en correspondance avec une clé:

map <F5> JJJj

Maintenant, je peux tenir F5 et cela fonctionne, mais cela prendrait toute la journée pour parcourir ce fichier de cette façon. Y a-t-il un moyen que je puisse dire à vim d'exécuter JJJj plusieurs fois? 100<F5> n'a pas marché.


Réponses:


1

C'est un cas d'utilisation parfait pour les macros:

qq
JJJj
q

puis:

100@q

ou:

:%norm! @q

Mais vous pouvez aussi utiliser votre mapping avec :normal aussi:

:%norm <C-v><F5>   <-- press Ctrl+V then F5

Je dois. Relire. Je dois. Relire. Je dois. Relire. Je dois. Relire. Je dois. Relire. Je dois. Relire.
romainl
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.