summaryrefslogtreecommitdiff
path: root/plugins/pyenv
diff options
context:
space:
mode:
authorVlad Dmitrievich <2tunnels@gmail.com>2020-01-15 15:08:45 +0200
committerMarc Cornellà <marc.cornella@live.com>2020-01-15 14:08:45 +0100
commitaaa87063a27cd581b5f0fa1f23a0170f623686a9 (patch)
tree831036d4e702c5145e604ee103654379f6c5e736 /plugins/pyenv
parent78b07e92fd4a3a5e1f92ee4e3d680c39b72c2245 (diff)
downloadzsh-aaa87063a27cd581b5f0fa1f23a0170f623686a9.tar.gz
zsh-aaa87063a27cd581b5f0fa1f23a0170f623686a9.tar.bz2
zsh-aaa87063a27cd581b5f0fa1f23a0170f623686a9.zip
pyenv: only run if pyenv not in $PATH (#8462)
This is needed if in between the update of `$PATH` the `$commands` parameter hasn't been updated, i.e. if there was no `rehash` or `hash -rf` or automatic rehash. Co-authored-by: Marc Cornellà <marc.cornella@live.com>
Diffstat (limited to 'plugins/pyenv')
-rw-r--r--plugins/pyenv/pyenv.plugin.zsh3
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/pyenv/pyenv.plugin.zsh b/plugins/pyenv/pyenv.plugin.zsh
index 40e58b5c2..4c75156bd 100644
--- a/plugins/pyenv/pyenv.plugin.zsh
+++ b/plugins/pyenv/pyenv.plugin.zsh
@@ -1,7 +1,8 @@
# This plugin loads pyenv into the current shell and provides prompt info via
# the 'pyenv_prompt_info' function. Also loads pyenv-virtualenv if available.
-FOUND_PYENV=$+commands[pyenv]
+# Load pyenv only if command not already available
+command -v pyenv &> /dev/null && FOUND_PYENV=1 || FOUND_PYENV=0
if [[ $FOUND_PYENV -ne 1 ]]; then
pyenvdirs=("$HOME/.pyenv" "/usr/local/pyenv" "/opt/pyenv" "/usr/local/opt/pyenv")