注意
この記事は vim 初心者が書いています。
あまり信じないでください。
対象
vimtutor などを通して基本操作を覚え、これから vim でコーディングしていくぞという人。
いろんな便利機能がほしいけどプラグインの導入や設定が面倒だと思ってしまう人。
対象でない人
時間をかけてでも自分に最適な vim を構築していきたいひと。
vimrc を育てることに快感や興奮を感じる人。
プラグインの設定が面倒
vim の基本操作を覚えた時点で、 vim を使ってコーディングができます。
しかし、きっとすぐに欲しい機能が出てくることになるでしょう。
ディレクトリツリーがほしい、スニペット機能がほしい、文法チェックしてほしいなどなど。
これらの欲求を満たすためにはプラグインを導入する必要があります。
vundle や neobundle のようなプラグインマネージャーを導入し、欲しい機能を持つプラグインを調べ、導入する。
この過程は楽しくもありますが、一方で大量の時間を消費することになるでしょう。
vim は時間をかければかけるほど素敵でセクシーに成長していくものの、もっと手軽に一通りの機能が揃っている環境が欲しい人もいるかと思います。
この記事で紹介するものはそんな人たちにおすすめしたいものです。
ディストリビューション
簡単にいうと便利なプラグインたちの導入や設定がすでにされている設定ファイル群です。
つまり vim がインストールされている状態が前提となります。
これを使えばプラグインの選定や設定をするフェイズをスキップすることで、コーディングまでの時間を短縮することができます。
また、ディストリビューションはあくまでもプラグインをまとめているものなので、各プラグインの詳しい操作や設定方法はそのプラグインのホームページで見ると良いでしょう。
spf13-vim
私が今使用しているものです。
インストール
自分の ~/.vimrc のバックアップをちゃんととったうえで、curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh && rm spf13-vim.sh
とコマンドを入力すると使用できるようになります。
また、内部で使用されているプラグインのために vim の lua を有効にする必要があります(方法はグーグル先生が教えてくれます)。
簡単な機能紹介(ほんのごく一部です)
Ctrl + hjkl でウィンドウ移動 。
C-e で左側にディレクトリツリーをだす [NERDTree] 。
C-p で vim のルートディレクトリからファイル名で検索をかける [ctrlp] 。
git コマンドを vim から叩ける [Fugitive] 。
<leader> キー(デフォルトでは , )を二回 を押して j, k, w, b などのモーションキーを押すと、画面上の任意な場所に簡単に飛べるようになる [EasyMotion] 。
これ以外にもたくさんの機能があるので詳しくは公式サイトをどうぞ。
自分の設定を追加したい
自分独自の設定は ~/.vimrc.local に書くと読み込んでくれます。
他のプラグインを導入することも可能で、それについてはまだ試していないため、公式サイトを見てください。
不具合
2017/2/11 現在、私の環境では補完の決定の挙動がおかしくなっています。
もしも同じ問題が起きた場合は、 https://github.com/spf13/spf13-vim/issues/819にかかれているように、inoremap <expr><CR> neosnippet#expandable() ? neosnippet#mappings#expand_or_jump_impl() : pumvisible() ? neocomplete#close_popup() : "\<CR>"
を ~/.vimrc.local に追加してください。
janus
使ったことないので名前だけ紹介します。
なんかいい感じらしいです。
Cream
こちらも使ったことがないので名前だけ紹介します。
番外編
Spacemacs
vim ではなく emacs のディストリビューションですが、 vim と同じように( 100% 再現できてるわけではないらしいが)操作できるので最後に軽く紹介します。
space から始まる魔法が強力な emacs の設定ファイル群です。
個人的には一番衝撃だったエディタ(の設定ファイル群)なので、一度試してみることをおすすめします。
デメリットとしては今まで育ててきた vimrc を生かせないことと、 vim のプラグインを使用できないことでしょう。
とはいっても Spacemacs はとても多くの機能を含んでいるので、困ることはあまりないかと。
誰か Spacevim を作ってください。
P.S
こういう文章を書くのは初めてなので読みづらさには多少目をつぶってください。
あと間違っているところがあればぜひ教えてください。