diff options
Diffstat (limited to '')
-rw-r--r-- | .bashrc | 57 |
1 files changed, 37 insertions, 20 deletions
@@ -28,26 +28,43 @@ if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then debian_chroot=$(cat /etc/debian_chroot) fi -b_prompt() { - case $TERM in - xterm*) - local TITLEBAR="\[\033]0;${debian_chroot:+($debian_chroot) }\h:\w\007\]" - ;; - *) - local TITLEBAR='' - ;; - esac - - PS1="${TITLEBAR}\ -$([ $(id -u) = "0" ] && printf "\[\e[1;31m\]")\ -: ${debian_chroot:+($debian_chroot) }\ -\h:\w\ -$([ -n "$GUIX_ENVIRONMENT" ] && printf " [env]")\ - ;\ -$([ $(id -u) = "0" ] && printf "\[\e[00m\]")\ - " -} -b_prompt +# Set a fancy prompt (non-color, unless we know we "want" color). +case "$TERM" in + xterm-color|*-256color) color_prompt=yes;; +esac + +# Uncomment for a colored prompt, if the terminal has the capability; +# turned off by default to not distract the user: the focus in a +# terminal window should be on the output of commands, not on the +# prompt. +# force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and + # such a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# Set the title to user@host:dir for some terminal emulators. +case "$TERM" in + xterm*|rxvt*|foot*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h:\w\a\]$PS1" + ;; + *) + ;; +esac # cursor # ------ |