diff options
author | Luke Lazurite <LukeXuan@users.noreply.github.com> | 2017-11-07 10:57:07 -0500 |
---|---|---|
committer | Robby Russell <robby@planetargon.com> | 2017-11-07 07:57:07 -0800 |
commit | dfc03c7bb664229e9b014728f8ee4bc2220ad9d2 (patch) | |
tree | 8bdddc45fc48a6a5516e95ca8b2dfddc4d6b919b /plugins/pyenv | |
parent | 9edde0950ef783fc55e69ca1f9ec971819758cd4 (diff) | |
download | zsh-dfc03c7bb664229e9b014728f8ee4bc2220ad9d2.tar.gz zsh-dfc03c7bb664229e9b014728f8ee4bc2220ad9d2.tar.bz2 zsh-dfc03c7bb664229e9b014728f8ee4bc2220ad9d2.zip |
optimize load of pyenv with homebrew (#6142)
Diffstat (limited to 'plugins/pyenv')
-rw-r--r-- | plugins/pyenv/pyenv.plugin.zsh | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/plugins/pyenv/pyenv.plugin.zsh b/plugins/pyenv/pyenv.plugin.zsh index aa1f9488a..ec3ae9f5b 100644 --- a/plugins/pyenv/pyenv.plugin.zsh +++ b/plugins/pyenv/pyenv.plugin.zsh @@ -8,9 +8,6 @@ _pyenv-from-homebrew-installed() { FOUND_PYENV=0 pyenvdirs=("$HOME/.pyenv" "/usr/local/pyenv" "/opt/pyenv") -if _homebrew-installed && _pyenv-from-homebrew-installed ; then - pyenvdirs=($(brew --prefix pyenv) "${pyenvdirs[@]}") -fi for pyenvdir in "${pyenvdirs[@]}" ; do if [ -d $pyenvdir/bin -a $FOUND_PYENV -eq 0 ] ; then @@ -31,5 +28,23 @@ done unset pyenvdir if [ $FOUND_PYENV -eq 0 ] ; then + pyenvdir=$(brew --prefix pyenv 2> /dev/null) + if [ $? -eq 0 -a -d $pyenvdir/bin ] ; then + FOUND_PYENV=1 + export PYENV_ROOT=$pyenvdir + export PATH=${pyenvdir}/bin:$PATH + eval "$(pyenv init - zsh)" + + if pyenv commands | command grep -q virtualenv-init; then + eval "$(pyenv virtualenv-init - zsh)" + fi + + function pyenv_prompt_info() { + echo "$(pyenv version-name)" + } + fi +fi + +if [ $FOUND_PYENV -eq 0 ] ; then function pyenv_prompt_info() { echo "system: $(python -V 2>&1 | cut -f 2 -d ' ')" } fi |