aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillaume <g@bitimplosion.com>2017-01-03 14:35:10 +0000
committerGitHub <noreply@github.com>2017-01-03 14:35:10 +0000
commited1814abfc22ddee88e620c49fa44c01701d08b4 (patch)
tree87c3484c9691028965a158ce686c446c55ce6a2d
parentbf8afa62e0e788b5a6b3ad32cbf18bd6374fb92c (diff)
parent1cb14f33da02930f874f42054790ecbac931cf87 (diff)
Merge pull request #3 from batisteo/no-oneliners
\o/ Death to one-liners!
-rwxr-xr-xvenvworkon.sh27
1 files changed, 21 insertions, 6 deletions
diff --git a/venvworkon.sh b/venvworkon.sh
index 92890b6..9dcd85c 100755
--- a/venvworkon.sh
+++ b/venvworkon.sh
@@ -1,24 +1,39 @@
workon() {
# Sets WORKON_HOME to default if not set already
- test -z "$WORKON_HOME" && WORKON_HOME="$HOME/.venv"
+ if [ -z $WORKON_HOME ]; then
+ WORKON_HOME="$HOME/.venv"
+ fi
# Creates WORKON_HOME directory if not exists
- test ! -e "$WORKON_HOME" && mkdir -p $_
+ if [ ! -e $WORKON_HOME ]; then
+ mkdir -p $WORKON_HOME
+ echo "Virtual env directory created in $WORKON_HOME"
+ fi
# Quit if there is no arguments, while showing available venvs
- test "$#" -lt "1" && ls "$WORKON_HOME"; return
+ if [ "$#" -lt "1" ]; then
+ ls "$WORKON_HOME"
+ return
+ fi
envdir="$WORKON_HOME/$1"
# Creates virtual env if doesn't exists
- test ! -e "$envdir" && pyvenv $_ && echo "Virtual env created in $_"
+ if [ ! -e "$envdir" ]; then
+ python3 -m venv $envdir
+ echo "Virtual env created in $envdir"
+ fi
source "$envdir/bin/activate"
unset envdir # VIRTUAL_ENV is now set by bin/activate
# Jumps to project directory if exists and PROJECT_HOME is set
- test -d "$PROJECT_HOME/$(basename $VIRTUAL_ENV)" && cd $_
+ if [ -d "$PROJECT_HOME/$(basename $VIRTUAL_ENV)" ]; then
+ cd "$PROJECT_HOME/$(basename $VIRTUAL_ENV)"
+ fi
# Source postactivate.sh if exists in the virtual env
- test -e "$VIRTUAL_ENV/postactivate.sh" && source $_
+ if [ -e "$VIRTUAL_ENV/postactivate.sh" ]; then
+ source "$VIRTUAL_ENV/postactivate.sh"
+ fi
}