summaryrefslogtreecommitdiff
path: root/plugins/pipenv
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/pipenv')
-rw-r--r--plugins/pipenv/README.md16
-rw-r--r--plugins/pipenv/pipenv.plugin.zsh39
2 files changed, 36 insertions, 19 deletions
diff --git a/plugins/pipenv/README.md b/plugins/pipenv/README.md
index ab1c1e442..e78ef0e3b 100644
--- a/plugins/pipenv/README.md
+++ b/plugins/pipenv/README.md
@@ -1,6 +1,7 @@
# Pipenv
## Installation
+
In your `.zshrc` file, add `pipenv` to the plugins section
```
@@ -8,7 +9,9 @@ plugins=(... pipenv ...)
```
## Features
-This plugin provides some features to simplify the use of Pipenv while working on ZSH.
+
+This plugin provides some features to simplify the use of Pipenv while working on ZSH.
+
- Adds completion for pipenv
- Auto activates and deactivates pipenv shell
- Adds short aliases for common pipenv commands
@@ -23,6 +26,17 @@ This plugin provides some features to simplify the use of Pipenv while working o
- `psh` is aliased to `pipenv shell`
- `psy` is aliased to `pipenv sync`
- `pu` is aliased to `pipenv uninstall`
+ - `pupd` is aliased to `pipenv update`
- `pwh` is aliased to `pipenv --where`
- `pvenv` is aliased to `pipenv --venv`
- `ppy` is aliased to `pipenv --py`
+
+## Configuration
+
+### Shell activation
+
+If you want to disable the shell activation and deactivation feature, add the following style to your `.zshrc` before sourcing `oh-my-zsh.sh`:
+
+```zsh
+zstyle ':omz:plugins:pipenv' auto-shell no
+```
diff --git a/plugins/pipenv/pipenv.plugin.zsh b/plugins/pipenv/pipenv.plugin.zsh
index 244bd6b7c..f81c266a4 100644
--- a/plugins/pipenv/pipenv.plugin.zsh
+++ b/plugins/pipenv/pipenv.plugin.zsh
@@ -12,28 +12,30 @@ fi
_PIPENV_COMPLETE=zsh_source pipenv >| "$ZSH_CACHE_DIR/completions/_pipenv" &|
-# Automatic pipenv shell activation/deactivation
-_togglePipenvShell() {
- # deactivate shell if Pipfile doesn't exist and not in a subdir
- if [[ ! -f "$PWD/Pipfile" ]]; then
- if [[ "$PIPENV_ACTIVE" == 1 ]]; then
- if [[ "$PWD" != "$pipfile_dir"* ]]; then
- exit
+if zstyle -T ':omz:plugins:pipenv' auto-shell; then
+ # Automatic pipenv shell activation/deactivation
+ _togglePipenvShell() {
+ # deactivate shell if Pipfile doesn't exist and not in a subdir
+ if [[ ! -f "$PWD/Pipfile" ]]; then
+ if [[ "$PIPENV_ACTIVE" == 1 ]]; then
+ if [[ "$PWD" != "$pipfile_dir"* ]]; then
+ exit
+ fi
fi
fi
- fi
- # activate the shell if Pipfile exists
- if [[ "$PIPENV_ACTIVE" != 1 ]]; then
- if [[ -f "$PWD/Pipfile" ]]; then
- export pipfile_dir="$PWD"
- pipenv shell
+ # activate the shell if Pipfile exists
+ if [[ "$PIPENV_ACTIVE" != 1 ]]; then
+ if [[ -f "$PWD/Pipfile" ]]; then
+ export pipfile_dir="$PWD"
+ pipenv shell
+ fi
fi
- fi
-}
-autoload -U add-zsh-hook
-add-zsh-hook chpwd _togglePipenvShell
-_togglePipenvShell
+ }
+ autoload -U add-zsh-hook
+ add-zsh-hook chpwd _togglePipenvShell
+ _togglePipenvShell
+fi
# Aliases
alias pch="pipenv check"
@@ -47,6 +49,7 @@ alias prun="pipenv run"
alias psh="pipenv shell"
alias psy="pipenv sync"
alias pu="pipenv uninstall"
+alias pupd="pipenv update"
alias pwh="pipenv --where"
alias pvenv="pipenv --venv"
alias ppy="pipenv --py"