123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- #!/bin/bash
-
-
-
-
-
-
- __bashum__lastrv() {
- local rvfile
- local lastrv
- local do_rm
- rvfile="$RV_TMP/$$.lastrv"
- lastrv="$(cat "$rvfile")"
- do_rm=false
- test "$1" == "-r" && do_rm=true
- if [ "0$lastrv" -gt 0 ];
- then
- echo "!$lastrv!"
- else
- echo ""
- fi
- $do_rm && rm -f "$rvfile"
- }
-
- __bashum__save_rv() {
- local rvfile="$RV_TMP/$$.lastrv"
- [ -w "${rvfile%/*}" ] && echo "$1" > "$rvfile"
- }
-
- __bashum__task_context() {
- local ctx
- type -t task >/dev/null || return 1
- ctx=$(task _get rc.context)
- test -n "$ctx" || return
- echo -n "|$ctx"
- }
-
-
- __bashum__mkps1() {
-
-
- test -n "$SSH_CONNECTION" \
- && echo -n "$(__bashum__mkps1user)"
- echo -n "$lwhite@"
- echo -n "$(__bashum__mkps1host)"
- echo -n "$yellow"
- echo -n '$(__bashum__task_context)'
- echo -n "$normal"
- echo -n "$lwhite:"
- echo -n "$lblue\w$normal"
- echo -n "$green"
- echo -n '$(__git_ps1 "(%s)")'
- echo -n "$normal"
- echo -n "$lred"
- echo -n '$(__bashum__lastrv -r)'
- echo -n "$normal"
- echo '$ '
- }
-
-
- __bashum__mkps2() {
- echo "$lwhite·$blue>$yellow>$white>$normal "
- }
-
-
- PS1=$(__bashum__mkps1)
- PS2=$(__bashum__mkps2)
-
-
- __bashum__set_title() {
-
-
-
-
-
- case "$BASH_COMMAND" in
- *"\033]"0*)
-
-
-
-
- ;;
- "")
- echo -ne "\033]0; "
- echo -n "$(__bashum__lastrv)$(__bashum__mkhostid)${PWD/$HOME/\~}\$"
- echo -ne "\007"
- ;;
- *)
- echo -ne "\033]0; "
- echo -n "${BASH_COMMAND} ($(__bashum__mkhostid)${PWD/$HOME/\~})"
- echo -ne "\007"
- ;;
- esac
- }
-
-
- __bashum__mkpc() {
-
-
-
- echo -n '__bashum__save_rv $?;'
- case "$TERM" in
- xterm*|rxvt*|screen*)
- echo -n 'echo -ne "\033]0;'
- echo -n ' '
- echo -n '$(__bashum__lastrv)'
- echo -n "$(__bashum__mkhostid)"
- echo -n '${PWD/$HOME/\~}'
- echo -n '\$'
- echo -n '\007"'
- ;;
- esac
- }
-
- __bashum__mkhostid() {
- test -n "$SSH_CONNECTION" || return
- echo "${HOSTNAME%%.*}:"
- }
-
- __bashum__setup_traps() {
- case "$TERM" in
- xterm*|rxvt*|screen*) trap __bashum__set_title DEBUG ;;
- esac
- }
-
- __bashum__setup_traps
-
- PROMPT_COMMAND=$(__bashum__mkpc)
-
- stman check
- tasknag
|