diff --git a/aliases/available/general.aliases.bash b/aliases/available/general.aliases.bash
index 79bd7aa..2ed9d13 100644
--- a/aliases/available/general.aliases.bash
+++ b/aliases/available/general.aliases.bash
@@ -46,6 +46,15 @@
 alias	md='mkdir -p'
 alias	rd=rmdir
 
+# show / hide hidden files
+alias showhidden="defaults write com.apple.finder AppleShowAllFiles TRUE; killall Finder"
+alias hidehidden="defaults write com.apple.finder AppleShowAllFiles FALSE; killall Finder"
+# display IP address
+alias myip="echo ethernet:; ipconfig getifaddr en0; echo wireless:; ipconfig getifaddr en1"
+
+# http://snippets.dzone.com/posts/show/2486
+alias killsvn="find . -name ".svn" -type d -exec rm -rf {} \;"
+
 function aliases-help() {
   echo "Generic Alias Usage"
   echo
diff --git a/aliases/available/git.aliases.bash b/aliases/available/git.aliases.bash
index 45d7d05..7cfc9d9 100644
--- a/aliases/available/git.aliases.bash
+++ b/aliases/available/git.aliases.bash
@@ -39,8 +39,6 @@
     ;;
 esac
 
-
-
 function git-help() {
   echo "Git Custom Aliases Usage"
   echo
diff --git a/aliases/available/jekyll.aliases.bash b/aliases/available/jekyll.aliases.bash
index e52c035..feaf245 100644
--- a/aliases/available/jekyll.aliases.bash
+++ b/aliases/available/jekyll.aliases.bash
@@ -18,3 +18,6 @@
 # Rsync the site to the remote server
 
 alias deploysite="builtin cd $JEKYLL_LOCAL_ROOT && rsync -rz _site/ $JEKYLL_REMOTE_ROOT"
+
+alias jkas="jekyll --auto --server"
+alias rmjkas="rm -rf _site/* && jkas"
\ No newline at end of file
diff --git a/aliases/available/osx.aliases.bash b/aliases/available/osx.aliases.bash
index e074695..d25c051 100644
--- a/aliases/available/osx.aliases.bash
+++ b/aliases/available/osx.aliases.bash
@@ -14,6 +14,7 @@
 alias f='open -a Finder '
 alias textedit='open -a TextEdit'
 alias hex='open -a "Hex Fiend"'
+alias gitx="open -a GitX"
 
 if [ -s /usr/bin/firefox ] ; then
   unalias firefox
diff --git a/plugins/available/battery.plugin.bash b/plugins/available/battery.plugin.bash
index 4946c2c..7c15812 100644
--- a/plugins/available/battery.plugin.bash
+++ b/plugins/available/battery.plugin.bash
@@ -69,11 +69,11 @@
   local F_C='▸'
   # Depleted char
   local D_C='▹'
-  local DEPLETED_COLOR='\[${normal}\]'
-  local FULL_COLOR='\[${green}\]'
-  local HALF_COLOR='\[${yellow}\]'
-  local DANGER_COLOR='\[${red}\]'
-  local BATTERY_OUTPUT='${DEPLETED_COLOR}${D_C}${D_C}${D_C}${D_C}${D_C}'
+  local DEPLETED_COLOR="${normal}"
+  local FULL_COLOR="${green}"
+  local HALF_COLOR="${yellow}"
+  local DANGER_COLOR="${red}"
+  local BATTERY_OUTPUT="${DEPLETED_COLOR}${D_C}${D_C}${D_C}${D_C}${D_C}"
   local BATTERY_PERC=$(battery_percentage)
 
   case $BATTERY_PERC in
@@ -123,7 +123,7 @@
       echo "${HALF_COLOR}${F_C}${DEPLETED_COLOR}${D_C}${D_C}${D_C}${D_C}${normal}"
       ;;
     *)
-      echo "${DANGER_COLOR}UNPLG\[${normal}\]"
+      echo "${DANGER_COLOR}UNPLG${normal}"
       ;;
   esac
 }
