conda で管理している Python 仮想環境を peco で選択して簡単に切り替えます。
前提
以下をインストール済みであるものとして話を進めます。
-
Anaconda
ORMiniconda
peco
これらのインストールに関しては次を参考にしてください。
設定
例えば、 bash であれば ~/.bashrc
とかに以下を追記してください。
function sa() {
local conda_envs=$(conda info -e | awk '{print $1}' | grep -v "#")
source activate $(peco <<< ${conda_envs})
}
alias sd="source activate base"
Shell 関数 sa()
は function
で宣言しなくても定義できます。
-
sa
: source activate -
sd
: source deactivate
で名前を付けました。もちろんお好きな名前を付けられます。今回はシステムの Python を使わないために source activate base
しているので、 deactivate はしていません。ですが便宜上 sd
としています。 deactivate したい人は以下のようにしてください。
- alias sd="source activate base"
+ alias sd="source deactivate"
保存したら source ~/.bashrc
もしくは exec ${SHELL}
を実行して設定を読み込みます。
source
は conda
で置き換えることが可能です。最新の conda では conda
コマンドで Python 仮想環境を切り替えることを推奨しています。 conda activate
の初回実行ではエラーが出ると思うので次を参考にして解決してください。
使い方
sa
を実行すれば、作成済みの仮想環境が一覧表示されます。カーソルキーや Ctrl + n
Ctrl + p
などで選択するか、インクリメンタルサーチをすることで切り替え先の仮想環境を選ぶことができます。エンターキーを押せば source activate ${env_name}
が実行されて仮想環境が切り替わります。