mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-03-20 03:13:33 +01:00
Fix for the fact that realpath is not installed on OS X by default, so plugin would not work
Issue was introduced by pull request #3918. This is a bit of a work-around for now (just checks if realpath is installed…) but at least the plugin works again! Better would be to install it, e.g. https://github.com/harto/realpath-osx
This commit is contained in:
parent
8921902388
commit
b345f29f2f
1 changed files with 18 additions and 7 deletions
|
|
@ -36,14 +36,25 @@ if [[ ! $DISABLE_VENV_CD -eq 1 ]]; then
|
||||||
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
|
|
||||||
PROJECT_ROOT=`pwd`
|
# Check whether realpath is installed (it isn't on a mac...)
|
||||||
while [[ "$PROJECT_ROOT" != "/" && ! -e "$PROJECT_ROOT/.venv" ]]; do
|
if type "$realpath" > /dev/null; then
|
||||||
PROJECT_ROOT=`realpath $PROJECT_ROOT/..`
|
# If we have realpath, can auto switch virtualenv based on git name
|
||||||
done
|
# Check if this is a Git repo
|
||||||
if [[ "$PROJECT_ROOT" == "/" ]]; then
|
PROJECT_ROOT=`pwd`
|
||||||
PROJECT_ROOT="."
|
while [[ "$PROJECT_ROOT" != "/" && ! -e "$PROJECT_ROOT/.venv" ]]; do
|
||||||
|
PROJECT_ROOT=`realpath $PROJECT_ROOT/..`
|
||||||
|
done
|
||||||
|
if [[ "$PROJECT_ROOT" == "/" ]]; then
|
||||||
|
PROJECT_ROOT="."
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
PROJECT_ROOT=`git rev-parse --show-toplevel 2> /dev/null`
|
||||||
|
if (( $? != 0 )); then
|
||||||
|
PROJECT_ROOT="."
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check for virtualenv name override
|
# Check for virtualenv name override
|
||||||
if [[ -f "$PROJECT_ROOT/.venv" ]]; then
|
if [[ -f "$PROJECT_ROOT/.venv" ]]; then
|
||||||
ENV_NAME=`cat "$PROJECT_ROOT/.venv"`
|
ENV_NAME=`cat "$PROJECT_ROOT/.venv"`
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue