Posted at

pyenvとautojumpを共存させる

More than 5 years have passed since last update.

pythonでコードを書く場合、最近人気なのはpyenvです。でもこれ、python周りのパスががらっと変わってしまうので、あるディレクトリ以下に特定のpythonバージョンを適用していると、そのディレクトリ内ではautojumpなんかも動かなくなってしまいます


原因は...

pyenvを設定したディレクトリでpython --versionすると、目的のバージョンになっていると思いますが、/usr/local/binなどのディレクトリも、このバージョンで動作させようとしますので、pythonのライブラリが見つからなくて、autojump等は動かなくなってしまいます


対処法!

/usr配下など、明らかにpyenvによる動作を期待していない部分に対して、pythonのバージョン指定をかけるとうまくいきます。


pyenv_to_system_dir

$ cd /usr

$ sudo pyenv local system

こんな感じで、私の場合は/usr以下にsystem(OSデフォルト)のpythonが適用されるように設定しました。

brewでインストールするものは/usr/local/binに基本的に入るので、そいつらには現在居るディレクトリに関わらず、systemのpythonが適用されるようになります。