diff options
author | Christopher Sexton <csexton@gmail.com> | 2009-09-14 12:42:53 -0400 |
---|---|---|
committer | Christopher Sexton <csexton@gmail.com> | 2009-09-14 12:42:53 -0400 |
commit | 85a4e3028990b6583253308ada3d456c291487d7 (patch) | |
tree | 0a5140810bf857cc598516f335662b5a7189a37d | |
parent | 86925121069b2b33be6f3b76034ebcae98b14592 (diff) | |
download | zsh-85a4e3028990b6583253308ada3d456c291487d7.tar.gz zsh-85a4e3028990b6583253308ada3d456c291487d7.tar.bz2 zsh-85a4e3028990b6583253308ada3d456c291487d7.zip |
Added risto theme and made git.zsh themable
* git.zsh is now themable:
* git_prompt_info() now will look in the following variables for
formatting strings:
* ZSH_THEME_GIT_PROMPT_PREFIX - Prefix for the prompt (before the
branch name)
* ZSH_THEME_GIT_PROMPT_SUFFIX - The very end of the prompt
* ZSH_THEME_GIT_PROMPT_DIRTY - Displayed when the branch is dirty
* ZSH_THEME_GIT_PROMPT_CLEAN - Displayed when the branch is clean
* Updated geoffgarside, robbyrussell, and maran to work with new git
theme
* Added the Risto theme, which is very similar to a number of bash
prompts, and allows me to use zsh in with out my co-workers knowing I
have the advantage. Think of it as a ninja theme.
-rw-r--r-- | git.zsh | 16 | ||||
-rw-r--r-- | themes/geoffgarside.zsh-theme | 3 | ||||
-rw-r--r-- | themes/maran.zsh-theme | 5 | ||||
-rw-r--r-- | themes/risto.zsh-theme | 6 | ||||
-rw-r--r-- | themes/robbyrussell.zsh-theme | 5 |
5 files changed, 31 insertions, 4 deletions
@@ -1,16 +1,26 @@ +# +ZSH_THEME_GIT_PROMPT_PREFIX="git:(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")" +ZSH_THEME_GIT_PROMPT_DIRTY="*" +ZSH_THEME_GIT_PROMPT_CLEAN="" + # get the name of the branch we are on function git_prompt_info() { if [[ -d .git ]]; then ref=$(git symbolic-ref HEAD 2> /dev/null) || return branch=${ref#refs/heads/} - CURRENT_BRANCH="git:(%{$fg[red]%}${branch}%{$fg[blue]%})%{$reset_color%}$(parse_git_dirty)" + CURRENT_BRANCH="$ZSH_THEME_GIT_PROMPT_PREFIX${branch}$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_SUFFIX" else CURRENT_BRANCH='' fi echo $CURRENT_BRANCH } - parse_git_dirty () { - [[ $(git status | tail -n1) != "nothing to commit (working directory clean)" ]] && echo " %{$fg[yellow]%}✗%{$reset_color%}" + if [[ $(git status | tail -n1) != "nothing to commit (working directory clean)" ]]; then + echo "$ZSH_THEME_GIT_PROMPT_DIRTY" + else + echo "$ZSH_THEME_GIT_PROMPT_CLEAN" + fi } + diff --git a/themes/geoffgarside.zsh-theme b/themes/geoffgarside.zsh-theme index 38733d95c..675ec7206 100644 --- a/themes/geoffgarside.zsh-theme +++ b/themes/geoffgarside.zsh-theme @@ -1,2 +1,5 @@ # PROMPT="[%*] %n:%c $(git_prompt_info)%(!.#.$) " PROMPT='[%*] %{$fg[cyan]%}%n%{$reset_color%}:%{$fg[green]%}%c%{$reset_color%}$(git_prompt_info) %(!.#.$) ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[yellow]%}git:(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")%{$reset_color%}" diff --git a/themes/maran.zsh-theme b/themes/maran.zsh-theme index 7523696f4..0f6e3b6bd 100644 --- a/themes/maran.zsh-theme +++ b/themes/maran.zsh-theme @@ -1,3 +1,6 @@ # Theme with full path names and hostname # Handy if you work on different servers all the time; -PROMPT='%{$fg[cyan]%}%n%{$reset_color%}@$fg[yellow]%}%M:%{$fg[green]%}%/%{$reset_color%} $(git_prompt_info) %(!.#.$) '
\ No newline at end of file +PROMPT='%{$fg[cyan]%}%n%{$reset_color%}@$fg[yellow]%}%M:%{$fg[green]%}%/%{$reset_color%} $(git_prompt_info) %(!.#.$) ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[cyan]%}git:(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")%{$reset_color%}" diff --git a/themes/risto.zsh-theme b/themes/risto.zsh-theme new file mode 100644 index 000000000..cb773a64e --- /dev/null +++ b/themes/risto.zsh-theme @@ -0,0 +1,6 @@ +# -*- sh -*- vim:set ft=sh ai et sw=4 sts=4: +# It might be bash like, but I can't have my co-workers knowing I use zsh +PROMPT='%{$fg[green]%}%n@%m:%{$fg_bold[blue]%}%2~ $(git_prompt_info)%{$reset_color%}%(!.#.$) ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[red]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="›%{$reset_color%}" diff --git a/themes/robbyrussell.zsh-theme b/themes/robbyrussell.zsh-theme index d45796f7c..7b524e82d 100644 --- a/themes/robbyrussell.zsh-theme +++ b/themes/robbyrussell.zsh-theme @@ -1 +1,6 @@ PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$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]%})" |