autoenv.plugin.zsh 1 KB
Newer Older
LFDM's avatar
LFDM committed
1
# Activates autoenv or reports its failure
2
if ! type autoenv_init &>/dev/null && ! source $HOME/.autoenv/activate.sh 2>/dev/null; then
LFDM's avatar
LFDM committed
3
  echo '-------- AUTOENV ---------'
4
  echo 'Could not find autoenv_init function or ~/.autoenv/activate.sh.'
LFDM's avatar
LFDM committed
5
6
7
8
9
10
  echo 'Please check if autoenv is correctly installed.'
  echo 'In the meantime the autoenv plugin is DISABLED.'
  echo '--------------------------'
  return 1
fi

11
12
13
# 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.
LFDM's avatar
LFDM committed
14

15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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
}