Merge 7f6f8737ae
into fd9274ea91
This commit is contained in:
commit
49061f217f
|
@ -1,8 +1,39 @@
|
||||||
# prompt style and colors based on Steve Losh's Prose theme:
|
# vim:et sts=2 sw=2 ft=zsh
|
||||||
# http://github.com/sjl/oh-my-zsh/blob/master/themes/prose.zsh-theme
|
#
|
||||||
|
# A customizable version of the steeef theme from
|
||||||
|
# https://github.com/robbyrussell/oh-my-zsh/blob/master/themes/steeef.zsh-theme
|
||||||
#
|
#
|
||||||
# Requires the `git-info` zmodule to be included in the .zimrc file.
|
# Requires the `git-info` zmodule to be included in the .zimrc file.
|
||||||
|
|
||||||
|
prompt_steeef_help () {
|
||||||
|
cat <<EOH
|
||||||
|
This prompt can be customized with:
|
||||||
|
|
||||||
|
prompt steeef [username_color] [hostname_color] [pwd_color] [branch_color]
|
||||||
|
[unindexed_color] [unindexed_indicator]
|
||||||
|
[indexed_color] [indexed_indicator]
|
||||||
|
[untracked_color] [untracked_indicator]
|
||||||
|
[stashed_color] [stashed_indicator]
|
||||||
|
|
||||||
|
The default values for each parameter, for 256-color terminals (or otherwise)
|
||||||
|
are the following:
|
||||||
|
|
||||||
|
1. username color: 135 (or magenta)
|
||||||
|
2. hostname color: 166 (or yellow)
|
||||||
|
3. current working directory color: 118 (or green)
|
||||||
|
4. git branch name color: 81 (or cyan)
|
||||||
|
5. git unindexed color: 166 (or yellow)
|
||||||
|
6. git unindexed indicator: ●
|
||||||
|
7. git indexed color: 118 (or green)
|
||||||
|
8. git indexed indicator: ●
|
||||||
|
9. git untracked color: 161 (or red)
|
||||||
|
10. git untracked indicator: ●
|
||||||
|
|
||||||
|
The git stashed color and indicator are not defined by default, and will not be
|
||||||
|
shown unless defined.
|
||||||
|
EOH
|
||||||
|
}
|
||||||
|
|
||||||
prompt_steeef_git() {
|
prompt_steeef_git() {
|
||||||
[[ -n ${git_info} ]] && print -n " ${(e)git_info[prompt]}"
|
[[ -n ${git_info} ]] && print -n " ${(e)git_info[prompt]}"
|
||||||
}
|
}
|
||||||
|
@ -18,47 +49,67 @@ prompt_steeef_precmd() {
|
||||||
prompt_steeef_setup() {
|
prompt_steeef_setup() {
|
||||||
[[ -n ${VIRTUAL_ENV} ]] && export VIRTUAL_ENV_DISABLE_PROMPT=1
|
[[ -n ${VIRTUAL_ENV} ]] && export VIRTUAL_ENV_DISABLE_PROMPT=1
|
||||||
|
|
||||||
local purple
|
local col_user
|
||||||
local orange
|
local col_host
|
||||||
local limegreen
|
local col_pwd
|
||||||
local turquoise
|
local col_brnch
|
||||||
local hotpink
|
local col_unidx
|
||||||
|
local col_idx
|
||||||
|
local col_untrk
|
||||||
# use extended color palette if available
|
# use extended color palette if available
|
||||||
if [[ -n ${terminfo[colors]} && ${terminfo[colors]} -ge 256 ]]; then
|
if (( terminfo[colors] >= 256 )); then
|
||||||
purple='%F{135}'
|
col_user="%F{${1:-135}}"
|
||||||
orange='%F{166}'
|
col_host="%F{${2:-166}}"
|
||||||
limegreen='%F{118}'
|
col_pwd="%F{${3:-118}}"
|
||||||
turquoise='%F{81}'
|
col_brnch="%F{${4:-81}}"
|
||||||
hotpink='%F{161}'
|
col_unidx="%F{${5:-166}}"
|
||||||
|
col_idx="%F{${7:-118}}"
|
||||||
|
col_untrk="%F{${9:-161}}"
|
||||||
else
|
else
|
||||||
purple='%F{magenta}'
|
col_user="%F{${1:-magenta}}"
|
||||||
orange='%F{yellow}'
|
col_host="%F{${2:-yellow}}"
|
||||||
limegreen='%F{green}'
|
col_pwd="%F{${3:-green}}"
|
||||||
turquoise='%F{cyan}'
|
col_brnch="%F{${4:-cyan}}"
|
||||||
hotpink='%F{red}'
|
col_unidx="%F{${5:-yellow}}"
|
||||||
|
col_idx="%F{${7:-green}}"
|
||||||
|
col_untrk="%F{${9:-red}}"
|
||||||
fi
|
fi
|
||||||
|
local ind_unidx=${6:-●}
|
||||||
|
local ind_idx=${8:-●}
|
||||||
|
local ind_untrk=${10:-●}
|
||||||
|
local col_stash=${11:+%F{${11}}}
|
||||||
|
local ind_stash=${12}
|
||||||
|
|
||||||
autoload -Uz add-zsh-hook
|
autoload -Uz add-zsh-hook && add-zsh-hook precmd prompt_steeef_precmd
|
||||||
autoload -Uz colors && colors
|
autoload -Uz colors && colors
|
||||||
|
|
||||||
prompt_opts=(cr percent sp subst)
|
prompt_opts=(cr percent sp subst)
|
||||||
|
|
||||||
add-zsh-hook precmd prompt_steeef_precmd
|
|
||||||
|
|
||||||
zstyle ':zim:git-info' verbose 'yes'
|
zstyle ':zim:git-info' verbose 'yes'
|
||||||
zstyle ':zim:git-info:branch' format '%b'
|
zstyle ':zim:git-info:branch' format '%b'
|
||||||
zstyle ':zim:git-info:commit' format '%c'
|
zstyle ':zim:git-info:commit' format '%c'
|
||||||
zstyle ':zim:git-info:action' format "(${limegreen}%s%f)"
|
zstyle ':zim:git-info:action' format "(${col_idx}%s%f)"
|
||||||
zstyle ':zim:git-info:unindexed' format "${orange}●"
|
zstyle ':zim:git-info:unindexed' format "${col_unidx}${ind_unidx}"
|
||||||
zstyle ':zim:git-info:indexed' format "${limegreen}●"
|
zstyle ':zim:git-info:indexed' format "${col_idx}${ind_idx}"
|
||||||
zstyle ':zim:git-info:untracked' format "${hotpink}●"
|
zstyle ':zim:git-info:untracked' format "${col_untrk}${ind_untrk}"
|
||||||
|
zstyle ':zim:git-info:stashed' format "${col_stash}${ind_stash}"
|
||||||
zstyle ':zim:git-info:keys' format \
|
zstyle ':zim:git-info:keys' format \
|
||||||
'prompt' "(${turquoise}%b%c%I%i%u%f)%s"
|
'prompt' "(${col_brnch}%b%c%I%i%u%f%S%f)%s"
|
||||||
|
|
||||||
PROMPT="
|
PS1="
|
||||||
${purple}%n%f at ${orange}%m%f in ${limegreen}%~%f\$(prompt_steeef_git)\$(prompt_steeef_virtualenv)
|
${col_user}%n%f at ${col_host}%m%f in ${col_pwd}%~%f\$(prompt_steeef_git)\$(prompt_steeef_virtualenv)
|
||||||
%(!.#.$) "
|
%(!.#.$) "
|
||||||
RPROMPT=''
|
RPS1=''
|
||||||
}
|
}
|
||||||
|
|
||||||
prompt_steeef_setup "$@"
|
prompt_steeef_preview () {
|
||||||
|
if (( $# )); then
|
||||||
|
prompt_preview_theme steeef "${@}"
|
||||||
|
else
|
||||||
|
prompt_preview_theme steeef
|
||||||
|
print
|
||||||
|
prompt_preview_theme steeef magenta yellow green cyan magenta '!' green '+' red '?' yellow '$'
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_steeef_setup "${@}"
|
||||||
|
|
Loading…
Reference in a new issue