Cover Image for fish 上で pyenv を使う

fish 上で pyenv を使う

この記事は最終更新日から3年以上が経過しています。

Fish Shellを導入してrbenv, pyenv, nodebrewのパスを通す - SIS Lab

を見て fish 上で pyenv を使えるようにしようと思ったが一部ハマったのでハマった部分を解説する

環境

  • fish 3.0.0
  • fisher 3.2.7
  • pyenv 1.1.5

手順

前提として pyenv インストール済、fish インストール済とする。以下の手順を行うことでfish上でpyenvが有効になる。

  • fisher のインストール
  • pyenv用のプラグインインストール
  • pyenv 用の設定

fisher

fish 用のプラグインマネージャー
pyenv 用のプラグインをインストールするのに使う

jorgebucaran/fisher 公式の手順に従ってインストールする
※ その辺のブログに書いてある手順でやると変わってる時があるので注意

pyenv 用のプラグインをインストール

daenney/pyenv

  • 公式の手順だと、fisher 3.0系からコマンドが変更になっているので失敗する
  • fisher add daenney/pyenv でインストールする

pyenv 用の設定

プラグインのインストールを行うことで fish 上で pyenv コマンドを使えるようになるが pyenv で設定した python のバージョンは反映されない。その為、以下の設定を追加する

  • ~/.config/fish/config.fish に以下を追加する
  • source (pyenv init - | psub)

参考

How to use nvm, rbenv, pyenv, goenv... with the fish shell