我刚刚安装了pyenv和virtualenv如下:https://realpython.com/intro-to-pyenv/
安装完成后提示:
pyenv-virtualenv: prompt changing will be removed from future release. configure `export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior
我将export PYENV_VIRTUALENV_DISABLE_PROMPT=1
添加到我的.bash_aliases
中,只是为了看看会有什么行为,它确实删除了以前存在于命令提示符开头的提示符,指示pyenv-virtualenv版本。以前是这样的:
(myenv) user@foo:~/my_project [main] $
其中(myenv)
为活动环境,[main]
为git分支。
我想要回环境指示器!它非常有用。我想有一些可能性,例如:
export PYENV_VIRTUALENV_DISABLE_PROMPT=0
export PYENV_VIRTUALENV_ENABLE_PROMPT=1
但是这些不会返回之前的行为。我到处都搜过了,不知道怎么把这个找回来。
这个答案是没有用的,因为它似乎是对原始功能的一种hack,并且总是显示环境,而不仅仅是当我进入(或手动激活)一个环境时。
借鉴这里的解决方案,以下作品(添加到.bashrc
或.bash_aliases
):
export PYENV_VIRTUALENV_DISABLE_PROMPT=1
export BASE_PROMPT=$PS1
function updatePrompt {
if [[ "$(pyenv virtualenvs)" == *"* $(pyenv version-name) "* ]]; then
export PS1='($(pyenv version-name)) '$BASE_PROMPT
else
export PS1=$BASE_PROMPT
fi
}
export PROMPT_COMMAND='updatePrompt'