From c1674cd5522ddb3573673ed851b29429bcaf78ac Mon Sep 17 00:00:00 2001 From: Ian Chen Date: Wed, 30 Nov 2022 17:53:00 +0800 Subject: [PATCH] Detect shell --- libexec/pyenv-init | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/libexec/pyenv-init b/libexec/pyenv-init index 7d222377..3d21f31f 100755 --- a/libexec/pyenv-init +++ b/libexec/pyenv-init @@ -1,6 +1,6 @@ #!/usr/bin/env bash # Summary: Configure the shell environment for pyenv -# Usage: eval "$(pyenv init [-|--path] [--no-push-path] [--no-rehash] [])" +# Usage: eval "$(pyenv init [-|--path] [--no-push-path] [--detect-shell] [--no-rehash] [])" set -e [ -n "$PYENV_DEBUG" ] && set -x @@ -11,6 +11,7 @@ if [ "$1" = "--complete" ]; then echo --path echo --no-push-path echo --no-rehash + echo --detect-shell echo bash echo fish echo ksh @@ -33,6 +34,11 @@ do shift fi + if [ "$args" = "--detect-shell" ]; then + mode="detect-shell" + shift + fi + if [ "$args" = "--no-push-path" ]; then no_push_path=1 shift @@ -76,12 +82,17 @@ function main() { print_shell_function exit 0 ;; + "detect-shell") + detect_profile + print_detect_shell + exit 0 + ;; esac # should never get here exit 2 } -function help_() { +function detect_profile() { case "$shell" in bash ) if [ -e '~/.bash_profile' ]; then @@ -105,7 +116,16 @@ function help_() { rc='your shell'\''s interactive startup file' ;; esac +} +function print_detect_shell() { + echo "PYENV_SHELL_DETECT=$shell" + echo "PYENV_PROFILE_DETECT=$profile" + echo "PYENV_RC_DETECT=$rc" +} + +function help_() { + detect_profile { case "$shell" in fish )