diff options
author | Robby Russell <robby@planetargon.com> | 2015-07-06 09:32:29 -0700 |
---|---|---|
committer | Robby Russell <robby@planetargon.com> | 2015-07-06 09:32:29 -0700 |
commit | c968346e1793d64ea19f7e494d9fea391843823c (patch) | |
tree | b8074a88e514836385d300e403aea7a09175d7fb /plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh | |
parent | 599831b85a5fd4564ab820530e2bb45f37ca3f99 (diff) | |
parent | c1f1f91daad68fa000900dc647157bbfdb2b603f (diff) | |
download | zsh-c968346e1793d64ea19f7e494d9fea391843823c.tar.gz zsh-c968346e1793d64ea19f7e494d9fea391843823c.tar.bz2 zsh-c968346e1793d64ea19f7e494d9fea391843823c.zip |
Merge pull request #4106 from apjanke/venvw-no-realpath
virtualenvwrapper: Remove `realpath` dependency using zsh `:A`
Diffstat (limited to 'plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh')
-rw-r--r-- | plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh b/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh index 9fd0d3d8f..f5f37ff6f 100644 --- a/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh +++ b/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh @@ -30,16 +30,17 @@ if [[ "$WORKON_HOME" == "" ]]; then fi 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 # by placing a .venv file in the project root with a virtualenv name in it function workon_cwd { if [ ! $WORKON_CWD ]; then WORKON_CWD=1 # 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 - PROJECT_ROOT=`realpath $PROJECT_ROOT/..` + PROJECT_ROOT="${PROJECT_ROOT:h}" done if [[ "$PROJECT_ROOT" == "/" ]]; then PROJECT_ROOT="." @@ -50,7 +51,7 @@ if [[ ! $DISABLE_VENV_CD -eq 1 ]]; then elif [[ -f "$PROJECT_ROOT/.venv/bin/activate" ]];then ENV_NAME="$PROJECT_ROOT/.venv" elif [[ "$PROJECT_ROOT" != "." ]]; then - ENV_NAME=`basename "$PROJECT_ROOT"` + ENV_NAME="${PROJECT_ROOT:t}" else ENV_NAME="" fi |