From 37192374c366a545113276d27a46894c3df14900 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A1szl=C3=B3=20P=C3=A1rk=C3=A1nyi?= Date: Thu, 15 May 2025 13:10:14 +0200 Subject: [PATCH] feat(zsh): virtualenv functions --- zsh/.zshrc | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) 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 +}