powerlineを使った状態でpipenv shell
すると表示がおかしくなる
論点整理
- pipenvの内部ではvirtual-envを使っており、その表示部分なのでpipenvはこの問題に関係がない
- powerlineが気を利かせてvirtual-envの環境名を表示してくれているものと、virtual-envが自分で表示しているものがどちらも出てしまっているのが原因
- どちらかを消せば良い
解決策
- virtual-envの設定でvirtual-env側のプロンプト表示を消す
# bash
export VIRTUAL_ENV_DISABLE_PROMPT=1
# fish
set -x VIRTUAL_ENV_DISABLE_PROMPT 1

いい感じになった🎉
雑感
- 言われてみれば簡単なことなのですが、意外とググラビティが悪かったので、ググりやすそうなワードを入れて書いておきました。