vim最近使い始めました。自分が使い始めたのはneovimなのですが、その良さを使い始めてわかってきたので紹介したいと思います。(vim,neovimの違いはまだよくわかってないのでそのうち調査します)
pluginを追加することで快適な環境を作成できる!
vimを使い始めて、最初に気づくのは以下だと思います
- terminal内にエディタが開く
- modeを変えないと入力できない
- 行数がついてない
- 補完が効かない
- コピペ、保存などの操作がめんどくさい
vscodeなどのウィンドウで開くエディタを使い慣れている人には使いづらく感じたのではないでしょうか?ここで使用するのをやめてしまうユーザもいると思います(以前の自分がそうでした) しかし、ここでやめてしまうのはもったいない。vim pluginの存在があるからです!vimにはほかのユーザが作成した便利機能をpluginとして取り込み、自分の環境でも利用できるようにする仕組みがあります。このプラグインを活用することでストレスのない、自分好みの環境を構築することができます。
私はplugin managerにdeinを利用しているのですが、以下のような記述を行えば簡単にpluginをインストールできます(deinの設定は別途必要)。
[[plugins]]
repo = "Yggdroot/indentLine"
hook_add = """
source ~/.config/nvim/plugins/indentLine.rc.vim
"""
[[plugins]]
repo = "neoclide/coc.nvim"
hook_add = """
source ~/.config/nvim/plugins/coc.rc.vim
"""
sourceでそのpluginに関する設定を変えることができます。
自分好みのpluginを探すことはとても楽しく、その機能を普段のプログラミングで享受できるのはとても楽しいです。
tmuxとの相性が良い
複数環境で開発しなければならない場合、vscodeだったらその数分だけウィンドウを開かなければならないと思います。ウィンドウが多いとその中から、目的のウィンドウを探すのが面倒になると思います。そこでtmuxの出番です。tmuxは複数の端末を一つのターミナルで仮想的に起動できます。この機能を利用し複数環境を一つのターミナルで立ち上げ、ウィンドウを切り替えるなどして管理ができます。このような環境においては編集がterminalのみで完結するvimが相性が良いです。
なんかかっこいい
これは個人の感想なのですが、vimのようなちょっと操作を覚えないと扱えないようなツールを使いこなすのはかっこいいです。なんとなくの印象なのですが、つよつよエンジニアの人はvim使ってる人が多い気がしていて、自分もその人たちと同じツール使ってるんだ!っていう満足感みたいなのもあったりします。
感想
いままで敬遠してきたvimですが、実際触れてみるとその良さが伝わってきました。やはり食わず嫌いはよくないですね。vimに限らず何かを敬遠して、その恩恵を取りこぼすというのはよくないので、どんどんいろんなことを経験していきたいと思います。
参考
https://github.com/tmux/tmux/wikij