summaryrefslogtreecommitdiffstats
path: root/.config/bash/prompt
diff options
context:
space:
mode:
Diffstat (limited to '.config/bash/prompt')
-rw-r--r--.config/bash/prompt12
1 files changed, 11 insertions, 1 deletions
diff --git a/.config/bash/prompt b/.config/bash/prompt
index 84cf84d..428fac7 100644
--- a/.config/bash/prompt
+++ b/.config/bash/prompt
@@ -35,7 +35,17 @@ _prompt_git() {
printf '%s%s ' "$branch" "${diverge:+ $diverge}"
}
+_prompt_status() {
+ ((_LAST_STATUS)) || return
+ printf '%s' "${_PROMPT_COLORS[bold_red]}"
+ printf '%s%s' $'' "$_LAST_STATUS"
+ printf '%s' "${_PROMPT_COLORS[reset]}"
+}
+
+# Save the exit status before other prompt function clobber it
+PROMPT_COMMAND='_LAST_STATUS=$?'
+
# The quoted parts are expanded on each prompt, the unquoted parts immediately
-PS1=${_PROMPT_COLORS[bold_green]}'[\u@\h'${_PROMPT_COLORS[bold_white]}' \W $(_prompt_git)$(_prompt_shlvl)$(_prompt_jobs)]\$'${_PROMPT_COLORS[reset]}' '
+PS1=${_PROMPT_COLORS[bold_green]}'[\u@\h'${_PROMPT_COLORS[bold_white]}' \W $(_prompt_git)$(_prompt_shlvl)$(_prompt_jobs)$(_prompt_status)]\$'${_PROMPT_COLORS[reset]}' '
# vim: ft=bash