summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Barker <jebarker@gmail.com>2012-02-20 19:05:27 -0500
committerJohn Barker <jebarker@gmail.com>2012-02-20 19:13:38 -0500
commitbcd5b3b52b35a458df87b204119eb18a264a580b (patch)
treed71b83cc241fd38fb218d4bc251b05feeea737f1
parent362927003bcd8052e294dcbdf14f061ef4f2e173 (diff)
downloadzsh-bcd5b3b52b35a458df87b204119eb18a264a580b.tar.gz
zsh-bcd5b3b52b35a458df87b204119eb18a264a580b.tar.bz2
zsh-bcd5b3b52b35a458df87b204119eb18a264a580b.zip
Added a peepcode theme
-rw-r--r--themes/peepcode.zsh-theme44
1 files changed, 44 insertions, 0 deletions
diff --git a/themes/peepcode.zsh-theme b/themes/peepcode.zsh-theme
new file mode 100644
index 000000000..ca2a8862f
--- /dev/null
+++ b/themes/peepcode.zsh-theme
@@ -0,0 +1,44 @@
+#
+# Based on Geoffrey Grosenbach's peepcode zsh theme from
+# https://github.com/topfunky/zsh-simple
+#
+
+git_repo_path() {
+ git rev-parse --git-dir 2>/dev/null
+}
+
+git_commit_id() {
+ git rev-parse --short HEAD 2>/dev/null
+}
+
+git_mode() {
+ if [[ -e "$repo_path/BISECT_LOG" ]]; then
+ echo "+bisect"
+ elif [[ -e "$repo_path/MERGE_HEAD" ]]; then
+ echo "+merge"
+ elif [[ -e "$repo_path/rebase" || -e "$repo_path/rebase-apply" || -e "$repo_path/rebase-merge" || -e "$repo_path/../.dotest" ]]; then
+ echo "+rebase"
+ fi
+}
+
+git_dirty() {
+ if [[ "$repo_path" != '.' && `git ls-files -m` != "" ]]; then
+ echo " %{$fg_bold[grey]%}✗%{$reset_color%}"
+ fi
+}
+
+git_prompt() {
+ local cb=$(current_branch)
+ if [ -n "$cb" ]; then
+ local repo_path=$(git_repo_path)
+ echo " %{$fg_bold[grey]%}$cb %{$fg[white]%}$(git_commit_id)%{$reset_color%}$(git_mode)$(git_dirty)"
+ fi
+}
+
+local smiley="%(?,%{$fg[green]%}☺%{$reset_color%},%{$fg[red]%}☹%{$reset_color%})"
+
+PROMPT='
+%~
+${smiley} %{$reset_color%}'
+
+RPROMPT='%{$fg[white]%} $(~/.rvm/bin/rvm-prompt)$(git_prompt)%{$reset_color%}'