44
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Vimを開いて閉じられず、半泣きでPCを再起動したあの日の私へ捧ぐ

44
Posted at

はじめに

Linuxを触り始めたビギナーにとって、避けては通れない最強のトラップ。
それが「Vim(またはVi)エディタの脱出不可現象」です。
設定ファイルをちょっと書き換えようと思って、軽い気持ちで叩いたこのコマンド。

vi nginx.conf

画面が切り替わり、よし文字を打とう…と思っても、なぜか打てない。
A とか I とか打つと変な風に文字が入るけど、バックスペースで消せない。
「やばい、なんかファイル壊しちゃったかも!とりあえず閉じてやり直そう!」
そう思い Esc キーを連打するも、何も起きない。
伝家の宝刀 Ctrl + C を押しても無視。
ウィンドウの右上に「×」ボタンなんて無い。
「どうやって閉じるのこれえええええ!!」
完全に牢獄に閉じ込められ、最終的にターミナルを強制終了する(酷い時はPCごと再起動する)しかなかった、あの日の恐怖。(まじで何回かあって思い出すだけでイライラする)
今回は、全世界のエンジニアが一度は通る「Vimの呪い」の正体と、スマートな脱出方法を伝授します。

Vimのモードは「銃の安全装置」と思え

なぜ普通に文字が打てないのか? なぜ閉じられないのか?
それは、Vimが他のメモ帳とは全く違う「複数のモード」を持っているからです。(多分この仕様が人気の理由なのかな)
Vimを起動した直後、あなたは「ノーマルモード」という状態にいます。
これは例えるなら、「銃の安全装置がかかっている状態」です。
ノーマルモードでは、キーボードのキーを押しても「文字(弾)」は出ません。その代わり、x で一文字消したり、dd で一行丸ごと切り取ったり、u で元に戻したりといった、「強力なファイル操作コマンド」が一発で出せる状態になっています。
文字を打とうと適当にキーボードをガチャガチャやるとファイルがメチャクチャになるのは、「文字を入力した」のではなく「Vimの様々なショートカットコマンドが大暴発した」からなのです。(当時の自分思い出すとなんか大暴発ってジわるなww)

安全装置を外す魔法のキー i

文字を入力したい時(弾を撃ちたい時)は、安全装置を解除して**「インサートモード(挿入モード)」に切り替える必要があります。
やり方は簡単。キーボードの小文字の i(Insertのi)を1回押すだけです。
画面の左下に -- INSERT -- (または -- 挿入 --)と表示されたら、見慣れた普通のメモ帳と同じように文字が打てるようになります。
そして、打ち終わったら
すぐに Esc キーを押して、再び安全装置(ノーマルモード)に戻す**。
Vimを使いこなす人は、息をするようにこの iEsc を行ったり来たりしています。

ついに明かされる脱出方法

さて、Vimのモードの概念が分かれば、脱出方法は至極単純です。
「ファイルを閉じる」というのは操作(コマンド)なので、安全装置がかかったノーマルモードで指示を出す必要があります。

  1. まず Esc キーを数回叩く。(確実にノーマルモードに戻るためのおまじないです)
  2. キーボードで : (コロン) を打つ。(画面の左下に : が出ます)
  3. 続けて脱出コマンドを入力し、Enter をターンッ!と叩く。

覚えておくべき脱出コマンドは2つだけ

  • :wq (Write & Quit)
    今書いた内容を**「上書き保存して、終了」**する。一番よく使います。
  • :q! (Quit!)
    間違えて変な文字を打っちゃった!保存したくない!という時の**「保存せずに強制終了」**。この ! には「ええい、変更なんか破棄じゃ!」という強い意志が込められているようですね。

おわりに:「ただの使いにくいメモ帳」が「プロの道具」に変わる時

「ただ文字を打つだけなのに、なんでこんな面倒くさいの!?」とキレかけていた私。
しかし、仕組みを理解し、モードの切り替えに慣れてくると、世界が一変しました。
マウスに一切手を伸ばさず、カーソルの移動も、コピペも、不要な行の一括削除も、すべてホームポジションに指を置いたまま爆速で完了できる。
Vimは「使いにくいメモ帳」ではなく、「キーボードから手を離したくないギークのための、職人の道具」だったのです。
閉じられない恐怖を克服したあなたはもう大丈夫。
どんなサーバーにログインしても最初から確実に入っているであろうVimは、あなたを支える最強の相棒になるはずです。
今日からあえて vi コマンドでファイルを開き、カチャカチャッ…ターン!と :wq をキメてドヤ顔していきましょう!無理ならnanoへ!!!!

44
8
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
44
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?