web-dev-qa-db-ja.com

カーソルの下の1つのWordを置き換える方法は?

Vimのカーソルの下にあるWordを置き換えるにはどうすればよいですか。

したがって、dw、次にi、次にWord、次にEscを使用する代わりに、カーソルの下のWordを置き換えるより単純な組み合わせがありますか?

121
sayth
ciw

(内側の単語を変更)は、カーソルの下の単語全体を変更します。と比べて

cw

wordは現在のカーソル位置からのみ変更されます。詳細については、 this SO question/answerを参照してください。

209
Brian Agnew

ある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". 

それがあなたが探していたことを願っています。

74
Ethereal

ciw

c   change
iw  inner Word

これにより、カーソルの下にあるWordが削除され(カーソルがWordの中央にある場合でも)、挿入モードに入ります。


参照用にVimのドキュメントも参照してください。

:help c
:help text-objects
30
Xophmeister

以前にヤンクしたWordでWordを変更する場合は、viwpに別の解決策があります(最初のWordをヤンクした後)。

ciwは、前のWordを削除し、以前のWordを挿入モードにします。ただし、ctrl+r, 0を使用して、レジスタ0(以前にヤンクしたWordを含む)の内容を挿入できます。

そう:

yiw
[move to next Word]
ciw
ctrl+r
0

これは、最初の使用後に.との置換を繰り返し実行できるため、viwpよりもうまく機能します。また、視覚モードに切り替わり、簡単に強調表示されません。

10
connor

「Change Word」のように、cwを試してください。

http://linuxmoz.com/vi-commands-cheat-sheet/ またはその他のチートシートを参照として使用します。

1