NeoBundle
NeoBundleとは、vimのプラグイン管理(プラグインマネージャ)のプラグインです。
読み方
- NeoBundle
- ねお ばんどる
目次
概要
NeoBundleは、プラグインマネージャの1つです。プラグインマネージャは、乱立しているため、いろいろなプラグインマネージャが存在しています。
NeoBundleは、Vundleをベースにしています。 vimprocを使用することで、非同期にインストール/アップデートができます。
注意
このドキュメントで出てくる foobarhoge/foo.vim, foobarhoge/bar.vim は、架空のプラグインです。
vimスクリプト
vimスクリプトは、github.comやwww.vim.orgで公開されています。
必要なもの
gitコマンドが必要です。
FreeBSD
% sudo pkg install git
Ubuntu
% sudo apt-get install git-core
Windows
Git for Windowsをインストールします。 http://git-scm.com/downloads からダウンロードできます。
インストール時のオプション設定は、以下の通りです。
- Adjusting your PATH environment は Use Git Bash only を選択しました。
- Run Git and included Unix Tools from the Windows Command Prompt は、find.exe, sort.exe とかを上書きするとか書いてあったので、やめておきました。
- Configuring the line ending conversions は Checkout Windows-style, commit Unix-style line endings を選択しました。
セットアップ
NeoBundle自体は、一度、手動でローカルにダウンロードする必要があります。gitコマンドで簡単に取り寄せられます。
% mkdir ~/.vim/bundle % git clone https://github.com/Shougo/neobundle.vim \ ~/.vim/bundle/neobundle.vim
$HOME/.vimrc
set nocompatible filetype off " for NeoBundle if has('vim_starting') set rtp+=$HOME/.vim/bundle/neobundle.vim/ endif call neobundle#rc(expand('~/.vim/bundle')) NeoBundleFetch 'Shougo/neobundle.vim' " ここから NeoBundle でプラグインを設定します " NeoBundle で管理するプラグインを追加します。 NeoBundle 'Shougo/neocomplcache.git' NeoBundle 'Shougo/unite.vim.git' filetype plugin indent on " restore filetype
:NeoBundleコマンドの引数
github, vim.org のプラグインのアドレスは、省略できます。
- NeoBundle 'git://github.com/foobarhoge/foo.vim'
- フルパス
- NeoBundle 'foobarhogefoo.vim'
- 省略表記, github.comのリポジトリを意味します
- NeoBundle 'hoge'
- プラグイン名のみの場合は、vim.orgのプラグインを表します。
プラグインのインストール
プラグインを追加する場合には、以下の手順で行います。
- .vimrcにプラグインの設定を追加します。これは、例ですが、github.comで公開されている foobarhoge/foo.vim(実在しません)のプラグインを追加する場合は、
と設定します。NeoBundle 'foobarhoge/foo.vim'
- vimを起動します。
- NeoBundleInstallを実行します。
:NeoBundleInstall
- vimを終了し、vimを起動します。
- インストール(追加)したプラグインがロードされた状態になります。
Windowsの場合は、git bashを起動し、bash上からvimを起動します。
以上です。
プラグインのアップデート
プラグインをアップデートする場合には、以下の手順で行います。
- vim を起動します。
- NeoBundleUpdateを実行します。
:NeoBundleUpdate
- vimを終了し、vimを起動します。
NeoBundleUpdate の代わりに NeoBundleInstall! でもアップデートできます。
Windowsの場合は、git bashを起動し、bash上からvimを起動します。
以上です。
プラグインの削除
- .vimrcから NeoBundle の行を削除します。
- vimを起動します。
- :NeoBundleClean を実行します。
- vimを終了し、vimを起動します。
プラグインの遅延ロード
NeoBundleは、「遅延ロード」ができます。 プラグインを大量にロードするには、時間がかかり、vimの起動が遅くなります。 遅延ロードでは、必要になったタイミングでロードできます。
filetype が mediawiki のときに、 mediawiki.vim をロードする例です。
NeoBundleLazy 'mediawiki.vim', { \ "autoload" : { "filetypes" : [ "mediawiki" ] } }
OSごとのロード
OSによって、使用するプラグイン、使用しないプラグインがあります。 Windowsでsudo.vimを使っていないので、以下の様な設定になっています。
if has("win32") || has("win64") " 設定 NeoBundleLazy 'mediawiki.vim', \ { "autoload" : { "filetypes" : [ "mediawiki" ] } } endif if has("unix") || has("mac") NeoBundle 'vim-scripts/gtags.vim', \ { "autoload" : { "filetypes" : [ "c", "cpp" ] } } NeoBundle 'vim-scripts/sudo.vim' endif
リビジョンのロック
引数にリビジョン番号やブランチ名を指定することで、特定のリビジョン、ブランチが使用できます。
NeoBundle 'Kaoru/foo.vim', 'ver.1.50' NeoBundle 'Kaoru/bar.vim', {'rev':'3333e3'}
ローカルのディレクトリからの読み込み NeoBundleLocal
NeoBundleLocal ~/.vim/bundle
依存関係の定義
プラグインごとに依存関係が定義できます。依存関係にあるプラグインもインストール、アップデートされます。
NeoBundle 'foobarhoge/foo.vim', \ { 'depends': 'foobarhoge/bar.vim' }
非同期アップデート
NeoBundleは、vimprocを自動認識します。vimprocがインストールされている場合、非同期でインストールとアップデートができます。
NeoBundle 'Shougo/vimproc', { \ 'build' : { \ 'windows' : 'make -f make_mingw32.mak', \ 'cygwin' : 'make -f make_cygwin.mak', \ 'mac' : 'make -f make_mac.mak', \ 'unix' : 'make -f make_unix.mak', \ }, \ }
プラグイン検索
unite.vim上でプラグインが検索できます。
- :Unite neobundle/search
関連項目
ツイート