oh-my-bash/themes/cooperkid/cooperkid.theme.sh
Koichi Murase 8eb9fec5ed lib, themes: Resolve conflicting variables
"lib" has used the variables "red", "green", "yellow", "blue", and
"purple" for outputting logs to stdout/stderr.  On the other hand,
"themes" has used the same variables for including escape sequences in
PS1.  These two sets of variables have different values, i.e., the
latter is enclosed by '\[' and '\]' and contains escaped '\e', which
means that there have been variable conflicts.  In this commit, more
specific variables are used in these places to resolve the conflicts.
2022-02-01 01:42:52 +09:00

32 lines
1.4 KiB
Bash

#! bash oh-my-bash.module
# ------------------------------------------------------------------#
# FILE: cooperkid.zsh-theme #
# BY: Alfredo Bejarano #
# BASED ON: Mr Briggs by Matt Brigg (matt@mattbriggs.net) #
# ------------------------------------------------------------------#
SCM_THEME_PROMPT_DIRTY="${_omb_prompt_red}${_omb_prompt_reset_color}"
SCM_THEME_PROMPT_AHEAD="${_omb_prompt_yellow}${_omb_prompt_reset_color}"
SCM_THEME_PROMPT_CLEAN="${_omb_prompt_green}${_omb_prompt_reset_color}"
SCM_THEME_PROMPT_PREFIX=" "
SCM_THEME_PROMPT_SUFFIX=""
GIT_SHA_PREFIX="${_omb_prompt_blue}"
GIT_SHA_SUFFIX="${_omb_prompt_reset_color}"
function git_short_sha() {
SHA=$(git rev-parse --short HEAD 2> /dev/null) && echo "$GIT_SHA_PREFIX$SHA$GIT_SHA_SUFFIX"
}
function _omb_theme_PROMPT_COMMAND() {
local return_status=""
local ruby="${_omb_prompt_red}$(_omb_prompt_print_ruby_env)${_omb_prompt_reset_color}"
local user_host="${_omb_prompt_green}\h @ \w${_omb_prompt_reset_color}"
local git_branch="$(git_short_sha)${_omb_prompt_cyan}$(scm_prompt_info)${_omb_prompt_reset_color}"
local prompt_symbol=' '
local prompt_char="${_omb_prompt_magenta}>_${_omb_prompt_reset_color} "
PS1="\n${user_host}${prompt_symbol}${ruby} ${git_branch} ${return_status}\n${prompt_char}"
}
_omb_util_add_prompt_command _omb_theme_PROMPT_COMMAND