Vimのカーソルの下にあるWordを置き換えるにはどうすればよいですか。
したがって、dw
、次にi
、次にWord、次にEsc
を使用する代わりに、カーソルの下のWordを置き換えるより単純な組み合わせがありますか?
ciw
(内側の単語を変更)は、カーソルの下の単語全体を変更します。と比べて
cw
wordは現在のカーソル位置からのみ変更されます。詳細については、 this SO question/answerを参照してください。
あるWordを他の場所からヤンクした別のWordに置き換えたいと思うことがよくあります。他のソリューションの問題は、Wordを変更しようとすると、次の貼り付けがbecw
で削除したWordになることです。
以下を試してください:
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".
それがあなたが探していたことを願っています。
ciw
c change
iw inner Word
これにより、カーソルの下にあるWordが削除され(カーソルがWordの中央にある場合でも)、挿入モードに入ります。
参照用にVimのドキュメントも参照してください。
:help c
:help text-objects
以前にヤンクしたWordでWordを変更する場合は、viwp
に別の解決策があります(最初のWordをヤンクした後)。
ciw
は、前のWordを削除し、以前のWordを挿入モードにします。ただし、ctrl+r, 0
を使用して、レジスタ0(以前にヤンクしたWordを含む)の内容を挿入できます。
そう:
yiw
[move to next Word]
ciw
ctrl+r
0
これは、最初の使用後に.
との置換を繰り返し実行できるため、viwp
よりもうまく機能します。また、視覚モードに切り替わり、簡単に強調表示されません。
「Change Word」のように、cw
を試してください。
http://linuxmoz.com/vi-commands-cheat-sheet/ またはその他のチートシートを参照として使用します。