Est - il possible que , t{char}
et f{char}
continuera à travailler dans les lignes suivantes si {char}
n'est pas présent dans une ligne donnée?
Je voudrais éviter d'utiliser /{char}<CR>
pour enregistrer 1 frappe et pour ne pas avoir de surbrillance de recherche, surtout lorsque j'en ai besoin en combinaison avec des verbes (par exemple dfa
, ct.
).
cursor-motions
cbaumhardt
la source
la source
d/a
pour supprimer au suivanta
etc/.
pour supprimer au suivant.
. Si vous l'utilisezhlsearch
et que vous ne le souhaitez pas lorsque vous effectuez cette opération, vous pouvez créer un mappage qui effectue votred/
opération, puis désactive la mise en surbrillance (se termine par:nohlsearch
).g:clever_f_across_no_line
la valeur 0 et d'autres options activées / désactivées à volonté).Réponses:
J'utilisais également dahu / vim-fanfingtastic depuis un certain temps et je l'ai trouvé très utile. Il supporte les répétitions sémantiques
.
grâce à la bibliothèque tpope / repeat.vim que vous devez également installer.Une alternative est chrisbra / améliorationft qui fait plus ou moins la même chose.
rhysd / clever-f.vim a une option pour activer la recherche sur plusieurs lignes, bien que sa principale caractéristique soit de permettre
f
de répéter la recherche en cours, comme c'est;
déjà le cas.Ceux-ci manipulent tous
;
et les,
clés comme prévu.L' inconvénient avec plusieurs lignes
f
ett
que si vous appuyez sur la mauvaise touche, vous serez pris hors de la ligne actuelle à un endroit inattendu dans le fichier. Ctrl-Opeut aider dans ces moments. (Cela peut être dangereux avec unc
changement si vous ne réalisez pas que vous venez d'avaler quelques lignes, mais ce ne sont que des problèmes de dentition pour moi.)Il existe d'autres plugins associés, avec des approches légèrement différentes, tels que justinmk / vim-sneak et goldfeld / vim-seek qui demandent deux caractères , ce qui rend plus facile (mais toujours pas garanti) d'atteindre votre emplacement cible.
Et puis il y a easymotion / vim-easymotion . Cela offre de nombreuses touches de mouvement puissantes , dont certaines nécessitent une ou deux touches supplémentaires pour confirmer le personnage cible lorsqu'il y a beaucoup de candidats.
Mais actuellement, j'utilise une solution maison. J'ai travaillé avec l'auteur d'EasyMotion pour créer
f
ett
flasher des marqueurs sur tous les personnages correspondants devant vous.Cela agit comme un assistant de comptage naturel pour les mouvements de vanille vim. Lorsque vous essayez de vous déplacer quelque part,
fx
mais que vous découvrez ensuite qu'il y a plus dex
s que vous ne le pensiez, vous pouvez lire le nombre qui a clignoté sur le personnage que vous visiez, puis faire[count];
pour y sauter.Vous pouvez trouver la succursale ici . Assurez-vous de lire la section Ajouter des conseils utiles pour configurer les mappages de touches.
Cependant, pour les
c
opérations de changement, il est toujours préférable de bien faire les choses la première fois . Dans ces cas, je recommande de passer une frappe supplémentaire env
mode visuel ou d'utiliser l'un des sauts garantis d'EasyMotion.la source
il y a un plugin qui fait ce que vous semblez vouloir, comme l'a déclaré VanLaser.
https://github.com/dahu/vim-fanfingtastic
Il nécessite maintenant le plugin de répétition pour fonctionner correctement, vous en aurez donc également besoin:
https://github.com/tpope/vim-repeat
la source