← Vim道場

回数をまとめて指定する

同じキーを何度も叩く代わりに、前に数字を置けばその回数ぶんまとめて実行できます。移動にも削除にも同じように付けられるので、ここまで覚えたキーがそのまま何倍にも効きます。

第3章 手数を減らすレッスン 12 / 36

数字はどこに置くか

回数は操作の前に置きます。3j5x2w のように「いくつ」「何をするか」の順です。オペレータと組み合わせるときは d3w(3単語ぶん消す)のように途中に置くこともでき、3dw と書いても同じ結果になります。

ただし 0 だけは行頭へ移動するキーなので、回数の先頭には使えません。10j のように2桁目以降に来るぶんには問題ありません。

数えるべきか、数えないべきか

画面を見て正確な行数を数えるのは意外と時間がかかります。3〜4行程度なら数えたほうが速いですが、それを超えるなら検索(/)や、行番号を指定する 42G のほうが確実です。

行番号を常に表示しておく(set number)か、カーソル行からの相対行数を表示する(set relativenumber)と、この数字が画面から直接読めるようになります。相対行数はまさにこの用途のための設定です。

回数は . にも引き継がれる

3dd で3行消したあとに . を押すと、また3行消えます。回数も含めて1つの変更として記録されるためです。

回数だけ変えて繰り返したいときは、. の前に数字を付けます。3dd のあと 5. と打てば、次は5行消えます。あとから指定した数が、記録されていた回数を上書きします。

数を打ち間違えたとき

数字を打っている途中で間違えたら、Esc を押せば入力中の回数が破棄されます。何も実行されないので、そのまま打ち直せます。

大きすぎる数を指定して実行してしまった場合も、u で1回戻せば元どおりです。回数を含めた1回の操作が、取り消しの1単位になっています。

回数を受け取らないキーもある

すべてのキーが回数を受け取るわけではありません。M(画面の中央へ)のように位置が1つに決まる操作や、0 のように数字そのものと衝突するキーは対象外です。

押しても数が効かないと感じたら、そのキーが位置を1つに決める種類のものではないかを疑ってください。移動量や繰り返しの概念があるキーは、ほぼ回数を受け取ります。

このレッスンで扱うキー

キー動き
3j3行ぶん下へ
4w単語4つ分先へ
3dd3行まとめて削除
5x5文字まとめて削除

関連記事

レッスン一覧へ戻るキーの逆引き一覧検定を受ける