From 8e61b8058424e462518b08f36d1ce755cd5fc3ca Mon Sep 17 00:00:00 2001 From: Erik Pukinskis Date: Fri, 9 May 2014 14:57:04 -0700 Subject: [PATCH] Move last little bit of script into a function so local is available --- gitprompt.sh | 64 ++++++++++++++++++++++++++++------------------------ 1 file changed, 34 insertions(+), 30 deletions(-) diff --git a/gitprompt.sh b/gitprompt.sh index df39b43..33d4c16 100755 --- a/gitprompt.sh +++ b/gitprompt.sh @@ -277,33 +277,37 @@ function prompt_callback_default { return } -if [ "`type -t prompt_callback`" = 'function' ]; then - prompt_callback="prompt_callback" -else - prompt_callback="prompt_callback_default" -fi - -if [ -z "$OLD_GITPROMPT" ]; then - OLD_GITPROMPT=$PS1 -fi - -if [ -z "$PROMPT_COMMAND" ]; then - PROMPT_COMMAND=setGitPrompt -else - PROMPT_COMMAND=${PROMPT_COMMAND%% }; # remove trailing spaces - PROMPT_COMMAND=${PROMPT_COMMAND%\;}; # remove trailing semi-colon - - local new_entry="setGitPrompt" - case ";$PROMPT_COMMAND;" in - *";$new_entry;"*) - # echo "PROMPT_COMMAND already contains: $new_entry" - :;; - *) - PROMPT_COMMAND="$PROMPT_COMMAND;$new_entry" - # echo "PROMPT_COMMAND does not contain: $new_entry" - ;; - esac -fi - -git_prompt_dir -source "$__GIT_PROMPT_DIR/git-prompt-help.sh" +function run { + if [ "`type -t prompt_callback`" = 'function' ]; then + prompt_callback="prompt_callback" + else + prompt_callback="prompt_callback_default" + fi + + if [ -z "$OLD_GITPROMPT" ]; then + OLD_GITPROMPT=$PS1 + fi + + if [ -z "$PROMPT_COMMAND" ]; then + PROMPT_COMMAND=setGitPrompt + else + PROMPT_COMMAND=${PROMPT_COMMAND%% }; # remove trailing spaces + PROMPT_COMMAND=${PROMPT_COMMAND%\;}; # remove trailing semi-colon + + local new_entry="setGitPrompt" + case ";$PROMPT_COMMAND;" in + *";$new_entry;"*) + # echo "PROMPT_COMMAND already contains: $new_entry" + :;; + *) + PROMPT_COMMAND="$PROMPT_COMMAND;$new_entry" + # echo "PROMPT_COMMAND does not contain: $new_entry" + ;; + esac + fi + + git_prompt_dir + source "$__GIT_PROMPT_DIR/git-prompt-help.sh" +} + +run \ No newline at end of file