diff --git a/plugins/available/git.plugins.bash b/plugins/available/git.plugins.bash
index b0b9ce8..3fbdac6 100644
--- a/plugins/available/git.plugins.bash
+++ b/plugins/available/git.plugins.bash
@@ -5,6 +5,13 @@
   git remote add origin $GIT_HOSTING:$1.git
 }
 
+# git add remote branch
+function garb() {
+  echo "Adding remote branch '$1'";
+  git config branch.$1.remote origin;
+  git config branch.$1.merge refs/heads/$1;
+}
+
 function git_first_push {
   echo "Running: git push origin master:refs/heads/master"
   git push origin master:refs/heads/master
@@ -92,4 +99,3 @@
     echo "you're currently not in a git repository"
 fi
 }
-
diff --git a/plugins/available/jekyll.plugins.bash b/plugins/available/jekyll.plugins.bash
index aebe69b..3b96f45 100644
--- a/plugins/available/jekyll.plugins.bash
+++ b/plugins/available/jekyll.plugins.bash
@@ -26,7 +26,7 @@
 	fi
 }
 
-newpost() {
+jknewpost() {
 
 	# 'builtin cd' into the local jekyll root
 
diff --git a/themes/base.theme.bash b/themes/base.theme.bash
index 71b11ae..bd29a42 100644
--- a/themes/base.theme.bash
+++ b/themes/base.theme.bash
@@ -15,7 +15,7 @@
 SVN='svn'
 SCM_SVN_CHAR='⑆'
 
-SCM_NONE_CHAR='○'
+SCM_NONE_CHAR='·'
 
 RVM_THEME_PROMPT_PREFIX=' |'
 RVM_THEME_PROMPT_SUFFIX='|'
diff --git a/themes/bobby/bobby.theme.bash b/themes/bobby/bobby.theme.bash
index 8b48ddd..cb51fb8 100644
--- a/themes/bobby/bobby.theme.bash
+++ b/themes/bobby/bobby.theme.bash
@@ -4,15 +4,6 @@
 SCM_THEME_PROMPT_PREFIX=" |"
 SCM_THEME_PROMPT_SUFFIX="${green}|"
 
-
-# PROMPT="\[${bold_cyan}\]\[\$(scm_char)\]\[${green}\]\[\$(scm_prompt_info)\]\[${purple}\]\[\$(rvm_version_prompt)\] \[${yellow}\]\h \[${reset_color}\]in \[${green}\]\w \[${reset_color}\]\[\n\[${green}\]→\[${reset_color}\] "
-
-
-PROMPT="\n\[${yellow}\]\[\$(rvm_version_prompt)\] \[${purple}\]\h \[${reset_color}\]in \[${green}\]\w\n\[${bold_cyan}\]\[\$(scm_char)\]\[${green}\]\[\$(scm_prompt_info)\] \[\[${green}\]→\[${reset_color}\] "
-
-
-
-# git theming
 GIT_THEME_PROMPT_DIRTY=" ${red}✗"
 GIT_THEME_PROMPT_CLEAN=" ${bold_green}✓"
 GIT_THEME_PROMPT_PREFIX=" ${green}|"
@@ -21,3 +12,9 @@
 RVM_THEME_PROMPT_PREFIX="|"
 RVM_THEME_PROMPT_SUFFIX="|"
 
+function prompt_command() {
+    #PS1="${bold_cyan}$(scm_char)${green}$(scm_prompt_info)${purple}$(rvm_version_prompt) ${yellow}\h ${reset_color}in ${green}\w ${reset_color}\n${green}→${reset_color} "
+    PS1="\n${yellow}$(rvm_version_prompt) ${purple}\h ${reset_color}in ${green}\w\n${bold_cyan}$(scm_char)${green}$(scm_prompt_info) ${green}→${reset_color} "
+}
+
+PROMPT_COMMAND=prompt_command;
diff --git a/themes/candy/candy.theme.bash b/themes/candy/candy.theme.bash
index ef0ba26..64d31b8 100644
--- a/themes/candy/candy.theme.bash
+++ b/themes/candy/candy.theme.bash
@@ -1,2 +1,6 @@
 #!/bin/bash
-PROMPT="${green}\u@\h ${blue}\T ${reset_color}${white}\w${reset_color}\[\$(scm_prompt_info)\]${blue} →${bold_blue} \$${reset_color} "
\ No newline at end of file
+function prompt_command() {
+    PS1="${green}\u@\h ${blue}\T ${reset_color}${white}\w${reset_color}$(scm_prompt_info)\]${blue} →${bold_blue} ${reset_color} ";
+}
+
+PROMPT_COMMAND=prompt_command;
diff --git a/themes/clean/clean.theme.bash b/themes/clean/clean.theme.bash
index 2fc418f..9998d65 100644
--- a/themes/clean/clean.theme.bash
+++ b/themes/clean/clean.theme.bash
@@ -1,9 +1,3 @@
-if [ "$(whoami)" = root ]; then no_color=$red; else no_color=$white; fi
-
-PROMPT="${no_color}\u${reset_color}:${blue}\W/${reset_color} \[\$(scm_prompt_info)\]$ "
-RPROMPT='[\t]'
-
-
 # git theming
 ZSH_THEME_GIT_PROMPT_PREFIX="${bold_blue}(${yellow}%B"
 ZSH_THEME_GIT_PROMPT_SUFFIX="%b${bold_blue})${reset_color} "
@@ -13,4 +7,14 @@
 
 # LS colors, made with http://geoff.greer.fm/lscolors/
 export LSCOLORS="Gxfxcxdxbxegedabagacad"
-export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:'
\ No newline at end of file
+export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:'
+
+function prompt_command() {
+
+    if [ "$(whoami)" = root ]; then no_color=$red; else no_color=$white; fi
+
+    PS1="${no_color}\u${reset_color}:${blue}\W/${reset_color} \[\$(scm_prompt_info)\]$ "
+    RPROMPT='[\t]'
+}
+
+PROMPT_COMMAND=prompt_command;
diff --git a/themes/colors.theme.bash b/themes/colors.theme.bash
index 9aa253f..ff8776d 100644
--- a/themes/colors.theme.bash
+++ b/themes/colors.theme.bash
@@ -1,44 +1,44 @@
 #!/bin/bash
 
-black=$'\e[0;30m'
-red=$'\e[0;31m'
-green=$'\e[0;32m'
-yellow=$'\e[0;33m'
-blue=$'\e[0;34m'
-purple=$'\e[0;35m'
-cyan=$'\e[0;36m'
-white=$'\e[1;37m'
-orange=$'\e[33;40m'
+black="\[\e[0;30m\]"
+red="\[\e[0;31m\]"
+green="\[\e[0;32m\]"
+yellow="\[\e[0;33m\]"
+blue="\[\e[0;34m\]"
+purple="\[\e[0;35m\]"
+cyan="\[\e[0;36m\]"
+white="\[\e[1;37m\]"
+orange="\[\e[33;40m\]"
 
-bold_black=$'\e[1;30m'
-bold_red=$'\e[1;31m'
-bold_green=$'\e[1;32m'
-bold_yellow=$'\e[1;33m'
-bold_blue=$'\e[1;34m'
-bold_purple=$'\e[1;35m'
-bold_cyan=$'\e[1;36m'
-bold_white=$'\e[1;37m'
-bold_orange=$'\e[1;33;40m'
+bold_black="\[\e[1;30m\]"
+bold_red="\[\e[1;31m\]"
+bold_green="\[\e[1;32m\]"
+bold_yellow="\[\e[1;33m\]"
+bold_blue="\[\e[1;34m\]"
+bold_purple="\[\e[1;35m\]"
+bold_cyan="\[\e[1;36m\]"
+bold_white="\[\e[1;37m\]"
+bold_orange="\[\e[1;33;40m\]"
 
-underline_black=$'\e[4;30m'
-underline_red=$'\e[4;31m'
-underline_green=$'\e[4;32m'
-underline_yellow=$'\e[4;33m'
-underline_blue=$'\e[4;34m'
-underline_purple=$'\e[4;35m'
-underline_cyan=$'\e[4;36m'
-underline_white=$'\e[4;37m'
-underline_orange=$'\e[4;33;40m'
+underline_black="\[\e[4;30m\]"
+underline_red="\[\e[4;31m\]"
+underline_green="\[\e[4;32m\]"
+underline_yellow="\[\e[4;33m\]"
+underline_blue="\[\e[4;34m\]"
+underline_purple="\[\e[4;35m\]"
+underline_cyan="\[\e[4;36m\]"
+underline_white="\[\e[4;37m\]"
+underline_orange="\[\e[4;33;40m\]"
 
-background_black=$'\e[40m'
-background_red=$'\e[41m'
-background_green=$'\e[42m'
-background_yellow=$'\e[43m'
-background_blue=$'\e[44m'
-background_purple=$'\e[45m'
-background_cyan=$'\e[46m'
-background_white=$'\e[47m'
+background_black="\[\e[40m\]"
+background_red="\[\e[41m\]"
+background_green="\[\e[42m\]"
+background_yellow="\[\e[43m\]"
+background_blue="\[\e[44m\]"
+background_purple="\[\e[45m\]"
+background_cyan="\[\e[46m\]"
+background_white="\[\e[47m\]"
 
 
-normal=$'\e[00m'
-reset_color=$'\e[39m'
\ No newline at end of file
+normal="\[\e[00m\]"
+reset_color="\[\e[39m\]"
diff --git a/themes/demula/demula.theme.bash b/themes/demula/demula.theme.bash
index 0e6744a..bd48e12 100644
--- a/themes/demula/demula.theme.bash
+++ b/themes/demula/demula.theme.bash
@@ -33,22 +33,22 @@
 #*color7: #E5E5E5
 
 # ----------------------------------------------------------------- COLOR CONF
-D_DEFAULT_COLOR='\[${normal}\]'
-D_INTERMEDIATE_COLOR='\[${white}\]'
-D_USER_COLOR='\[${purple}\]'
-D_SUPERUSER_COLOR='\[${red}\]'
-D_MACHINE_COLOR='\[${cyan}\]'
-D_DIR_COLOR='\[${green}\]'
-D_SCM_COLOR='\[${yellow}\]'
-D_BRANCH_COLOR='\[${yellow}\]'
-D_CHANGES_COLOR='\[${white}\]'
-D_CMDFAIL_COLOR='\[${red}\]'
-D_VIMSHELL_COLOR='\[${cyan}\]'
+D_DEFAULT_COLOR="${normal}"
+D_INTERMEDIATE_COLOR="${white}"
+D_USER_COLOR="${purple}"
+D_SUPERUSER_COLOR="${red}"
+D_MACHINE_COLOR="${cyan}"
+D_DIR_COLOR="${green}"
+D_SCM_COLOR="${yellow}"
+D_BRANCH_COLOR="${yellow}"
+D_CHANGES_COLOR="${white}"
+D_CMDFAIL_COLOR="${red}"
+D_VIMSHELL_COLOR="${cyan}"
 
 # ------------------------------------------------------------------ FUNCTIONS
 case $TERM in
   xterm*)
-      TITLEBAR="\[\033]0;\w\007\]"
+      TITLEBAR="\033]0;\w\007"
       ;;
   *)
       TITLEBAR=""
