2013/11/26

Python Tips:Sublime Text 2でvirturalenv環境のPythonを使いたい

Sublime Text 2でPythonのコードを書いていると、ショートカット(Ctrl+b や Command+b)で走るPythonを指定したいことがあります。

今回はその例として、virtualenv環境のPythonを使う方法をご紹介します。

1 Python.sublime-build の設定
{
  // "cmd": ["python", "-u", "$file"],
  "shell": true,
  "cmd": ["path/to/virtualenv/bin/activate && python -u \"$file\""],
  "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
  "selector": "source.python"
}
デフォルトの設定は、コメントアウトしてある最初の「cmd」の行です。それをコメントアウトし、新たに「shell」というプロパティを追加、「cmd」プロパティを再設定します。

「&& python」の前の「path/to/virtualenv/bin/activate」の部分にvirtualenv環境を読み込むコマンドを記述します。ちなみに、私の環境ではbashシェルを使っていて、.bashrcの中でvirtualenv環境を有効にしているので、この部分には単純に「source ~/.bashrc」を入れています。

ポイントは、デフォルトではcmdの値は複数の要素を持つ配列になっているのですが、変更後はひとつの文字列だけを持つ配列に収める、というところです。他のシェルは試していませんが、bashの場合は複数の要素を持つ配列にするとうまく動いてくれません。


参考
Build Systems - Sublime Text Help
Build Systems - Sublime Text Unofficial Documentation

0 件のコメント: