jedi.vim で使う Python の jedi を入れる簡単な方法 - Memo のコメント欄で id:shkh さんとやりとりしたのを調査してみた。
結論 virtualenv.vim を使えば OK。
普段 VirtualenvWrapper を使っていて virtualenv.vim がどうなってるのか見てみた。
まず $WORKON_HOME を指定する*1。
export $WORKON_HOME='/path/to/virtualenv'
これがどこで効いてくるかというと、virtualenv-vim/plugin/virtualenv.vim 内で設定される。
vim-virtualenv/virtualenv.vim at master · plytophogy/vim-virtualenv · GitHub
virtualenv.vim は特に設定しなければ Vim を起動時に
call virtualenv#activate('')
が呼ばれて、activate 処理が走る。
その中で、virtualenv の activate_this.py を呼んでいる。
vim-virtualenv/virtualenv.vim at master · plytophogy/vim-virtualenv · GitHub
ということで、シェル側で何も考えず、workon で activate してやれば jedi.vim は自動的にその Virtualenv 内の site-packages を sys.path に追加し、利用できるようになる。
上は Arrow という日付関連のライブラリを VirtualenvWrapper でプロジェクトを作り、インストールして jedi.vim で起動してみた様子。
Arrow はシステムの site-pakacages にはインストールしていない。
*1:設定してない場合デフォルトで ~/.virtualenvs が使われる