summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--plugins/svn/svn.plugin.zsh42
-rw-r--r--themes/awesomepanda.zsh-theme18
-rw-r--r--themes/flazz.zsh-theme19
-rw-r--r--themes/lambda.zsh-theme6
5 files changed, 86 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index f84db6dc2..8d19d100c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,5 @@
locals.zsh
log/.zsh_history
projects.zsh
-custom/*.zsh
+custom/*
!custom/example.zsh \ No newline at end of file
diff --git a/plugins/svn/svn.plugin.zsh b/plugins/svn/svn.plugin.zsh
new file mode 100644
index 000000000..45d461306
--- /dev/null
+++ b/plugins/svn/svn.plugin.zsh
@@ -0,0 +1,42 @@
+function svn_prompt_info {
+ if [[ -d .svn ]]; then
+ echo "$ZSH_PROMPT_BASE_COLOR$ZSH_THEME_SVN_PROMPT_PREFIX\
+$ZSH_THEME_REPO_NAME_COLOR$(svn_get_repo_name)$ZSH_PROMPT_BASE_COLOR$ZSH_THEME_SVN_PROMPT_SUFFIX$ZSH_PROMPT_BASE_COLOR$(svn_dirty)$ZSH_PROMPT_BASE_COLOR"
+ fi
+}
+
+
+function in_svn() {
+ if [[ -d .svn ]]; then
+ echo 1
+ fi
+}
+
+function svn_get_repo_name {
+ if [ is_svn ]; then
+ svn info | sed -n 's/Repository\ Root:\ .*\///p' | read SVN_ROOT
+
+ svn info | sed -n "s/URL:\ .*$SVN_ROOT\///p" | sed "s/\/.*$//"
+ fi
+}
+
+function svn_get_rev_nr {
+ if [ is_svn ]; then
+ svn info 2> /dev/null | sed -n s/Revision:\ //p
+ fi
+}
+
+function svn_dirty_choose {
+ if [ is_svn ]; then
+ s=$(svn status 2>/dev/null)
+ if [ $s ]; then
+ echo $1
+ else
+ echo $2
+ fi
+ fi
+}
+
+function svn_dirty {
+ svn_dirty_choose $ZSH_THEME_SVN_PROMPT_DIRTY $ZSH_THEME_SVN_PROMPT_CLEAN
+} \ No newline at end of file
diff --git a/themes/awesomepanda.zsh-theme b/themes/awesomepanda.zsh-theme
new file mode 100644
index 000000000..411b89837
--- /dev/null
+++ b/themes/awesomepanda.zsh-theme
@@ -0,0 +1,18 @@
+# the svn plugin has to be activated for this to work.
+
+PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%}$(svn_prompt_info)%{$reset_color%}'
+
+ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}"
+ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
+ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%})%{$fg[yellow]%} ✗ %{$reset_color%}"
+ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%}) "
+
+
+
+ZSH_PROMPT_BASE_COLOR="%{$fg_bold[blue]%}"
+ZSH_THEME_REPO_NAME_COLOR="%{$fg_bold[red]%}"
+
+ZSH_THEME_SVN_PROMPT_PREFIX="svn:("
+ZSH_THEME_SVN_PROMPT_SUFFIX=")"
+ZSH_THEME_SVN_PROMPT_DIRTY="%{$fg[red]%} ✘ %{$reset_color%}"
+ZSH_THEME_SVN_PROMPT_CLEAN=" " \ No newline at end of file
diff --git a/themes/flazz.zsh-theme b/themes/flazz.zsh-theme
new file mode 100644
index 000000000..280794f2b
--- /dev/null
+++ b/themes/flazz.zsh-theme
@@ -0,0 +1,19 @@
+if [ "$(whoami)" = "root" ]
+then CARETCOLOR="red"
+else CARETCOLOR="blue"
+fi
+
+local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
+
+PROMPT='%m%{${fg_bold[magenta]}%} :: %{$reset_color%}%{${fg[green]}%}%3~ $(git_prompt_info)%{${fg_bold[$CARETCOLOR]}%}%#%{${reset_color}%} '
+
+RPS1='$(vi_mode_prompt_info) ${return_code}'
+
+ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[cyan]%}‹"
+ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}"
+
+MODE_INDICATOR="%{$fg_bold[magenta]%}<%{$reset_color%}%{$fg[magenta]%}<<%{$reset_color%}"
+
+# TODO use 265 colors
+#MODE_INDICATOR="$FX[bold]$FG[020]<$FX[no_bold]%{$fg[blue]%}<<%{$reset_color%}"
+# TODO use two lines if git
diff --git a/themes/lambda.zsh-theme b/themes/lambda.zsh-theme
new file mode 100644
index 000000000..63292d331
--- /dev/null
+++ b/themes/lambda.zsh-theme
@@ -0,0 +1,6 @@
+# ZSH Theme - Preview: http://cl.ly/350F0F0k1M2y3A2i3p1S
+
+PROMPT='λ %~/ $(git_prompt_info)%{$reset_color%}'
+
+ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}"
+ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "