Posted at

仕様としてのVim

More than 1 year has passed since last update.


エディタとしてのVim

エディタとしてのVimは確かに良いものだと思う、それでもやっぱり最近のエディタと比べると機能不足だなぁと思う部分もある。プラグインを使えばいろいろできるし、シンプルだからこそいいということもあるけど、自分の場合はプラグインはほぼまったくといっていいほど使わないし、設定ファイルも最低限しか書かない。というのも結局のところ自分がVimに求めているのはVim特有の編集のしやすさや使い勝手なんだと思う。単純にプラグインを導入していない、設定ファイルもあまり書いていない状態のVimと同じくらいのスピードで編集できるなら別にVimでなくてもいいってことになる。


Vimでなくてもいいのでは?

決して自分はVimのアンチなんかではない、Vimは素晴らしいエディタだとおもう。それでもVimというひとつのソフトウェアにその能力を閉じ込めておくのはもったいないと思う。Vimを使うことによって得られる編集スピードと例えばEclipseのようなIDEを使うことによって得られる開発効率と、両方のメリットを得られたら素晴らしいのではないかとおもう。

この考えにいたったのはAtomのvim-modeやEclipseのvrapper、EmacsのEvil、VisualStudioのVsVimを使ってみてからだ、どれも優秀なプラグインで、まるでVimであるかのような操作感と編集スピードが得られた。

さらに最近では新しいVimとしてNeoVimの開発が進んでいる、ますます本家Vimを使う必要はなくなってきてしまったのではないかと思う。


仕様としてのVim

ここまできて言いたいのはVimはECMAScriptやHTMLのように仕様としてまとめて様々なIDEやエディタに組み込めるようにしておくといいんじゃないかってこと。そうすればたとえばIDEのFeatureに「Support: Vim Level 1」とか書いておけばどんな操作感まで可能なのかわかるし、IDEやプラグイン開発者もVim互換な機能を作りやすい、NeoVimのようなプロジェクトももっとできて、いろいろなエディタやIDEでVimの操作感を使えるようになるんじゃないかな、ちょっとだけそんなことを思ってみた。