1
0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2024-11-24 01:20:27 +08:00
ohmyzsh/plugins/autoenv/autoenv.plugin.zsh
Andrew Janke 2d0e7fbdad autoenv: actually source autoenv once located
Fixes bug introduced in #4440
2015-10-09 20:35:19 -04:00

44 lines
1.1 KiB
Bash

# Activates autoenv or reports its failure
() {
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.
# It only performs an action if the requested virtualenv is not the current one.
use_env() {
typeset venv
venv="$1"
if [[ "${VIRTUAL_ENV:t}" != "$venv" ]]; then
if workon | grep -q "$venv"; then
workon "$venv"
else
echo -n "Create virtualenv $venv now? (Yn) "
read answer
if [[ "$answer" == "Y" ]]; then
mkvirtualenv "$venv"
fi
fi
fi
}