@@ -84,10 +84,10 @@
 
 # -------------------------------------------------------------- PROMPT OUTPUT
 prompt() {
-  local SAVE_CURSOR='\[\033[s\]'
-  local RESTORE_CURSOR='\[\033[u\]'
-  local MOVE_CURSOR_RIGHTMOST='\[\033[500C\]'
-  local MOVE_CURSOR_5_LEFT='\[\033[5D\]'
+  local SAVE_CURSOR='\033[s'
+  local RESTORE_CURSOR='\033[u'
+  local MOVE_CURSOR_RIGHTMOST='\033[500C'
+  local MOVE_CURSOR_5_LEFT='\033[5D'
 
   if [ $(uname) = "Linux" ];
   then
diff --git a/themes/doubletime/doubletime.theme.bash b/themes/doubletime/doubletime.theme.bash
index 91844f0..1237f80 100644
--- a/themes/doubletime/doubletime.theme.bash
+++ b/themes/doubletime/doubletime.theme.bash
@@ -1,9 +1,9 @@
 #!/bin/bash
 SCM_THEME_PROMPT_DIRTY=''
 SCM_THEME_PROMPT_CLEAN=''
-SCM_GIT_CHAR='${bold_cyan}±${normal}'
-SCM_SVN_CHAR='${bold_cyan}⑆${normal}'
-SCM_HG_CHAR='${bold_red}☿${normal}'
+SCM_GIT_CHAR="${bold_cyan}±${normal}"
+SCM_SVN_CHAR="${bold_cyan}⑆${normal}"
+SCM_HG_CHAR="${bold_red}☿${normal}"
 SCM_THEME_PROMPT_PREFIX=""
 SCM_THEME_PROMPT_SUFFIX=""
 RVM_THEME_PROMPT_PREFIX=" ("
@@ -32,7 +32,7 @@
   fi
 }
 
