Commit c1f1f91d authored by Andrew Janke's avatar Andrew Janke
Browse files

virtualenvwrapper: Replace "realpath" with portable zsh-native `:A` and `:h` modifiers

parent 599831b8
...@@ -30,16 +30,17 @@ if [[ "$WORKON_HOME" == "" ]]; then ...@@ -30,16 +30,17 @@ if [[ "$WORKON_HOME" == "" ]]; then
fi fi
if [[ ! $DISABLE_VENV_CD -eq 1 ]]; then if [[ ! $DISABLE_VENV_CD -eq 1 ]]; then
# Automatically activate Git projects's virtual environments based on the # Automatically activate Git projects' virtual environments based on the
# directory name of the project. Virtual environment name can be overridden # directory name of the project. Virtual environment name can be overridden
# by placing a .venv file in the project root with a virtualenv name in it # by placing a .venv file in the project root with a virtualenv name in it
function workon_cwd { function workon_cwd {
if [ ! $WORKON_CWD ]; then if [ ! $WORKON_CWD ]; then
WORKON_CWD=1 WORKON_CWD=1
# Check if this is a Git repo # Check if this is a Git repo
PROJECT_ROOT=`pwd` # Get absolute path, resolving symlinks
PROJECT_ROOT="${PWD:A}"
while [[ "$PROJECT_ROOT" != "/" && ! -e "$PROJECT_ROOT/.venv" ]]; do while [[ "$PROJECT_ROOT" != "/" && ! -e "$PROJECT_ROOT/.venv" ]]; do
PROJECT_ROOT=`realpath $PROJECT_ROOT/..` PROJECT_ROOT="${PROJECT_ROOT:h}"
done done
if [[ "$PROJECT_ROOT" == "/" ]]; then if [[ "$PROJECT_ROOT" == "/" ]]; then
PROJECT_ROOT="." PROJECT_ROOT="."
...@@ -50,7 +51,7 @@ if [[ ! $DISABLE_VENV_CD -eq 1 ]]; then ...@@ -50,7 +51,7 @@ if [[ ! $DISABLE_VENV_CD -eq 1 ]]; then
elif [[ -f "$PROJECT_ROOT/.venv/bin/activate" ]];then elif [[ -f "$PROJECT_ROOT/.venv/bin/activate" ]];then
ENV_NAME="$PROJECT_ROOT/.venv" ENV_NAME="$PROJECT_ROOT/.venv"
elif [[ "$PROJECT_ROOT" != "." ]]; then elif [[ "$PROJECT_ROOT" != "." ]]; then
ENV_NAME=`basename "$PROJECT_ROOT"` ENV_NAME="${PROJECT_ROOT:t}"
else else
ENV_NAME="" ENV_NAME=""
fi fi
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment