X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/441fb2bd935dd626f5a69f4a6fd0f17637993f93..6093fc3ea2f1981fa5305f5933eeaaaad2075312:/dot/shell-rc diff --git a/dot/shell-rc b/dot/shell-rc index c62471e..b8bfb3d 100644 --- a/dot/shell-rc +++ b/dot/shell-rc @@ -93,9 +93,9 @@ __mdw_set_prompt_pieces () { ## Fancy highlighting in some terminals. local bold unbold nl more host dir - local gitcolour rccolour uncolour + local gitcolour extracolour rccolour uncolour bold="" unbold="" nl="" more="" - gitcolour="" rccolour="" uncolour="" + gitcolour="" extracolour="" rccolour="" uncolour="" __mdw_set_prompt_hacks ## Choose the right delimiters. Highlight root prompts specially; @@ -138,6 +138,8 @@ __mdw_set_prompt_pieces () { __mdw_prompt_git_right="$uncolour$bold" __mdw_prompt_rc_left="$unbold$rccolour" __mdw_prompt_rc_right="$uncolour$bold" + __mdw_prompt_extra_left="$unbold$extracolour" + __mdw_prompt_extra_right="$uncolour$bold" __mdw_prompt_right="$right$unbold" __mdw_prompt_more=" $more$bold>$unbold " } @@ -150,7 +152,7 @@ __mdw_set_prompt () { ;; *) __mdw_last_rc=$? - local git rc + local git extra rc if type __git_ps1 >/dev/null 2>&1; then git="$__mdw_prompt_git_left$(__git_ps1)$__mdw_prompt_git_right" else @@ -160,7 +162,11 @@ __mdw_set_prompt () { 0) rc="" ;; *) rc="$__mdw_prompt_rc_left rc=$__mdw_last_rc$__mdw_prompt_rc_right" ;; esac - PS1="$__mdw_prompt_left$git$rc$__mdw_prompt_right" + case $__mdw_prompt_extra in + ?*) extra="$__mdw_prompt_extra_left [$__mdw_prompt_extra]$__mdw_prompt_extra_right" ;; + *) extra="" ;; + esac + PS1="$__mdw_prompt_left$git$extra$rc$__mdw_prompt_right" PS2="$PS1$__mdw_prompt_more" unset __mdw_last_rc ;; @@ -467,6 +473,13 @@ case $(id -u) in ;; esac +## Install wakeup machinery for long-running programs. +case ${DISPLAY+t},${WINDOWID+t},${__mdw_precmd_hook+t},${__mdw_preexec_hook+t} in + t,t,t,t) + if [ -t 0 ] && __mdw_programp notify-send; then . $HOME/bin/wakey.sh; fi + ;; +esac + ## Run any local hooks. __mdw_source_if_exists "$HOME/.shell-local"