如何在Vim中替换光标下的单词。
所以不是使用dw
然后使用i
,而是使用单词然后Esc
,是否有更简单的组合来替换光标下的单词?
答案 0 :(得分:207)
答案 1 :(得分:71)
我经常发现自己想要将另一个词替换为我从其他地方拉过来的另一个词。其他解决方案的问题在于,如果您尝试更改某个字词,那么下一个粘贴将 您使用cw
删除的该字词。
尝试以下方法:
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".
希望这就是你要找的东西。
答案 2 :(得分:30)
C 我 瓦特
c change
iw inner word
这将删除光标下的单词(即使光标位于单词中间某处)并进入插入模式。
另见Vim的文档以供参考:
:help c
:help text-objects
答案 3 :(得分:7)
如果您想用之前被拉的单词来更改单词,则viwp
还有另一种解决方案(一旦您拉了第一个单词)。
ciw
删除前一个单词,并使您进入原来的插入模式。但是随后您可以使用ctrl+r, 0
来插入寄存器0的内容(其中包含先前被选中的字)。
所以:
yiw
[move to next word]
ciw
ctrl+r
0
这比viwp
更好,因为在首次使用后,您可以重复使用.
进行替换。它也不会切换到可视模式并短暂突出显示。
答案 4 :(得分:1)
尝试cw
- 与“更改字词”一样。
使用http://linuxmoz.com/vi-commands-cheat-sheet/或任何其他备忘单作为参考。
答案 5 :(得分:0)
要复制光标下的单词,请按:bvey
要替换光标下的单词,请按:bvep