-prompt_setter() {
+function prompt_setter() {
   # Save history
   history -a
   history -c
@@ -44,8 +44,8 @@
       clock=$THEME_PROMPT_CLOCK_FORMAT
   fi
   PS1="
-$clock $(scm_char) [\[$THEME_PROMPT_HOST_COLOR\]\u@${THEME_PROMPT_HOST}\[$reset_color\]] $(virtualenv_prompt)\w
-$(doubletime_scm_prompt)\[$reset_color\] $ "
+$clock $(scm_char) [$THEME_PROMPT_HOST_COLOR\u@${THEME_PROMPT_HOST}$reset_color] $(virtualenv_prompt)\w
+$(doubletime_scm_prompt)$reset_color $ "
   PS2='> '
   PS4='+ '
 }
diff --git a/themes/hawaii50/hawaii50.theme.bash b/themes/hawaii50/hawaii50.theme.bash
index ad87e78..21c0b41 100644
--- a/themes/hawaii50/hawaii50.theme.bash
+++ b/themes/hawaii50/hawaii50.theme.bash
@@ -33,22 +33,22 @@
 # COLORS ======================================================================
 ORANGE='\[\e[0;33m\]'
 
-DEFAULT_COLOR='\[${white}\]'
+DEFAULT_COLOR="${white}"
 
-USER_COLOR='\[${purple}\]'
-SUPERUSER_COLOR='\[${red}\]'
+USER_COLOR="${purple}"
+SUPERUSER_COLOR="${red}"
 MACHINE_COLOR=$ORANGE
 IP_COLOR=$ORANGE
-DIRECTORY_COLOR='\[${green}\]'
+DIRECTORY_COLOR="${green}"
 
-VE_COLOR='\[${cyan}\]'
-RVM_COLOR='\[${cyan}\]'
+VE_COLOR="${cyan}"
+RVM_COLOR="${cyan}"
 
-REF_COLOR='\[${purple}\]'
+REF_COLOR="${purple}"
 
 # SCM prompts
-SCM_THEME_PROMPT_DIRTY=' \[${bold_red}\]✗\[${normal}\]'
-SCM_THEME_PROMPT_CLEAN=' \[${bold_green}\]✓\[${normal}\]'
+SCM_THEME_PROMPT_DIRTY=" ${bold_red}✗${normal}"
+SCM_THEME_PROMPT_CLEAN=" ${bold_green}✓${normal}"
 SCM_THEME_PROMPT_PREFIX=' on '
 SCM_THEME_PROMPT_SUFFIX=''
 
@@ -176,9 +176,9 @@
     [ $UID -eq "0" ] && UC=$SUPERUSER_COLOR
 
     if [[ $VIRTUAL_PROMPT_ENABLED == 1 ]]; then
-        PS1="$(scm_char) ${UC}\u ${DEFAULT_COLOR}at ${MACHINE_COLOR}\h ${DEFAULT_COLOR}(${IP_COLOR}$(ip)${DEFAULT_COLOR}) in ${DIRECTORY_COLOR}$(limited_pwd)${DEFAULT_COLOR}$(virtual_prompt_info)$(scm_prompt_info) \$ "
+        PS1="$(scm_char) ${UC}\u ${DEFAULT_COLOR}at ${MACHINE_COLOR}\h ${DEFAULT_COLOR}(${IP_COLOR}$(ip)${DEFAULT_COLOR}) in ${DIRECTORY_COLOR}$(limited_pwd)${DEFAULT_COLOR}$(virtual_prompt_info)$(scm_prompt_info)${reset_color} \$ "
     else
-        PS1="$(scm_char) ${UC}\u ${DEFAULT_COLOR}at ${MACHINE_COLOR}\h ${DEFAULT_COLOR}(${IP_COLOR}$(ip)${DEFAULT_COLOR}) in ${DIRECTORY_COLOR}$(limited_pwd)${DEFAULT_COLOR}$(scm_prompt_info) \$ "
+        PS1="$(scm_char) ${UC}\u ${DEFAULT_COLOR}at ${MACHINE_COLOR}\h ${DEFAULT_COLOR}(${IP_COLOR}$(ip)${DEFAULT_COLOR}) in ${DIRECTORY_COLOR}$(limited_pwd)${DEFAULT_COLOR}$(scm_prompt_info)${reset_color} \$ "
     fi
     PS2='> '
     PS4='+ '
diff --git a/themes/modern-t/modern-t.theme.bash b/themes/modern-t/modern-t.theme.bash
index 55da6e1..12e5b04 100644
--- a/themes/modern-t/modern-t.theme.bash
+++ b/themes/modern-t/modern-t.theme.bash
@@ -1,11 +1,11 @@
 SCM_THEME_PROMPT_PREFIX=""
 SCM_THEME_PROMPT_SUFFIX=""
 
-SCM_THEME_PROMPT_DIRTY=' ${bold_red}✗${normal}'
-SCM_THEME_PROMPT_CLEAN=' ${bold_green}✓${normal}'
-SCM_GIT_CHAR='${bold_green}±${normal}'
-SCM_SVN_CHAR='${bold_cyan}⑆${normal}'
-SCM_HG_CHAR='${bold_red}☿${normal}'
+SCM_THEME_PROMPT_DIRTY=" ${bold_red}✗${normal}"
+SCM_THEME_PROMPT_CLEAN=" ${bold_green}✓${normal}"
+SCM_GIT_CHAR="${bold_green}±${normal}"
+SCM_SVN_CHAR="${bold_cyan}⑆${normal}"
+SCM_HG_CHAR="${bold_red}☿${normal}"
 
 case $TERM in
 	xterm*)
