Al agregar git-prompt a mi perfil de Bash, batió mi indicador de Bash prompt pyenv / pyenv-virtualenv versión. ¿Cómo restaurar pyenv para solicitar?

Cuando configuré pyenv + pyenv-virtualenv , parecían agregar auto-mágicamente el nombre de la versión de python actual o el nombre de pyvenv / virtualenv al símbolo del sistema. genial, muy útil.

if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi 

Añadí git-completion.bash y git-prompt.sh a mi ~ / .bash_profile con

 # Enable tab completion source ~/.git-completion.bash # colors! networking="\[\033[1;31,\]" green="\[\033[0;32m\]" blue="\[\033[0;34m\]" purple="\[\033[0;35m\]" cyan="\[\033[1;36m\]" reset="\[\033[0m\]" # Change command prompt source ~/.git-prompt.sh export GIT_PS1_SHOWDIRTYSTATE=1 # '\u' adds the name of the current user to the prompt # '\$(__git_ps1)' adds git-related stuff # '\W' adds the name of the current directory export PS1="$purple\u $cyan>>>$green\$(__git_ps1)$blue \W \$ $reset" 

Independientemente del order, el pyenv no está incluido en el aviso. Tenía la esperanza de que pyenv simplemente estuviera apuntando a lo que sea que el hilo de la cadena se haya configurado de tal manera que includelo después de las cosas del git le permita insertse.

He intentado include el código pyenv por encima de las cosas git y luego capturar la salida $pyenv local y agregarla como una variable, pero mis habilidades Bash son deficientes. Fui a cazar en el código pyenv para el código de export de commands de shell pero de nuevo, las habilidades de Bash son deficientes.

¿Hay una manera correcta de volver a capturar / insert la versión pyenv en el prompt?

Estoy intentando get algo como:

 \u(username) >>> (pyenv/py(venv)-version) | (__git_ps1) | \w(pwd) \$ 

Gracias,

Simplemente pegue $(pyenv version-name) en el lugar apropiado en su $PS1 . Algo como:

 export PS1="\u >>> $(pyenv version-name) $(__git_ps1) \w\$ " 

(Agregue sus colors, como desee).