diff --git a/themes/rjorgenson/rjorgenson.theme.sh b/themes/rjorgenson/rjorgenson.theme.sh index 3c3a812..4b5b5e9 100644 --- a/themes/rjorgenson/rjorgenson.theme.sh +++ b/themes/rjorgenson/rjorgenson.theme.sh @@ -3,21 +3,21 @@ # set colors for use throughout the prompt # i like things consistent -BRACKET_COLOR=${blue} -STRING_COLOR=${green} +OMB_THEME_BRACKET_COLOR="${OMB_THEME_BRACKET_COLOR:-${blue}}" +OMB_THEME_STRING_COLOR="${OMB_THEME_STRING_COLOR:-${green}}" SCM_THEME_PROMPT_PREFIX="" SCM_THEME_PROMPT_SUFFIX="" SCM_THEME_PROMPT_DIRTY=" ${bold_red}✗${normal}" SCM_THEME_PROMPT_CLEAN=" ${bold_green}✓${normal}" -SCM_GIT_CHAR="${STRING_COLOR}±${normal}" +SCM_GIT_CHAR="${OMB_THEME_STRING_COLOR}±${normal}" SCM_SVN_CHAR="${bold_cyan}⑆${normal}" SCM_HG_CHAR="${bold_red}☿${normal}" -PROMPT_CHAR="${BRACKET_COLOR}➞ ${normal}" +PROMPT_CHAR="${OMB_THEME_BRACKET_COLOR}➞ ${normal}" if [[ $OSTYPE =~ "darwin" ]]; then - PROMPT_CHAR="${BRACKET_COLOR}➞ ${normal}" + PROMPT_CHAR="${OMB_THEME_BRACKET_COLOR}➞ ${normal}" fi #Mysql Prompt @@ -34,13 +34,13 @@ __my_rvm_ruby_version() { local version ; version=$(echo "${MY_RUBY_HOME}" | awk -F'-' '{print $2}') [ "${gemset}" != "" ] && gemset="@${gemset}" local full="${version}${gemset}" - [ "${full}" != "" ] && echo "${BRACKET_COLOR}[${STRING_COLOR}${full}${BRACKET_COLOR}]${normal}" + [ "${full}" != "" ] \ + && echo "${OMB_THEME_BRACKET_COLOR}[${OMB_THEME_STRING_COLOR}${full}${OMB_THEME_BRACKET_COLOR}]${normal}" } is_vim_shell() { - if [ ! -z "$VIMRUNTIME" ] - then - echo "${BRACKET_COLOR}[${STRING_COLOR}vim shell${BRACKET_COLOR}]${normal}" + if [ -n "${VIMRUNTIME}" ] ; then + echo "${OMB_THEME_BRACKET_COLOR}[${OMB_THEME_STRING_COLOR}vim shell${OMB_THEME_BRACKET_COLOR}]${normal}" fi } @@ -56,36 +56,41 @@ todo_txt_count() { local count=$(todo.sh ls \ | awk '/TODO: [0-9]+ of ([0-9]+) tasks shown/ { print $4 }') if is_integer "${count}" ; then # did we get a sane answer back - echo "${BRACKET_COLOR}[${STRING_COLOR}T:$count${BRACKET_COLOR}]$normal" + echo "${OMB_THEME_BRACKET_COLOR}[${OMB_THEME_STRING_COLOR}T:$count${OMB_THEME_BRACKET_COLOR}]$normal" fi fi } modern_scm_prompt() { local CHAR=$(scm_char) - [ "${CHAR}" = "${SCM_NONE_CHAR}" ] \ - || echo "${BRACKET_COLOR}[${CHAR}${BRACKET_COLOR}][${STRING_COLOR}$(scm_prompt_info)${BRACKET_COLOR}]$normal" + if [ ! "${CHAR}" = "${SCM_NONE_CHAR}" ] ; then + printf "%s" \ + "${OMB_THEME_BRACKET_COLOR}[${CHAR}${OMB_THEME_BRACKET_COLOR}]" \ + "[${OMB_THEME_STRING_COLOR}$(scm_prompt_info)${OMB_THEME_BRACKET_COLOR}]$normal" + printf "\n" + fi } _omb_theme_PROMPT_COMMAND() { - local my_host="${STRING_COLOR}\h${normal}"; - local my_user="${STRING_COLOR}\u${normal}"; - local my_path="${STRING_COLOR}\w${normal}"; + local my_host="${OMB_THEME_STRING_COLOR}\h${normal}"; + local my_user="${OMB_THEME_STRING_COLOR}\u${normal}"; + local my_path="${OMB_THEME_STRING_COLOR}\w${normal}"; + local bracket_c="${OMB_THEME_BRACKET_COLOR}" - local line2="${BRACKET_COLOR}└─$(todo_txt_count)${PROMPT_CHAR}" + local line2 ; line2="${bracket_c}└─$(todo_txt_count)${PROMPT_CHAR}" # nice prompt case "$(id -u)" in 0) my_user="${bold_red}\u${normal}"; - line2="${BRACKET_COLOR}└─${PROMPT_CHAR}" + line2="${bracket_c}└─${PROMPT_CHAR}" ;; esac PS1="${TITLEBAR}" - PS1="${PS1}${BRACKET_COLOR}┌─[${my_user}${BRACKET_COLOR}][$my_host${BRACKET_COLOR}]" + PS1="${PS1}${bracket_c}┌─[${my_user}${bracket_c}][$my_host${bracket_c}]" PS1="${PS1}$(modern_scm_prompt)" PS1="${PS1}$(__my_rvm_ruby_version)" - PS1="${PS1}${BRACKET_COLOR}[${my_path}${BRACKET_COLOR}]$(is_vim_shell)" + PS1="${PS1}${bracket_c}[${my_path}${bracket_c}]$(is_vim_shell)" PS1="${PS1}\n${line2}" }