diff --git a/aliases/available/osx.aliases.bash b/aliases/available/osx.aliases.bash
index 3d82b50..3a5f45a 100644
--- a/aliases/available/osx.aliases.bash
+++ b/aliases/available/osx.aliases.bash
@@ -5,7 +5,7 @@
 alias fireworks="open -a '/Applications/Adobe Fireworks CS3/Adobe Fireworks CS3.app'"
 alias photoshop="open -a '/Applications/Adobe Photoshop CS3/Adobe Photoshop.app'"
 alias preview="open -a '$PREVIEW'"
-alias xcode="open -a '/Developer/Applications/Xcode.app'"
+alias xcode="open -a '/Applications/XCode.app'"
 alias filemerge="open -a '/Developer/Applications/Utilities/FileMerge.app'"
 alias safari="open -a safari"
 alias firefox="open -a firefox"
diff --git a/completion/available/capistrano.completion.bash b/completion/available/capistrano.completion.bash
new file mode 100644
index 0000000..a48bd4d
--- /dev/null
+++ b/completion/available/capistrano.completion.bash
@@ -0,0 +1,17 @@
+#!/usr/bin/env bash
+# Bash completion support for Capistrano.
+
+export COMP_WORDBREAKS=${COMP_WORDBREAKS/\:/}
+
+_capcomplete() {
+    if [ -f Capfile ]; then
+        recent=`ls -t .cap_tasks~ Capfile **/*.cap 2> /dev/null | head -n 1`
+        if [[ $recent != '.cap_tasks~' ]]; then
+            cap --tool --tasks | cut -d " " -f 2 > .cap_tasks~
+        fi
+        COMPREPLY=($(compgen -W "`cat .cap_tasks~`" -- ${COMP_WORDS[COMP_CWORD]}))
+        return 0
+    fi
+}
+
+complete -o default -o nospace -F _capcomplete cap
diff --git a/completion/available/grunt.completion.bash b/completion/available/grunt.completion.bash
new file mode 100644
index 0000000..99a96b5
--- /dev/null
+++ b/completion/available/grunt.completion.bash
@@ -0,0 +1,49 @@
+#!/bin/bash
+
+# grunt-cli
+# http://gruntjs.com/
+#
+# Copyright (c) 2012 Tyler Kellen, contributors
+# Licensed under the MIT license.
+# https://github.com/gruntjs/grunt/blob/master/LICENSE-MIT
+
+# Usage:
+#
+# To enable bash <tab> completion for grunt, add the following line (minus the
+# leading #, which is the bash comment character) to your ~/.bashrc file:
+#
+# eval "$(grunt --completion=bash)"
+
+# Search the current directory and all parent directories for a gruntfile.
+function _grunt_gruntfile() {
+  local curpath="$PWD"
+  while [[ "$curpath" ]]; do
+    for gruntfile in "$curpath/"{G,g}runtfile.{js,coffee}; do
+      if [[ -e "$gruntfile" ]]; then
+        echo "$gruntfile"
+        return
+      fi
+    done
+    curpath="${curpath%/*}"
+  done
+  return 1
+}
+
+# Enable bash autocompletion.
+function _grunt_completions() {
+  # The currently-being-completed word.
+  local cur="${COMP_WORDS[COMP_CWORD]}"
+  # The current gruntfile, if it exists.
+  local gruntfile="$(_grunt_gruntfile)"
+  # The current grunt version, available tasks, options, etc.
+  local gruntinfo="$(grunt --version --verbose 2>/dev/null)"
+  # Options and tasks.
+  local opts="$(echo "$gruntinfo" | awk '/Available options: / {$1=$2=""; print $0}')"
+  local compls="$(echo "$gruntinfo" | awk '/Available tasks: / {$1=$2=""; print $0}')"
+  # Only add -- or - options if the user has started typing -
+  [[ "$cur" == -* ]] && compls="$compls $opts"
+  # Tell complete what stuff to show.
+  COMPREPLY=($(compgen -W "$compls" -- "$cur"))
+}
+
+complete -o default -F _grunt_completions grunt
diff --git a/plugins/available/osx.plugin.bash b/plugins/available/osx.plugin.bash
index fde9c83..5b605ce 100644
--- a/plugins/available/osx.plugin.bash
+++ b/plugins/available/osx.plugin.bash
@@ -11,7 +11,7 @@
     end
     tell application "Terminal"
       activate
-      do script with command "cd \"$PWD\"; $*" in window 1
+      do script with command " cd \"$PWD\"; $*" in window 1
     end tell
 EOF
 }
diff --git a/themes/pure/pure.theme.bash b/themes/pure/pure.theme.bash
new file mode 100644
index 0000000..eaeb765
--- /dev/null
+++ b/themes/pure/pure.theme.bash
@@ -0,0 +1,43 @@
+# scm theming
+SCM_THEME_PROMPT_PREFIX="|"
+SCM_THEME_PROMPT_SUFFIX=""
+
+SCM_THEME_PROMPT_DIRTY=" ${bold_red}✗${normal}"
+SCM_THEME_PROMPT_CLEAN=" ${green}✓${normal}"
+SCM_GIT_CHAR="${green}±${normal}"
+SCM_SVN_CHAR="${bold_cyan}⑆${normal}"
+SCM_HG_CHAR="${bold_red}☿${normal}"
+
+### TODO: openSUSE has already colors enabled, check if those differs from stock
+# 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:'
+
+scm_prompt() {
+    CHAR=$(scm_char) 
+    if [ $CHAR = $SCM_NONE_CHAR ] 
+        then 
+            return
+        else 
+            echo "[$(scm_char)$(scm_prompt_info)]"
+    fi 
+}
+
+pure_prompt() {
+    ps_host="${bold_blue}\h${normal}";
+    ps_user="${green}\u${normal}";
+    ps_user_mark="${green} $ ${normal}";
+    ps_root="${red}\u${red}";
+    ps_root="${red} # ${normal}"
+    ps_path="${yellow}\w${normal}";
+
+    # make it work
+    case $(id -u) in
+        0) PS1="$ps_root@$ps_host$(scm_prompt):$ps_path$ps_root_mark"
+            ;;
+        *) PS1="$ps_user@$ps_host$(scm_prompt):$ps_path$ps_user_mark"
+            ;;
+    esac
+}
+
+PROMPT_COMMAND=pure_prompt;
diff --git a/themes/sexy/sexy.theme.bash b/themes/sexy/sexy.theme.bash
index 949dcca..15b9a97 100644
--- a/themes/sexy/sexy.theme.bash
+++ b/themes/sexy/sexy.theme.bash
@@ -40,4 +40,8 @@
   git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e "s/* \(.*\)/\1$(parse_git_dirty)/"
 }
 
-PS1="\[${BOLD}${MAGENTA}\]\u \[$WHITE\]at \[$ORANGE\]\h \[$WHITE\]in \[$GREEN\]\w\[$WHITE\]\$([[ -n \$(git branch 2> /dev/null) ]] && echo \" on \")\[$PURPLE\]\$(parse_git_branch)\[$WHITE\]\n\$ \[$RESET\]"
+function prompt_command() {
+  PS1="\[${BOLD}${MAGENTA}\]\u \[$WHITE\]at \[$ORANGE\]\h \[$WHITE\]in \[$GREEN\]\w\[$WHITE\]\$([[ -n \$(git branch 2> /dev/null) ]] && echo \" on \")\[$PURPLE\]\$(parse_git_branch)\[$WHITE\]\n\$ \[$RESET\]"
+}
+
+PROMPT_COMMAND=prompt_command
