0
votes

VIM Key Reliure Pour appeler une fonction avec entrée de l'utilisateur

Il pourrait y avoir une solution simple pour cela. Je ne pouvais trouver aucune solution à ce sujet (je pourrais rechercher un mauvais contexte)

Voici mon exigence.

J'ai écrit le mappage de clé ci-dessous dans VIMRC. Il devrait imprimer la ligne " Bonjour user_name. " N fois, où N et User_Name sont la saisie de l'utilisateur une fois que la touche est enfoncée. xxx

sur appuyer sur l'utilisateur clé entre 3 et "Ironman". La sortie serait comme xxx

merci d'avance

vim

0 commentaires

3 Réponses :


0
votes

obtenu la réponse. Juste au cas où quelqu'un d'autre cherche une solution similaire xxx

imprimera la commande et attend que l'utilisateur modifie. Une fois que l'utilisateur modifie et entre il est exécuté


0 commentaires

0
votes

Une approche plus simple consiste à simplement utiliser un mappage non pour préparer la commande ex sans l'exécution: xxx

si vous associez avec un Filetype (comme "Ruby" dans votre cas), assurez-vous de créer un Cartographie locale en utilisant . Sinon, la cartographie sera globale et fonctionnera sur chaque tampon et non seulement celles avec des fichiers source rubis.

Si vous utilisez un autocmd dans votre VIMRC, assurez-vous de l'envelopper AugRoup pour éviter d'obtenir des commandes dupliquées si vous rechargez Votre VIMRC.

Vous pouvez également ajouter des mappages en filetype pour RUBY dans un fichier ~ / .vim / ftplugin / ruby.vim qui est automatiquement chargé par Vim chaque fois qu'un fichier de type Ruby est chargé. (De cette façon, vous n'avez pas besoin d'utiliser explicite autocmd s, VIM prendra soin de ces détails sur votre nom.)


0 commentaires

0
votes

Penser en dehors de la boîte un peu (interroger le principe), peut-être le meilleur dans ce cas est de définir un commande définie par l'utilisateur au lieu d'une cartographie.

Vous pouvez définir une ici avec: xxx

de cette façon que vous pouvez utiliser Il avec: xxx

Si vous omettez le compte, 1 sera utilisé. (Vous pouvez choisir une différence par défaut comme argument à -count = n .)

Vous pouvez utiliser l'onglet Achion pour Funcprnt , donc peut-être? Code >: 3FU ou même : 3f peut suffire pour compléter la commande.

Ceci pourrait finir par être plus rapide ou plus pratique pour taper que 3 , car il n'implique pas de déplacer votre main sur les touches fléchées.


0 commentaires