diff --git a/themes/modern/modern.theme.bash b/themes/modern/modern.theme.bash
index 3efe9ff..32c7cab 100644
--- a/themes/modern/modern.theme.bash
+++ b/themes/modern/modern.theme.bash
@@ -1,11 +1,11 @@
 SCM_THEME_PROMPT_PREFIX=""
 SCM_THEME_PROMPT_SUFFIX=""
 
-SCM_THEME_PROMPT_DIRTY=' ${bold_red}✗${normal}'
-SCM_THEME_PROMPT_CLEAN=' ${bold_green}✓${normal}'
-SCM_GIT_CHAR='${bold_green}±${normal}'
-SCM_SVN_CHAR='${bold_cyan}⑆${normal}'
-SCM_HG_CHAR='${bold_red}☿${normal}'
+SCM_THEME_PROMPT_DIRTY=" ${bold_red}✗${normal}"
+SCM_THEME_PROMPT_CLEAN=" ${bold_green}✓${normal}"
+SCM_GIT_CHAR="${bold_green}±${normal}"
+SCM_SVN_CHAR="${bold_cyan}⑆${normal}"
+SCM_HG_CHAR="${bold_red}☿${normal}"
 
 case $TERM in
 	xterm*)
diff --git a/themes/n0qorg/n0qorg.theme.bash b/themes/n0qorg/n0qorg.theme.bash
index fcaca43..2b9def6 100644
--- a/themes/n0qorg/n0qorg.theme.bash
+++ b/themes/n0qorg/n0qorg.theme.bash
@@ -5,7 +5,11 @@
 # host directory (branch*)»
 # for example:
 # ananas ~/Code/bash-it/themes (master*)»
