← Vim道場

書き換える

消してから入力し直す、という2手を1つにまとめたのが c です。範囲の指定の仕方は d とまったく同じで、消したあとそのまま入力できる状態になります。入力を終えるときは Esc です。

レッスン 7 / 17

なぜ d と i を分けずに c があるのか

cwdw のあと i を押すのとほぼ同じですが、まったく同じではありません。dw は次の単語の手前まで(後ろの空白まで)消すのに対し、cw は単語の末尾までしか消しません。つまり ce と同じ動きです。

単語を差し替えるときに後ろの空白まで消えてしまうと、入力後にもう一度空白を打ち直すことになります。cw がこの特例を持っているのはそのためで、Vimの中でも珍しい「使われ方に合わせた例外」です。

入力を終えるキー

入力中は Esc でノーマルモードに戻ります。ノーマルモードに戻って初めて、u での取り消しが「その入力ひとかたまり」を単位として効くようになります。

Esc が遠いキーなので、jjCtrl-[ を代わりに割り当てる人も多くいます。Ctrl-[ は設定なしで最初から Esc と同じ働きをします。

このレッスンで扱うキー

キー動き
cw単語1つ分を書き換え
c$行末まで書き換え
cc1行を書き換え
Esc入力を終える

関連記事

レッスン一覧へ戻る