VIMは主にLINUX環境下で使われるテキストエディタです。
非常に癖があって、未経験の人にとっては異世界の産物のように見えますが、ある程度使って行けば自転車の乗り方を覚えるようにスムーズに操作できるようになります。
VIMのいいところは
・読み書きが非常に速い(通常、膨大な量のJSONなどを読み書きすると処理落ちする)
・キータッチする範囲がせまいため、指への負担が少ない
・.vimrcを書き換えるだけである程度素敵なカスタムが出来る(来夢のカスタマイズはウィジェットが関わることがあって面倒だしものによっては重くなる)
ということがあげられます。
最近はVSCodeなどに移っていってVIMから離れる人、最初からVIMを使わない人も結構いるようですが、コーディングをしないにせよ、Linux内のファイルを開いたり編集したりすることを考えると覚えておくに越したことはありません。
以下、VIMなんて経験ないよと言う人が、まず「使ってみたいな」という人のためのイントロ的な部分について説明します。
これだけ覚えておけば、コーディングではないちょっとした文章加工程度なら苦労なくできるようになります。
0.全機能をいきなり使いこなすのは無理
VIMにはいろいろな機能があり、現時点で使い始めて1年足らずの筆者も恐らくポテンシャルの三分の一も使えていません。
リンク先に「一か月でガチVIMMER」という記事がありますが、少なくともこの領域には達していません。
まあ、どういうカスタマイズが便利で、どんなコマンドを使いたいのかとなると、それは人によって変わってくるので、個々人で少しずつ使えるコマンドを増やしていくことが重要です。
1.コマンド初歩の初歩
とりあえず最初は以下のコマンドだけは頑張って使いながら作業してみましょう。できるならば他にも使うコマンドを増やせばいいが、「一か月はこれだけを徹底的に使ってみる」というスタンスでも構わない…と思います。
・「iまたはo」と「ESC」
編集モードとコマンドモードの切り替え。これを使わないと何もできない。
・「:w」と「:q」
セーブと、VIMから抜けるコマンド。これもないと何もできない
・「hjkl」
上下左右への移動。方向キーを使うのは邪道だそうですが、多少そっちに手が行ってしまうのは仕方ない…と思う。
縛りプレイを徹底すれば上達は早まる。
・「yy」「dd」「p」
コピー、切り取り、貼り付け。行丸ごと対応してくれる。
これは無理してでも使いこなせるようになるべき。
ちなみに「数字+yy」で指定した行数をコピーしてくれる(ddも同じ)
・「gg」「G」
最後尾行ないし、先頭行へワープ。
・「shift+v」または「ctrl+v」
複数行または一行の任意文字数を選択。その後yyなりddなりできる。
張り付ける位置には若干癖がある。
・「/(文字列)」と「n」
「/」から文字列を入力してエンターを押すと、文字列の場所にワープします。あとはnを押し続けると次の候補に飛んでいきます。
とりあえず、上記のコマンドを徹底的に使ってみること。あとは、自分のペースでできることを増やしていく。
2.vimrcの設定
自分のルートディレクトリに「.vimrc」というファイルを作り、その中に好きな設定を書く。好みの設定は本当に人それぞれなので、以下のリンクあたりを参考にして取捨選択していけばいいです。
ただ、とりあえずは「set cursorcolumn」で、行末尾の一つ右までカーソルを移動できるようにしないと非常に不便だと思います。