diff options
| author | Ben Beltran <ben@nsovocal.com> | 2014-08-10 17:14:04 -0500 |
|---|---|---|
| committer | Ben Beltran <ben@nsovocal.com> | 2014-08-10 17:14:04 -0500 |
| commit | a40a5ec5e33473ce65da647d7eda28c8168cd1f6 (patch) | |
| tree | 58aba8cd07dc371197a40dc759fe84493ac54f93 /prompt_ben_setup | |
| parent | 150c37fac6c34559f5ae754572e9aaa78dd15eb3 (diff) | |
Updates the prezto config
Diffstat (limited to 'prompt_ben_setup')
| -rw-r--r-- | prompt_ben_setup | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/prompt_ben_setup b/prompt_ben_setup new file mode 100644 index 0000000..3c16c78 --- /dev/null +++ b/prompt_ben_setup @@ -0,0 +1,67 @@ +function prompt_ben_precmd { + git-info +} + +function rvm_info { + echo '('`rvm-prompt v p g`')' +} + +function virtualenv_info { + if [[ -z "$VIRTUAL_ENV" ]]; then + venv="default" + else + venv="${VIRTUAL_ENV##*/}" + fi + echo "(${venv})" +} + +function box_name { + [ -f ~/.box-name ] && cat ~/.box-name || hostname -s +} + +function zle-line-init zle-keymap-select { + local return_status="%{%F{red}%}%(?..✘)%{$reset_color%}" + RPS1="${${KEYMAP/vicmd/-- NORMAL --}/(main|viins)/-- INSERT --}${return_status}%{$reset_color%}" + RPS2=$RPS1 + zle reset-prompt +} +zle -N zle-line-init +zle -N zle-keymap-select + +function prompt_ben_setup { + setopt LOCAL_OPTIONS + unsetopt XTRACE KSH_ARRAYS + prompt_opts=(cr percent subst) + + # Load required functions. + autoload -Uz add-zsh-hook + + # Add hook for calling git-info before each command. + add-zsh-hook precmd prompt_ben_precmd + + # Set git-info parameters. + zstyle ':prezto:module:git:info' verbose 'yes' + zstyle ':prezto:module:git:info:branch' format '@%F{blue}%b%f' + zstyle ':prezto:module:git:info:clean' format '' + zstyle ':prezto:module:git:info:added' format '%{%F{green}%}!' + zstyle ':prezto:module:git:info:modified' format '%{%F{green}%}?' + zstyle ':prezto:module:git:info:untracked' format '%{%F{red}%}?' + zstyle ':prezto:module:git:info:keys' format \ + 'prompt' '%b%a%m%u' + + # Define prompts. + PROMPT=' +%{%F{red}%}%n%{%f%}@%{%F{yellow}%}$(box_name)%{%f%} %{%B%F{green}%}${PWD/#$HOME/~}%{%f%b%}${git_info[prompt]} %{%F{black}%}$(rvm_info)$(virtualenv_info)%{%f%} +%(?,,%{${%B%F{white}%}[%?]%{%f%b%} )$ ' +} + +prompt_ben_setup "$@" + +#setopt PROMPT_SUBST + +ZSH_THEME_GIT_PROMPT_PREFIX="@%{%F{blue}%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{%F{green}%}!" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{%F{green}%}?" +ZSH_THEME_GIT_PROMPT_CLEAN="" + |