diff options
Diffstat (limited to '.config/bash/prompt')
| -rw-r--r-- | .config/bash/prompt | 12 |
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 |
