Auto Ativar E Desativar Python Venv Usando Zsh

Quando aprendi sobre o python venv (apt-get install python3-venv) me converti na hora. É simples, padrão e explícito.

Agora toda vez que crio um projeto automaticamente executo python3 -mvenv venv && source ./venv/bin/activate.

Mas digitar ./venv/bin/activate e depois deactivate é muito trabalho para meu cérebro preguiçoso de programadora.

Então decidi investir finalmente 10 minutos para me liberar de ficar ativando e desativando esse negócio toda vez que eu entrasse ou saísse de uma pasta de projeto com minha pastinha padrão ./venv:

#---------------------------------------------- chpwd pyvenv ---
python_venv() {
  MYVENV=./venv
  # when you cd into a folder that contains $MYVENV
  [[ -d $MYVENV ]] && source $MYVENV/bin/activate > /dev/null 2>&1
  # when you cd into a folder that doesn't
  [[ ! -d $MYVENV ]] && deactivate > /dev/null 2>&1
}
autoload -U add-zsh-hook
add-zsh-hook chpwd python_venv

python_venv

Só colar isso no seu ~/.zshrc

_

= M =

comentários

comments powered by Disqus