summaryrefslogtreecommitdiff
path: root/plugins/pyenv/pyenv.plugin.zsh
diff options
context:
space:
mode:
authorLuke Lazurite <LukeXuan@users.noreply.github.com>2017-11-07 10:57:07 -0500
committerRobby Russell <robby@planetargon.com>2017-11-07 07:57:07 -0800
commitdfc03c7bb664229e9b014728f8ee4bc2220ad9d2 (patch)
tree8bdddc45fc48a6a5516e95ca8b2dfddc4d6b919b /plugins/pyenv/pyenv.plugin.zsh
parent9edde0950ef783fc55e69ca1f9ec971819758cd4 (diff)
downloadzsh-dfc03c7bb664229e9b014728f8ee4bc2220ad9d2.tar.gz
zsh-dfc03c7bb664229e9b014728f8ee4bc2220ad9d2.tar.bz2
zsh-dfc03c7bb664229e9b014728f8ee4bc2220ad9d2.zip
optimize load of pyenv with homebrew (#6142)
Diffstat (limited to 'plugins/pyenv/pyenv.plugin.zsh')
-rw-r--r--plugins/pyenv/pyenv.plugin.zsh21
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