QuickRun.vim で Python のテストを実行した際にモジュールが読み込まれない現象

メモ。
環境: Python2.7.4, MacVim Kaoriya 7.4.22, QuickRun.vim QuickRun-Unittest, vim-virtualenv


Flask を使ってこんなコードを書いてた。

app.py

# -*- coding: utf-8 -*-
from flask import Flask
from flaskext.kvsession import KVSessionExtension


def create_app():
    app = Flask(__name__)
# -*- coding: utf-8 -*-
from unittest import TestCase
from app import create_app


class Tests(TestCase):
    def test_it(self):
        pass

自作の QuickRun の hook プラグインで nose を実行したら、

Failure: ImportError (No module named flaskext.kvsession) ... ERROR

とかって怒られた。これがターミナル上から nosetests で実行すると正しく実行される。


vim-virtualenv を外してやると正しく動作した。
ただし virtualenv のプロジェクトによっては vim-virtualenv があっても正しく動作するのがあるので、良く分からない。
詳細な原因を追う気にもなれないので、とりあえず外してみる。