diff --git a/src/init/starship.bash b/src/init/starship.bash index 2d1eb84c..09dbb7b1 100644 --- a/src/init/starship.bash +++ b/src/init/starship.bash @@ -56,8 +56,10 @@ starship_precmd() { # If the user appears to be using https://github.com/rcaloras/bash-preexec, # then hook our functions into their framework. -if [[ $preexec_functions ]]; then - preexec_functions+=('starship_preexec "$_"') +if [[ "${__bp_imported:-}" == "defined" || $preexec_functions || $precmd_functions ]]; then + # bash-preexec needs a single function--wrap the args into a closure and pass + starship_preexec_all(){ starship_preexec "$_"; } + preexec_functions+=(starship_preexec_all) precmd_functions+=(starship_precmd) else # We want to avoid destroying an existing DEBUG hook. If we detect one, create