aboutsummaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorJohn Ankarstr\xf6m <john@ankarstrom.se>2021-06-05 14:42:46 +0200
committerJohn Ankarstr\xf6m <john@ankarstrom.se>2021-06-05 14:43:42 +0200
commitda151067f5ed8cfa29ee6486ce9358e0fdd89850 (patch)
treef6842f4e9c5ce60619a6726d07b80b9f3b2b3430 /etc
parent3651c8e9e05a287804215864283845b4973e67e1 (diff)
downloadlbsd-da151067f5ed8cfa29ee6486ce9358e0fdd89850.tar.gz
shrc: Support bash
Diffstat (limited to 'etc')
-rw-r--r--etc/shrc29
1 files changed, 24 insertions, 5 deletions
diff --git a/etc/shrc b/etc/shrc
index c6aff47..29c34ac 100644
--- a/etc/shrc
+++ b/etc/shrc
@@ -7,15 +7,34 @@ ll(){ ls -lp ${1+"$@"}; }
case "$-" in *i*)
set -o emacs
+ PS1=
/bin/test -z "${HOST}" && HOST="$(hostname)"
- PS1=' '${HOST%%.*}
+ case "$SHELL" in
+ *bash) PS1=${HOST%%.*} ;;
+ *ksh) PS1=' '${HOST%%.*} ;;
+ *) PS1='${HOST%%.*}' ;;
+ esac
/bin/test "$(whoami)" = root && PS1=$PS1'# ' || PS1=$PS1'$ '
- # change terminal title to working directory on prompt
+ # dynamically change terminal title
case "$0,$TERM,$XTERM_SHELL" in
- *ksh,screen,*) PS1=$PS1'$(safetitle "$PWD")' ;;
- *ksh,*,/*) PS1=$PS1']0;$PWD' ;;
- *) ;;
+ *ksh,screen,*)
+ PS1=$PS1'$(safetitle "$PWD")' ;;
+ *ksh,*,/*)
+ PS1=$PS1']0;$PWD' ;;
+ *bash,screen,*)
+ PROMPT_COMMAND='safetitle "${PWD/#\/home\/john/\~}"'
+ cmdtitle() {
+ case "$BASH_COMMAND" in
+ safetitle*) ;;
+ *) safetitle "$BASH_COMMAND" ;;
+ esac
+ } ;;
+ *bash,*,/*)
+ PS1='\[\033]0;\w\007\]'$PS1
+ cmdtitle() { echo -ne "\033]0;$BASH_COMMAND\007"; } ;;
+ *)
+ ;;
esac
# This file is used by shells that might not support