remplacer le mot sous curseur-Vim
Comment remplacer un mot sous le curseur dans Vim.
donc au lieu d'utiliser dw
puis i
puis le mot et ensuite Esc
, y a-t-il une combinaison plus simple pour remplacer le mot sous le curseur?
5 réponses
ciw
(change inner word) va changer le mot entier sous le curseur. Comparer avec
cw
qui changera seulement le mot de la position actuelle du curseur . Pour plus d'informations, voir cette SORTE de question/réponse.
je me retrouve souvent à vouloir remplacer un mot par un autre que j'ai retiré d'ailleurs. Le problème avec les autres solutions est que si vous tentez de changer un mot, alors votre prochain coller sera être ce mot que vous avez supprimé avec cw
.
essayez ce qui suit:
1 "This first word should overwrite the second"
yiw yank inner word (copy word under cursor, say "first").
... Move the cursor to another word (say "second").
viwp select "second", then replace it with "first".
j'Espère que c'est ce que vous cherchez.
c je w
c change
iw inner word
supprimer le mot sous le curseur (même si le curseur est quelque part au milieu du mot) et entrer en mode insertion.
Voir aussi la documentation de Vim pour référence:
:help c
:help text-objects
si vous voulez changer un mot avec un mot déjà arraché, il y a une autre solution à viwp
(une fois que vous avez arraché le premier mot).
ciw
supprime le mot précédent et vous met en mode insertion où il était. Mais alors vous pouvez utiliser ctrl+r, 0
pour insérer le contenu du registre 0 (qui contient le mot précédemment retiré).
:
yiw
[move to next word]
ciw
ctrl+r
0
je préfère légèrement ceci à viwp
parce que ça ne passe pas en mode visuel et en surbrillance.
Essayer cw
- comme dans "changer de mot".
Utiliser http://linuxmoz.com/vi-commands-cheat-sheet/ ou toute autre feuille de triche comme une référence.