summaryrefslogtreecommitdiff
path: root/plugins/autoenv/autoenv.plugin.zsh
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/autoenv/autoenv.plugin.zsh')
-rw-r--r--plugins/autoenv/autoenv.plugin.zsh28
1 files changed, 21 insertions, 7 deletions
diff --git a/plugins/autoenv/autoenv.plugin.zsh b/plugins/autoenv/autoenv.plugin.zsh
index a8271849e..ea2e56dd6 100644
--- a/plugins/autoenv/autoenv.plugin.zsh
+++ b/plugins/autoenv/autoenv.plugin.zsh
@@ -1,12 +1,26 @@
# Activates autoenv or reports its failure
-if ! source $HOME/.autoenv/activate.sh 2>/dev/null; then
- echo '-------- AUTOENV ---------'
- echo 'Could not find ~/.autoenv/activate.sh.'
- echo 'Please check if autoenv is correctly installed.'
- echo 'In the meantime the autoenv plugin is DISABLED.'
- echo '--------------------------'
- return 1
+() {
+if ! type autoenv_init >/dev/null; then
+ for d (~/.autoenv /usr/local/opt/autoenv); do
+ if [[ -e $d/activate.sh ]]; then
+ autoenv_dir=$d
+ break
+ fi
+ done
+ if [[ -z $autoenv_dir ]]; then
+ cat <<END >&2
+-------- AUTOENV ---------
+Could not locate autoenv installation.
+Please check if autoenv is correctly installed.
+In the meantime the autoenv plugin is DISABLED.
+--------------------------
+END
+ return 1
+ fi
+ source $autoenv_dir/activate.sh
fi
+}
+[[ $? != 0 ]] && return $?
# The use_env call below is a reusable command to activate/create a new Python
# virtualenv, requiring only a single declarative line of code in your .env files.