Dans Vim, remplacez toutes les occurrences du terme actuel sous le curseur
Si vous appuyez sur la touche * dans Vim, l'éditeur va chercher la prochaine occurrence du terme dans le même fichier. Il vous évite d'avoir à taper le terme.
Est-il un moyen rapide de remplacer le terme actuellement sous le curseur avec un nouveau? Un personnage à la commande, en tapant le nouveau terme, Entrée.
- Vous pouvez également utiliser n pour suivant match, et b pour retour (précédent) match.
- seulement
n
fonctionne pour moib
remonte à défaut (début du mot)#
fonctionne pour moi comme prévu, ce qui remonte à la période précédente. - désolé Johnny, j'ai été élevé sur la colle. c'est
n
pour la prochaine etN
pour la précédente. C'est écrit sur mon clavier donc je ne sais pas comment je l'ai eu tort.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser:
où
<c-r><c-w>
signifie littéralement type CTRL-rCTRL-w pour insérer le mot sous le curseur.Suffit d'utiliser * et ensuite:
Si vous ne spécifiez pas un modèle, la commande de substitution utilise la dernière cherché un.
Selon la valeur de
gdefault
dans votre configuration, vous devrez peut-être ajouter un/g
modificateur de la commande.new value
contient un&
ou un/
, juste échapper avec `\`.:se gd
est une évidence, une fois que vous savez à ce sujet.:se gd
ou:set gdefault
indique à vim pour traiter chaque modèle, comme si elle avait un /g modificateur à la fin (plus précisément, il inverse le sens de l' /g drapeau, donc si vous l'utilisez avecgdefault
actif, il permet de désactiver l'effet)function_with_a_long_name
et je dois remplacer tous les cas, avecself.function_with_a_long_name
?En plus des autres réponses, vous pouvez raser quelques touches en ajoutant le code suivant à votre .fichiers vimrc pour faire une recherche globale et de le remplacer.
Je suis allé de l'avant et de fouettée en place un plugin qui vous permet de vous suffit d'entrer le suivant:
https://github.com/chiedojohn/vim-dr-replace