virtualenvwrapper: fix load and detection logic

This commit is contained in:
Marc Cornellà 2020-05-26 18:02:46 +02:00
parent 375978fb5b
commit 68d51bd7d8

View file

@ -1,6 +1,6 @@
function {
# search in these locations for the init script:
for f in $commands[virtualenvwrapper_lazy.sh] \
for virtualenvwrapper in $commands[virtualenvwrapper_lazy.sh] \
$commands[virtualenvwrapper.sh] \
/usr/share/virtualenvwrapper/virtualenvwrapper{_lazy,}.sh \
/usr/local/bin/virtualenvwrapper{_lazy,}.sh \
@ -8,16 +8,17 @@ function {
/usr/share/bash-completion/completions/virtualenvwrapper \
$HOME/.local/bin/virtualenvwrapper.sh
do
if [[ -f $f ]]; then
source $f
if [[ -f "$virtualenvwrapper" ]]; then
source "$virtualenvwrapper"
return
fi
done
print "[oh-my-zsh] virtualenvwrapper plugin: Cannot find virtualenvwrapper.sh.\n"\
"Please install with \`pip install virtualenvwrapper\`" >&2
return 1
}
if ! type workon &>/dev/null; then
if [[ $? -eq 0 ]] && ! type workon &>/dev/null; then
print "[oh-my-zsh] virtualenvwrapper plugin: shell function 'workon' not defined.\n"\
"Please check ${virtualenvwrapper}" >&2
return