はじめに
NeoBundleは通常Vimプラグインを管理するために使うが,
Vimプラグイン以外のリポジトリのダウンロードも管理することができる.
NeoBundleで管理してしまえば, :NeoBundleUpdate
(Uniteを使っているのであれば, :Unite neobundle/update
)
により, githubなどにある, あらゆるリモートリポジトリから,
ローカルへ一括で更新できるようになる.
(当初, Emacs LispのリポジトリはEmacs (el-get) で管理,
VimプラグインのリポジトリはVim (Neobundle) で管理しようとしたが,
面倒だったので, 思い切って全部NeoBundleで管理してみたら, 思いの外スッキリした. )
使用例
Vimプラグイン以外のリポジトリをNeoBundleで管理するには, :NeoBundleFetch
を使う.
(:help
に書いてあるが, :NeoBundleFetch
を使うと,runtimepath
へ追加せずに, NeoBundleで管理ができる. )
ダウンロード先ディレクトリを指定するには, 下記のようにbase
オプションを使う.
~/.vimrc
letg:emacs_bundle = $HOME . '/.emacs.d/bundle'
NeoBundleFetch 'winterTTr/ace-jump-mode', {
\ 'base' : g:emacs_bundle,
\ }
branch
を指定するには, 下記のようにリポジトリ名の後にbranch
名を書く.
~/.vimrc
NeoBundleFetch 'magit/magit','maint', {
\ 'base' : g:emacs_bundle,
ダウンロードした後に, 自動でmake
するには,
下記のようにbuild
オプションを使う.
~/.vimrc
NeoBundleFetch 'git://orgmode.org/org-mode.git', {
\ 'base' : g:emacs_bundle,
\ 'build' : {
\ 'windows' : 'make',
\ 'cygwin' : 'make',
\ 'mac' : 'make',
\ 'unix' : 'make',
\ },
\ }
Subversionのリポジトリも管理できる.
ディレクトリ名を指定するには, 下記のようにname
オプションを使う.
~/.vimrc
NeoBundleFetch 'http://emacs-evernote-mode.googlecode.com/svn/trunk', {
\ 'name' : 'evernote-mode',
\ 'base' : g:emacs_bundle,
\ }
Mercurialのリポジトリを管理するには,
下記のようにtype
オプションにhg
を指定する.
~/.vimrc
NeoBundleFetch 'http://www.yatex.org/hgrepos/yatex', {
\ 'type' : 'hg',
\ 'name' : 'yatex',
\ 'base' : g:emacs_bundle,
\}
(例にEmacs Lispばかり挙げているが,
もちろん他のリポジトリも管理できる. )