ノーマルモード
Vimの起動直後のモードで、基本となるモードです。
カーソル移動や編集操作ができます。
ビジュアルモード
文字列を選択するためのモードです。
ビジュアルモードへ移行した時点のカーソル位置を起点として、
カーソル移動で範囲指定することができます。
選択範囲は、ハイライト表示されます。
その後、編集操作を行うと選択範囲に操作を適応することができます。
ビジュアルモードへの移行は、
- v : 文字単位
- V : 行単位
(Ctrl押しながらv) : 矩形単位
で、移行することができます。
オペレータペンディングモード
編集操作コマンド入力後、範囲指定を待っているモードです。
範囲指定については、ビジュアルモードと同様にカーソル移動で行えますが、
1つのモーションしか受け付けないため、例えばカーソル位置から下3行削除する場合、
以下の様に、カウントを利用しなければなりません。
d3j
インサートモード
文字列入力を行うモードです。
インサートモードへの移行は、
- i : 文字列挿入
- a : 文字列追加
- A : 行末尾に文字列を追加
などで、移行することができます。
コマンドラインモード
[:]や検索及び置換で利用する[/][?]等を入力することで、
最下行にコマンド入力ができるモードです。
まとめ
viの特徴であるモードについてまとめました。
モードの存在によって、viの敷居が高いという評価もありますが、
テキスト操作を効率良く行うために準備されています。
モードをちゃんと理解した上でviに触れることで、
キーボード上の指の移動量が、他のエディタと比べて少ないことが実感できると思います。
是非とも、viを使いこなして快適なライティング環境を手にしてください(・ω・)ノシ