どらねこへいとくるー

we're doraneko hate crew

vi / vim を初めて触るレベルの人が最初に習得すべき12個の操作

はじめに、 たまにVimを触る必要があるけどあんまり積極的に触りたくない 人に向けた記事ではないです。 Vimを習得したいけど情報多すぎるし、とりあえず何を覚えるのが良いの? みたいな人に向けています。

vi / vim という魔物エディタと戦うために最低限まずはこの12個知っておけば良いんじゃないかな、という操作です。本当は10個にしたかったんですが絞りきれませんでした。

当然「いや u くらいは…」「 Ctrl 絡みのキーバインドが無い…」とかあるんですが、それは2歩目ということでこの記事では1歩目だけに絞りました。

1歩歩き出せれば、2歩目を踏み出すのは容易だろうと思います。

カーソル移動系

vi / vim を起動すると ノーマルモード になっており、まず編集したい箇所までカーソルを移動します。

  • 1 h … 左
  • 2 j … 下
  • 3 k … 上
  • 4 l … 右

ノーマルモード→インサートモード

編集したい箇所までカーソルを移動したら、文字を入力するために インサートモード に変更します。

  • 5 i … カーソル位置に文字入力
  • 6 a … カーソル位置の右に文字入力
  • 7 o … カーソル位置の下に文字入力

インサートモード→ノーマルモード

文字の入力が終わったら ノーマルモード に戻ります。

  • 8 Esc … ノーマルモードに戻る

文字削除

ノーマルモードの状態で削除したい文字にカーソルを移動して削除をします。

  • 9 x … 1文字削除
  • 10 dd … 1行削除

終了

編集が終了したら vi / vim を終了します。

  • 11 :wq … 保存して終了
  • 12 :q! … 保存しないで終了

追記・undo/redoくらいはさせて!

と言われたのでオマケ。古臭い環境の古い vi や、busybox の vi なんかだと使えない場合もあります。

ちなみにノーマルモードでおこなってください。

  • u … アンドゥ
  • Ctrl+r … リドゥ

「なんか変になっちゃった!」→ Escu で元に戻る!という使い方は非常に多い気がします。

最後に

この12個を知ってれば一通りの編集が出来るようになります。 はじめはノーマルモードとインサートモードという概念がわかりづらいので、慌てず今自分がどのモードで操作をしているのかを念頭に置いて作業すると良いです。

そしてどの状態でも Esc を押せばノーマルモードになります。これはとても重要。ワケわからなくなったら慌てずに Esc を押しましょう。

そして次のステップへいくためにお手元のターミナルでおもむろに vimtutor と打って実行してみてください。

追記

生き残る というレベルから Vimの強大な力 を感じるに至るまでの Vim との触れ合い方を書いてくださっている記事がとっても良いのでリンク貼らせていただきます。ご参考までに。