From e6f7f8ead1fde63e7493ba3854c14c76873e322f Mon Sep 17 00:00:00 2001 From: syl20bnr Date: Tue, 15 Jan 2013 09:10:54 -0500 Subject: [PATCH] add syl20bnr.zsh-theme aimed to vi-mode users --- themes/syl20bnr.zsh-theme | 58 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 themes/syl20bnr.zsh-theme diff --git a/themes/syl20bnr.zsh-theme b/themes/syl20bnr.zsh-theme new file mode 100644 index 000000000..03fcfc6c7 --- /dev/null +++ b/themes/syl20bnr.zsh-theme @@ -0,0 +1,58 @@ +# ------------------------------------------------------------------------ +# Sylvain Benner oh-my-zsh theme +# Original theme by Juan G. Hurtado +# Needs the following plug ins: +# - git for current_branch method +# - vi-mode for mode display +# ------------------------------------------------------------------------ + +# Color shortcuts +RED=$fg[red] +YELLOW=$fg[yellow] +GREEN=$fg[green] +WHITE=$fg[white] +BLUE=$fg[blue] +RED_BOLD=$fg_bold[red] +YELLOW_BOLD=$fg_bold[yellow] +GREEN_BOLD=$fg_bold[green] +WHITE_BOLD=$fg_bold[white] +BLUE_BOLD=$fg_bold[blue] +RESET_COLOR=$reset_color + +# Format for git_prompt_info() +ZSH_THEME_GIT_PROMPT_PREFIX="" +ZSH_THEME_GIT_PROMPT_SUFFIX="" + +# Format for parse_git_dirty() +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$RED%}(*)" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +# Format for git_prompt_status() +ZSH_THEME_GIT_PROMPT_UNMERGED=" %{$RED%}unmerged" +ZSH_THEME_GIT_PROMPT_DELETED=" %{$RED%}deleted" +ZSH_THEME_GIT_PROMPT_RENAMED=" %{$YELLOW%}renamed" +ZSH_THEME_GIT_PROMPT_MODIFIED=" %{$YELLOW%}modified" +ZSH_THEME_GIT_PROMPT_ADDED=" %{$GREEN%}added" +ZSH_THEME_GIT_PROMPT_UNTRACKED=" %{$WHITE%}untracked" + +# Format for git_prompt_ahead() +ZSH_THEME_GIT_PROMPT_AHEAD=" %{$RED%}(!)" + +# Format for git_prompt_long_sha() and git_prompt_short_sha() +ZSH_THEME_GIT_PROMPT_SHA_BEFORE=" %{$WHITE%}[%{$YELLOW%}" +ZSH_THEME_GIT_PROMPT_SHA_AFTER="%{$WHITE%}]" + +# Format for VI mode +INSERT_MODE="-- INSERT --" +NORMAL_MODE="-- NORMAL --" +VI_PROMPT=%{$GREEN%}"${INSERT_MODE}" +function zle-keymap-select { + VI_PROMPT="${${KEYMAP/vicmd/${RED}"${NORMAL_MODE}"}/(main|viins)/${GREEN}"${INSERT_MODE}"}" + zle reset-prompt +} + +# Prompt format +PROMPT=' +%{$BLUE_BOLD%}%n@%m%{$WHITE%}:%{$YELLOW%}%~%u$(parse_git_dirty)$(git_prompt_ahead)%{$RESET_COLOR%} +${VI_PROMPT} ➤ %{$RESET_COLOR%}' +RPROMPT='%{$GREEN_BOLD%}$(current_branch)$(git_prompt_short_sha)$(git_prompt_status)%{$RESET_COLOR%}'