Browse Source

fix(pipenv): fix auto-shell functionality when cd-ing out (#12813)

Co-authored-by: Jean-Tiare Le Bigot <jt@yadutaf.fr>
Marc Cornellà 6 days ago
parent
commit
2e8d2d7401
1 changed files with 4 additions and 2 deletions
  1. 4 2
      plugins/pipenv/pipenv.plugin.zsh

+ 4 - 2
plugins/pipenv/pipenv.plugin.zsh

@@ -19,7 +19,8 @@ if zstyle -T ':omz:plugins:pipenv' auto-shell; then
     if [[ ! -f "$PWD/Pipfile" ]]; then
     if [[ ! -f "$PWD/Pipfile" ]]; then
       if [[ "$PIPENV_ACTIVE" == 1 ]]; then
       if [[ "$PIPENV_ACTIVE" == 1 ]]; then
         if [[ "$PWD" != "$pipfile_dir"* ]]; then
         if [[ "$PWD" != "$pipfile_dir"* ]]; then
-          exit
+          unset PIPENV_ACTIVE pipfile_dir
+          deactivate
         fi
         fi
       fi
       fi
     fi
     fi
@@ -28,7 +29,8 @@ if zstyle -T ':omz:plugins:pipenv' auto-shell; then
     if [[ "$PIPENV_ACTIVE" != 1 ]]; then
     if [[ "$PIPENV_ACTIVE" != 1 ]]; then
       if [[ -f "$PWD/Pipfile" ]]; then
       if [[ -f "$PWD/Pipfile" ]]; then
         export pipfile_dir="$PWD"
         export pipfile_dir="$PWD"
-        pipenv shell
+        source "$(pipenv --venv)/bin/activate"
+        export PIPENV_ACTIVE=1
       fi
       fi
     fi
     fi
   }
   }