Skip to content

Instantly share code, notes, and snippets.

@beporter
Created June 2, 2014 14:57
Show Gist options
  • Save beporter/56282f7bd75ab42f460f to your computer and use it in GitHub Desktop.
Save beporter/56282f7bd75ab42f460f to your computer and use it in GitHub Desktop.
Bash Prompt
. /etc/bashrc # Pull in the update_terminal_cwd() function.
export PROMPT_COMMAND="prompt_cmd; update_terminal_cwd"
function prompt_cmd {
# Must be obtained early before any other commands run and exit!
EXITSTATUS="$?"
# regular colors
local K="\[\033[0;30m\]" # black
local R="\[\033[0;31m\]" # red
local G="\[\033[0;32m\]" # green
local Y="\[\033[0;33m\]" # yellow
local B="\[\033[0;34m\]" # blue
local M="\[\033[0;35m\]" # magenta
local C="\[\033[0;36m\]" # cyan
local W="\[\033[0;37m\]" # white
# empahsized (bolded) colors
local EMK="\[\033[1;30m\]"
local EMR="\[\033[1;31m\]"
local EMG="\[\033[1;32m\]"
local EMY="\[\033[1;33m\]"
local EMB="\[\033[1;34m\]"
local EMM="\[\033[1;35m\]"
local EMC="\[\033[1;36m\]"
local EMW="\[\033[1;37m\]"
# background colors
local BGK="\[\033[40m\]"
local BGR="\[\033[41m\]"
local BGG="\[\033[42m\]"
local BGY="\[\033[43m\]"
local BGB="\[\033[44m\]"
local BGM="\[\033[45m\]"
local BGC="\[\033[46m\]"
local BGW="\[\033[47m\]"
# unsets color to term's fg color
local BOLD="\[\033[1m\]"
local NONE="\[\033[0m\]"
# Set the username color based on whether it's root
UC=$W # user's color
[ $UID -eq "0" ] && UC=$R # root's color
# Set the Terminal's title
#PS1='\[\e]1;\s\$ \W\a\e]2;\u@\h\a\]'"$PS1"
TITLEBAR='\[\e]0;\u@\h\a\]'
# Set the prompt symbol color based on exit status of last command
GIT_BRANCH="$( __git_ps1 " (${Y}%s${NONE})" )"
PROMPT="${TITLEBAR}${EMW}[${NONE}${UC}\u${NONE}@${G}\h${NONE}:${C}\W${NONE}${EMW}]${NONE}${GIT_BRANCH}"
if [ "${EXITSTATUS}" -eq "0" ]
then
PS1="${PROMPT} (${G}${EXITSTATUS}${NONE})\$ "
else
PS1="${PROMPT} (${EMR}${EXITSTATUS}${NONE})\$ "
fi
PS2="${BOLD}>${NONE} "
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment