Sublime Text 2 で Python のコードを書いていると、ショートカット( Ctrl+b
や Command+b
)で走る Python を指定したいことがあります。
今回はその例として virtualenv 環境の Python を使う方法を紹介します。
Python.sublime-build
ファイルを編集します。
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
環境を読み込むコマンドを記述します。
ポイントは、デフォルトでは cmd
の値は複数の要素を持つ配列になっているのですが、変更後はひとつの文字列だけを持つ配列に収める、というところです。他のシェルは試していませんが、 Bash の場合は複数の要素を持つ配列にするとうまく動いてくれませんでした。