プラグインでVimを拡張したいけど……
一部のデフォルト厨の方を除き、Vimを素で使うのは些か物足りない人が多数だと思います。
プラグインを使って拡張したいと思ってプラグインマネージャー調べると「NeoBundle」やら「Vundle」やら「dein」やら「pathogon」やらetc...がヒットします。
使い方を見るといろいろな機能が実装されていてとても便利そうです。
しかし、私のようなライトユーザーやミニマリストの方は「いや、プラグインインストールするだけでいいんだよ!」となるわけです。
設定項目が多すぎるとそれだけで挫折してしまうのです。(ですよね?)
そんな方たちにおすすめしたいのが「vim-plug」というプラグインマネージャーです。
シンプルで高速!プラグインマネージャー「vim-plug」
公式ページでも挙げられているように、vim-plugの特徴は「シンプルな操作」と「高速な動作」です。
vim-plug自体のインストールは簡単で、MacやLinux環境なら
$ curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
で終わりです。NeoVimやWindowsユーザーの方は公式のInstallationを参考にしてください
並行ダウンロードが搭載されているためプラグインを爆速でインストールできます。
また、必要なときにプラグインをロードする「オンデマンドローディング」アーキテクチャを採用しているのでVim自体のロード・動作を早く(正確には最適化)することもできます。
ですが、そんなことは我々ライトユーザーには関係ありません。
私達が欲しい機能はただ一つ「プラグインをインストールすること」だけなのです。
実際にプラグインをインストールしてみよう
実際にプラグインをインストールしてみましょう。
いつものように.vimrc
を開いてください。
とりあえずlightline.vimをインストールしてみます。
call plug#begin()
PLug 'itchyny/lightline.vim'call plug#end()
以上です。begin〜endの間で欲しいプラグインを並べるだけです。
あとはVimで:PlugUpdate(:PluginUpdateではありません)とコマンド入力して終わりです。
プラグイン名はGithubのURLの後半2つ 作者/プロジェクト名 を貼り付けるだけです。
https://github.com/itchyny/lightline.vimであれば itchyny/lightline.vim ですね。
これだけです。他の設定は一切不要で、いろいろな設定変数に代入する必要もありません。
非常にシンプルですね。
私のようなライトユーザーは頻繁にVimを使うわけではないので記述が複雑であったりコマンドが多かったりすると忘れてしまうわけです。
plug-vimの記述は非常にわかりやすく、コマンドもとりあえず:PlugUpdateだけ覚えておけば困りません。
ここまでの説明で十分な方はこの後は読む必要はありません。お疲れ様でした。
最後にVimの起動を早くするための「オンデマンドローディング」の設定方法をちょこっと書いておきます。
おまけ: オンデマンドローディング
オンデマンドローディングは冒頭でも説明したとおり On-Demand(必要なときに)でプラグインをロードする機能です。
Vim起動時に一気に読み込む訳ではないので起動の高速化が見込めます。
また、大量のプラグインをインストールしている場合は、必要なものが必要なときだけ読み込まれるので動作の高速化にもつながります。
ちょっと複雑そうに聞こえるかもしれませんが、設定は単純です。「読み込むタイミング」を設定するだけです。
読み込むタイミングを設定するためのオプションは2つあります。「on」と[for」です。
オプション | いつ? |
---|---|
on | コマンドが入力されたとき |
for | あるファイルタイプが読み込まれとき |
ファイルツリープラグインである「NERDTree」の場合、ツリーのトグルコマンドが実行されたときに読み込めばいいので
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
このようになります。
Go言語を書くためのプラグインである「vim-go」の場合、.goファイルが読み込まれときにロードされればいいので
Plug 'fatih/vim-go', { 'for': 'go' }
このようになります。
大量のプラグイン管理をしている人は使ってみてもいいかもしれませんね。
まとめ
- 私が知る中で一番記述がシンプル
- コマンドが直感的
- 高速
- 面倒な設定不要
単純にプラグインがインストールできればいいよっていう人は是非使ってみてください。
公式ページや:h vim-plug
でより詳細な設定を参照できます。
もうちょっと複雑なことがしたい人はそちらをどうぞ。