diff --git a/zsh/.zshrc b/zsh/.zshrc index 60e1065..173883f 100755 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -155,3 +155,44 @@ export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig" # use yosys ghdl plugin #alias yosys="yosys -m ghdl.so" + +# virtualenv automation functions +# usage +# $ mkvenv myvirtualenv # creates venv under $XDG_STATE_HOME/virtualenvs/ +# $ venv myvirtualenv # activates venv +# $ deactivate # deactivates venv +# $ rmvenv myvirtualenv # removes venv + +export VENV_HOME="$XDG_STATE_HOME/virtualenvs" +[[ -d $VENV_HOME ]] || mkdir $VENV_HOME + +lsvenv() { + ls -1 $VENV_HOME +} + +venv() { + if [ $# -eq 0 ] + then + echo "Please provide venv name" + else + source "$VENV_HOME/$1/bin/activate" + fi +} + +mkvenv() { + if [ $# -eq 0 ] + then + echo "Please provide venv name" + else + python3 -m venv $VENV_HOME/$1 + fi +} + +rmvenv() { + if [ $# -eq 0 ] + then + echo "Please provide venv name" + else + rm -r $VENV_HOME/$1 + fi +}