【ヴィム】

Vim とは?

💡 キーボードだけで光速編集!サーバー管理者の必須スキル
📌 このページのポイント
Vim のモード切り替え ノーマルモード カーソル移動 コピー・削除・検索 挿入モード テキスト入力 普通のエディタと同じ ビジュアルモード 範囲選択 ブロック選択 i Esc v Esc コマンドラインモード :w 保存 :q 終了 :wq 保存して終了 :
Vim のモード切り替えのイメージ
ひよこ ひよこ

Vimってよく聞くけど、普通のエディタと何が違うの?

ペンギン先生 ペンギン先生

一番の違いは「モード」があることだよ。普通のエディタはキーを押せばそのまま文字が入力されるけど、Vimは「ノーマルモード」と「挿入モード」を切り替えて使うんだ。ノーマルモードではキーが全部コマンドになるから、マウスなしで高速に編集できるよ

ひよこ ひよこ

マウスを使わないって不便じゃないの?

ペンギン先生 ペンギン先生

最初はそう感じるけど、慣れるとマウスに手を伸ばす時間がゼロになるから、実はすごく速いんだ。たとえば「dd」で1行削除、「/」で検索、「ciw」で単語を丸ごと置き換え、みたいに2〜3キーで操作が完結するよ

ひよこ ひよこ

サーバーでよく使うって聞いたけど、なんでなの?

ペンギン先生 ペンギン先生

ほぼすべてのLinuxサーバーにviかVimが最初から入っているからだよ。SSHでリモートサーバーに接続したとき、設定ファイルをちょっと直したい場面がよくあるんだけど、GUIエディタは使えないからVimの出番になるんだ

ひよこ ひよこ

「Vimから抜けられない」ってネタをよく見るけど、あれは何なの?

ペンギン先生 ペンギン先生

Vimを初めて開いた人が終了方法が分からなくてパニックになる、っていうあるあるネタだね。実は「:q」で終了、「:wq」で保存して終了なんだけど、ノーマルモードで「:」を押す発想がないと詰むんだ。Stack Overflowの「Vimの終了方法」は100万回以上閲覧された伝説の質問だよ

ひよこ ひよこ

Neovimっていうのもあるみたいだけど、Vimと何が違うの?

ペンギン先生 ペンギン先生

NeovimはVimのコードベースをフォークして、モダンな設計に作り直したものだよ。Luaプラグインが書けたり、LSP(言語サーバー)を標準サポートしていたりして、IDEに近い機能を実現しやすいんだ。最近はNeovimをメインにするエンジニアもかなり増えているよ

ひよこ ひよこ

Vimってそんなに歴史が長いのに、まだ使われてるってすごいね!

ペンギン先生 ペンギン先生

viの誕生が1976年、Vimは1991年で、30年以上の歴史があるね。それでも開発が続いているのは、モーダル編集というコンセプトが本質的に効率的だからだよ。実際、VSCodeにもVim風の操作を再現するプラグインがあって、エディタが変わってもVimの操作体系だけは使い続ける人が多いんだ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Vim」って出てきたら「キーボードだけで操作するターミナル上のテキストエディタ」と思えればだいたいOK!
📖 おまけ:英語の意味
「Vi IMproved」 = 改良版Vi
💬 1976年に作られたエディタ「vi」を改良したものだから「Vi IMproved(改良版Vi)」という名前なんだよ
← 用語集にもどる