#!/bin/bash # # Fancy bash prompt. # See http://www.debian-administration.org/article/Fancy_Bash_Prompts # command_prompt() { # Last command exit status exit_status="$?" # Colors COLOR_RED="\[\033[31m\]" COLOR_GREEN="\[\033[32m\]" COLOR_YELLOW="\[\033[33m\]" COLOR_BLUE="\[\033[34m\]" COLOR_MAGENTA="\[\033[35m\]" COLOR_CYAN="\[\033[36m\]" COLOR_RED_BOLD="\[\033[31;1m\]" COLOR_GREEN_BOLD="\[\033[32;1m\]" COLOR_YELLOW_BOLD="\[\033[33;1m\]" COLOR_BLUE_BOLD="\[\033[34;1m\]" COLOR_MAGENTA_BOLD="\[\033[35;1m\]" COLOR_CYAN_BOLD="\[\033[36;1m\]" COLOR_NONE="\[\033[0m\]" BOLD="\[\033[1m\]" # Check status if [ "$exit_status" == "0" ]; then status_color="${COLOR_GREEN}" else status_color="${COLOR_RED_BOLD}" fi # Yellow blue theme local base_prompt="${status_color}${exit_status}${COLOR_NONE} ${COLOR_CYAN}\D{%Y%m%d %H:%M:%S}${COLOR_NONE} ${COLOR_CYAN}${debian_chroot:+($debian_chroot) }${COLOR_NONE}${COLOR_YELLOW}\u@\h${COLOR_NONE}:${COLOR_CYAN}\w" # Check if completion is available # See https://github.com/njhartwell/pw3nage #if type __git_ps1 &> /dev/null; then if [ -x "/usr/bin/git" ]; then #PS1="${base_prompt}$(__git_ps1 " (%s)")${COLOR_NONE} \\$ " branch="`/usr/bin/git branch 2> /dev/null | grep '^* ' | sed -e 's/\* //' -e 's/ $//'`" if [ ! -z "$branch" ]; then branch=" (${branch//[^a-z0-9\/]/-})" fi PS1="${base_prompt}$branch${COLOR_NONE} \\$ " else PS1="${base_prompt}${COLOR_NONE} \\$ " fi PS2="${BOLD}>${OFF} " } # Older systems doesn't source git completion by default if ! type __git_ps1 &> /dev/null && [ -e "/etc/bash_completion.d/git" ]; then source /etc/bash_completion.d/git fi # Set the command prompt function PROMPT_COMMAND="command_prompt"