VS Code で pyenv + venv つかうよ

VS Codeが結構よさ気だったので導入した。

ただし何も設定しないでvenvを使うには、いちいち source activateしなければならない。

これは本当にめんどくさいので設定をいじってみた。

 

pyenv については

github.comgit clone して パスをとおしてあげればよい。

pyenv install で 好みのpythonのバージョンをインストールすることができる。

pyenv global (バージョン名) で普段使いのpythonのバージョンを指定できる。

pyenv global でPythonのバージョンを決めたら以下に移る。

 

 

ここでは、「pyenvで作ったPythonのバージョン」、かつ「更にそのバージョンのvenvコマンドで作った仮想環境」を用いたい、VS Codeのプロジェクトのファイル階層を、 ~/VSCode/project0 と仮定する。

 

まずはvenvの作成。project0 以下に作成する。

python -m venv ~/VSCode/project0/venv

ここで、仮想環境を作成するフォルダ名をvenvとしたのは、あとの設定で面倒なことを起こさないようにするため。

プロジェクトごとに仮想環境を用意すれば、仮想環境の名前を区別してあげる必要はない。

 

以下を参照。

code.visualstudio.com

VS Codeで何らかのフォルダを開くと、同じディレクトリ階層に.vscodeというフォルダが生成される。

その中に、settings.jsonというファイルがある。

このファイルを開いて表示される、左右分割されたウィンドウの右側に、

"python.pythonPath" : <ゴニョゴニョ>

と表示されているはず。

これを

"python.pythonPath" : "${workspaceRoot}/venv/bin/python"

 と書きなおしてあげる。

${workspaceRoot} は現在開いて作業しているファイル階層を示す変数であるので、

どのようなフォルダを開いても、(/venv と名のついたフォルダ内にある、) venv 仮想環境を参照してくれるようになる。