-PROMPT="${bold_blue}\[\$(hostname)\]${normal} \w${normal} ${bold_white}\[\$(git_prompt_info)\]${normal}» "
+function prompt_command() {
+    PS1="${bold_blue}[$(hostname)]${normal} \w${normal} ${bold_white}[$(git_prompt_info)]${normal}» "
+}
+
+PROMPT_COMMAND=prompt_command;
 
 ## git-theme
 # feel free to change git chars.
diff --git a/themes/pete/pete.theme.bash b/themes/pete/pete.theme.bash
index 95f243a..7b6702c 100644
--- a/themes/pete/pete.theme.bash
+++ b/themes/pete/pete.theme.bash
@@ -5,7 +5,7 @@
   history -a
   history -c
   history -r
-  PS1="(\t) $(scm_char) [\[$blue\]\u\[$reset_color\]@\[$green\]\H\[$reset_color\]] \[$yellow\]\w\[$reset_color\]$(scm_prompt_info)$(rvm_version_prompt) $\[$reset_color\] "
+  PS1="(\t) $(scm_char) [$blue\u$reset_color@$green\H$reset_color] $yellow\w${reset_color}$(scm_prompt_info)$(rvm_version_prompt) $reset_color "
   PS2='> '
   PS4='+ '
 }
diff --git a/themes/rainbowbrite/rainbowbrite.theme.bash b/themes/rainbowbrite/rainbowbrite.theme.bash
new file mode 100644
index 0000000..5f91705
--- /dev/null
+++ b/themes/rainbowbrite/rainbowbrite.theme.bash
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+# based off of n0qorg
+# looks like, if you're in a git repo:
+# ± ~/path/to (branch ✓) $
+# in glorious red / blue / yellow color scheme
+
+prompt_setter() {
+  # Save history
+  history -a
+  history -c
+  history -r
+  # displays user@server in purple
+  # PS1="$red$(scm_char) $purple\u@\h$reset_color:$blue\w$yellow$(scm_prompt_info)$(rvm_version_prompt) $black\$$reset_color "
+  # no user@server
+  PS1="$red$(scm_char) $blue\w$yellow$(scm_prompt_info)$(rvm_version_prompt) $black\$$reset_color "
+  PS2='> '
+  PS4='+ '
+}
+
+PROMPT_COMMAND=prompt_setter
+
+SCM_THEME_PROMPT_DIRTY=" ${red}✗"
+SCM_THEME_PROMPT_CLEAN=" ${green}✓"
+SCM_THEME_PROMPT_PREFIX=" ("
+SCM_THEME_PROMPT_SUFFIX="${yellow})"
+RVM_THEME_PROMPT_PREFIX=" ("
+RVM_THEME_PROMPT_SUFFIX=")"
diff --git a/themes/sirup/sirup.theme.bash b/themes/sirup/sirup.theme.bash
index 5066587..146cc35 100644
--- a/themes/sirup/sirup.theme.bash
+++ b/themes/sirup/sirup.theme.bash
@@ -13,6 +13,10 @@
 
   [ "$full" != "" ] && echo "$full"
 }
