Vim のすゝめ
EmacsからVimへ
結論から言うと、Ctrl、altを押すのが苦手な人は一度
Vimを使ってみてください。
僕は学部生の頃から修士課程まで、何の疑いもなくemacsを使ってきました。
しかし、博士課程になり、
自分で 1 からコードを書くよりは、他人の大量のコードと睨めっこして
文字入力より、文字編集の時間が長くなったのをきっかけに、
テキストエディタの使用感、補完機能などを気にするようになっていきました。
そんな時、vimmer(Vimを愛用している信者)の先輩にvim を勧められ
まんまと術中にハマってしまい、今では、
google chromeの操作までvimライクになってしまったほどです。
Vimとは
Vim(ヴィム。「ヴィアイエム」という読み方は誤り)は、vi から派生し、発展した高機能なテキストエディタである。
by wikipedia
他のテキストエディタと大きく違うところは、以下の4つのモードを切り替えて使用すると言うところだと思います。
- インサートモード(文字入力)
- ノーマルモード(カーソル移動等)
- ビジュアルモード(範囲選択)
- コマンドモード(置換などのコマンド機能)
vim始めたての頃は以下のサイトにお世話になったので、vimに興味を持った人は是非見てみることをお勧めします! knowledge.sakura.ad.jp
Vimに少し慣れた頃に読んで、すごくためになった本は
「実践Vim 思考のスピードで編集しよう!」です! 正直、細かすぎるくらいのTipsに分かれており、言葉の節々に著者の人のVim愛が溢れすぎていました。笑
Vimへの姿勢
Vimを始めたばかりの頃は、「モードの切り替え煩わしいわー」ってなる人が居ると思います。
僕がオススメするVimへの姿勢は、
全ての動作を覚えて、最適に使用しようと力み過ぎずに、
一つずつ手に馴染むコマンドを増やしていくイメージで取り組むこと
です。
Vimへの入り方としては、以下の流れがいいのかなと思います。
キーバインドの変更
例 ESC→jjとかjk主要な動作だけ覚える
例 ciw(カーソルがある単語を削除して入力モードになる)
xp(文字の入れ替え) この記事の最後のgifで実際に使っています。
上にあげた本などを参考に手に馴染むキーを増やしていく
という姿勢がいいと思います。
よく使うTips集みたいな記事も書こうと思っています!
世の中には様々な便利機能のプラグインを公開してくれている方々が沢山いるので、
自分が不便に思った動作などはぐぐると大抵、何かしらのプラグインがあります。
⚠︎プラグインは探し出すとあれもこれもと沼にハマる危険があります。
オススメのプラグインについても記事を書こうと思っています!
Vimでの編集の様子
実際のVimの編集の様子をgif にしました。
vimの見た目はがっつりプラグイン等でカスタマイズしているので
そこは後々記事で共有できればと思います。
やってることは
oでインサートモードになり、
testと入力し
jk(ESC)でノーマルモードに戻り
ciwでtestを削除してインサートモードになり
tsetと入力しjkでノーマルモード
hhでsにカーソルを持っていきxpでsとeを入れ替え
Vimのデメリット
vimに魅せられてしまった僕は、
wordなどの入力で間違えて:wを打ったり、文章の初めにiが入っていたりと
vimの呪いにかかってしまいました。
またリモートでのミーティングが増えた昨今ならではの体験として
zoom等のホワイトボード機能を使用しているときに
公衆の面前で、文末にことあるごとにjkと入力するやばい人になったこともありました。笑)