diff --git a/bashrc.d/prompt.sh b/bashrc.d/prompt.sh index 0111c9c..ddfa0d3 100644 --- a/bashrc.d/prompt.sh +++ b/bashrc.d/prompt.sh @@ -1,13 +1,19 @@ # VARIABLES declare -r fg_orange='\001\e[38;5;208m\002' declare -r fg_bleu='\001\e[38;5;39m\002' +declare -r fg_rouge='\001\e[38;5;124m\002' declare -r fg_noir='\001\e[38;5;16m\002' declare -r bg_orange='\001\e[48;5;208m\002' declare -r bg_jaune='\001\e[48;5;214m\002' declare -r bg_bleu='\001\e[48;5;39m\002' +declare -r bg_rouge='\001\e[48;5;124m\002' declare -r reset='\001\e[0m\002' # FONCTIONS +p_geterr() { + err=$? +} + p_start() { echo -e "\n${reset}${fg_orange}\uE0B6" } @@ -25,16 +31,27 @@ p_path() { } p_date() { - echo -e "${bg_bleu} $(date +%H:%M:%S) [$?]${reset}" + echo -e "${bg_bleu} $(date +%H:%M:%S)" +} + +p_err() { + case $err in + 0) echo -e "${bg_bleu}\uF00C${reset}";; + *) echo -e "${bg_bleu}${fg_rouge}\uF00D ${err}${reset}";; + esac } p_end() { - echo -e "${fg_bleu}\uE0B4${reset}" + case $err in + 0) echo -e "${fg_bleu}\uE0B4${reset}";; + *) echo -e "${fg_bleu}\uE0B4${reset}";; + esac } - p_input() { echo -e "${fg_orange}\u25B6${reset}" } -PS1="$(p_start)$(p_user) \$(p_path) \w $(p_date)$(p_end)\n$(p_input) " +PROMPT_COMMAND="p_geterr" + +PS1="$(p_start)$(p_user) \$(p_path) \w \$(p_date) \$(p_err)\$(p_end)\n$(p_input) "