+ 
+function prompt_command() {
+    # Check http://github.com/Sirupsen/dotfiles for screenshot
+    PS1="$blue\W/$bold_blue$(rvm_version_prompt)$bold_green$(__git_ps1 " (%s)") ${normal}$ "
+}
 
-# Check http://github.com/Sirupsen/dotfiles for screenshot
-PS1='\[$blue\]\W/\[$bold_blue\]$(rvm_version_prompt)\[$bold_green\]$(__git_ps1 " (%s)") \[${normal}\]$ '
+PROMPT_COMMAND=prompt_command;
diff --git a/themes/standard/standard.theme.bash b/themes/standard/standard.theme.bash
index 5ba288c..87402c7 100644
--- a/themes/standard/standard.theme.bash
+++ b/themes/standard/standard.theme.bash
@@ -1,7 +1,3 @@
-PROMPT='\[${green}\]\u\[${normal}\]@\[${green}\]\h\[${normal}\]:\[${blue}\]\w\[${normal}\]\[${red}\]$(prompt_char)$(git_prompt_info)\[${normal}\]\$ '
-
-
-
 # scm themeing
 SCM_THEME_PROMPT_DIRTY="×"
 SCM_THEME_PROMPT_CLEAN="✓"
@@ -19,4 +15,10 @@
 	*)
 	TITLEBAR=""
 	;;
-esac
\ No newline at end of file
+esac
+
+function prompt_command() {
+    PROMPT='${green}\u${normal}@${green}\h${normal}:${blue}\w${normal}${red}$(prompt_char)$(git_prompt_info)${normal}\$ '
+}
+
+PROMPT_COMMAND=prompt_command;
diff --git a/themes/zitron/zitron.theme.bash b/themes/zitron/zitron.theme.bash
index c072686..3ec4d97 100644
--- a/themes/zitron/zitron.theme.bash
+++ b/themes/zitron/zitron.theme.bash
@@ -1,12 +1,6 @@
 #!/bin/bash
 # zitron theme by Florian Baumann <flo@noqqe.de>
 
-## look-a-like
-# user:host:pwd git-branch(*)$
-# for example:
-# noqqe:deathstar:themes master*$
-PROMPT="${no_color}\u:\[\$(hostname)\]${normal}:${bold_yellow}\W/${normal} \[\$(git_prompt_info)\]${reset_color}$ "
-
 ## git-theme
 # feel free to change git chars.
 GIT_THEME_PROMPT_DIRTY="${bold_yellow}*${normal}"
@@ -18,3 +12,13 @@
 # thanks a lot to http://geoff.greer.fm/lscolors/
 export LSCOLORS="Gxfxcxdxbxegedabagacad"
 export LS_COLORS="no=00:fi=00:di=01;33:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;34:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:"
+
+function prompt_command() {
+    ## look-a-like
+    # user:host:pwd git-branch(*)$
+    # for example:
+    # noqqe:deathstar:themes master*$
+    PS1="${no_color}\u:$(hostname)${normal}:${bold_yellow}\W/${normal} $(git_prompt_info)${reset_color}$ "
+}
+
+PROMPT_COMMAND=prompt_command;
diff --git a/themes/zork/zork.theme.bash b/themes/zork/zork.theme.bash
index 54615d7..f541c0d 100644
--- a/themes/zork/zork.theme.bash
+++ b/themes/zork/zork.theme.bash
@@ -1,11 +1,11 @@
 SCM_THEME_PROMPT_PREFIX=""
 SCM_THEME_PROMPT_SUFFIX=""
 
-SCM_THEME_PROMPT_DIRTY=' ${bold_red}✗${normal}'
-SCM_THEME_PROMPT_CLEAN=' ${bold_green}✓${normal}'
-SCM_GIT_CHAR='${bold_green}±${normal}'
-SCM_SVN_CHAR='${bold_cyan}⑆${normal}'
-SCM_HG_CHAR='${bold_red}☿${normal}'
+SCM_THEME_PROMPT_DIRTY=" ${bold_red}✗${normal}"
+SCM_THEME_PROMPT_CLEAN=" ${bold_green}✓${normal}"
+SCM_GIT_CHAR="${bold_green}±${normal}"
+SCM_SVN_CHAR="${bold_cyan}⑆${normal}"
+SCM_HG_CHAR="${bold_red}☿${normal}"
 
 #Mysql Prompt
 export MYSQL_PS1="(\u@\h) [\d]> "
