Converted OMZ themes to native ZSH themes.
This commit is contained in:
parent
94656ce760
commit
d5ba17feac
@ -1,16 +0,0 @@
|
|||||||
# Load and run colors.
|
|
||||||
autoload -U colors
|
|
||||||
colors -i
|
|
||||||
|
|
||||||
# Set the default prompt theme.
|
|
||||||
PS1="%n@%m:%~%# "
|
|
||||||
|
|
||||||
# Set the default Git prompt theme.
|
|
||||||
ZSH_THEME_GIT_PROMPT_PREFIX="git:(" # Prefix before the branch name.
|
|
||||||
ZSH_THEME_GIT_PROMPT_SUFFIX=")" # Suffix after the branch name.
|
|
||||||
ZSH_THEME_GIT_PROMPT_DIRTY="*" # Indicator to display if the branch is dirty.
|
|
||||||
ZSH_THEME_GIT_PROMPT_CLEAN="" # Indicator to display if the branch is clean.
|
|
||||||
|
|
||||||
# Enable parameter, arithmentic expansion and command substitution in prompt.
|
|
||||||
setopt prompt_subst
|
|
||||||
|
|
@ -5,11 +5,8 @@ if [[ "$TERM" == 'dumb' ]]; then
|
|||||||
DISABLE_COLOR='true'
|
DISABLE_COLOR='true'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Add all defined plugins to fpath.
|
# Add functions to fpath.
|
||||||
plugin=${plugin:=()}
|
fpath+=(${OMZ}/plugins/${^plugins} $OMZ/themes/*(/))
|
||||||
for plugin in $plugins; do
|
|
||||||
fpath=("$OMZ/plugins/$plugin" $fpath)
|
|
||||||
done
|
|
||||||
|
|
||||||
# Load and run compinit.
|
# Load and run compinit.
|
||||||
autoload -Uz compinit && compinit -i
|
autoload -Uz compinit && compinit -i
|
||||||
@ -26,18 +23,8 @@ for plugin in $plugins; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Load the theme.
|
# Load and run the prompt theming system.
|
||||||
if [[ "$ZSH_THEME" == "random" ]]; then
|
autoload -Uz promptinit && promptinit -i
|
||||||
themes=($OMZ/themes/**/*.theme.zsh)
|
|
||||||
theme_index=${#themes[@]}
|
|
||||||
(( theme_index=((RANDOM % theme_index) + 1) ))
|
|
||||||
random_theme="${themes[$theme_index]}"
|
|
||||||
source "$random_theme"
|
|
||||||
else
|
|
||||||
if [[ -f "$OMZ/themes/$ZSH_THEME/$ZSH_THEME.theme.zsh" ]]; then
|
|
||||||
source "$OMZ/themes/$ZSH_THEME/$ZSH_THEME.theme.zsh"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Compile zcompdump, if modified, to increase startup speed.
|
# Compile zcompdump, if modified, to increase startup speed.
|
||||||
if [[ "$HOME/.zcompdump" -nt "$HOME/.zcompdump.zwc" ]] || [[ ! -e "$HOME/.zcompdump.zwc" ]]; then
|
if [[ "$HOME/.zcompdump" -nt "$HOME/.zcompdump.zwc" ]] || [[ ! -e "$HOME/.zcompdump.zwc" ]]; then
|
||||||
|
@ -1,24 +1,25 @@
|
|||||||
# Path to oh-my-zsh.
|
# Path to oh-my-zsh.
|
||||||
export OMZ="$HOME/.oh-my-zsh"
|
OMZ="$HOME/.oh-my-zsh"
|
||||||
|
|
||||||
# Set the name of the theme to load (see $OMZ/themes/).
|
|
||||||
# Setting it to 'random' loads a random theme.
|
|
||||||
export ZSH_THEME="robbyrussell"
|
|
||||||
|
|
||||||
# Set to 'true' to enable case-sensitivity.
|
# Set to 'true' to enable case-sensitivity.
|
||||||
export CASE_SENSITIVE='false'
|
CASE_SENSITIVE='false'
|
||||||
|
|
||||||
# Set to 'true' to disable color (auto set on dumb terminals).
|
# Set to 'true' to disable color (auto set on dumb terminals).
|
||||||
export DISABLE_COLOR='false'
|
DISABLE_COLOR='false'
|
||||||
|
|
||||||
# Set to 'true' to disable auto setting the tab and window titles.
|
# Set to 'true' to disable auto setting the tab and window titles.
|
||||||
export DISABLE_AUTO_TITLE='false'
|
DISABLE_AUTO_TITLE='false'
|
||||||
|
|
||||||
# Set the plugins to load (see $OMZ/plugins/).
|
# Set the plugins to load (see $OMZ/plugins/).
|
||||||
# Example: plugins=(rails git textmate ruby lighthouse)
|
# Example: plugins=(git lighthouse rails ruby textmate)
|
||||||
plugins=(git)
|
plugins=(git)
|
||||||
|
|
||||||
|
# This will make you scream: OH MY ZSH!
|
||||||
source "$OMZ/oh-my-zsh.zsh"
|
source "$OMZ/oh-my-zsh.zsh"
|
||||||
|
|
||||||
|
# Load the prompt theme (type prompt -l to list all themes).
|
||||||
|
# Setting it to 'random' loads a random theme.
|
||||||
|
[[ "$TERM" != 'dumb' ]] && prompt sorin || prompt off
|
||||||
|
|
||||||
# Customize to your needs...
|
# Customize to your needs...
|
||||||
|
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[white]%}["
|
|
||||||
ZSH_THEME_GIT_PROMPT_SUFFIX="]%{$reset_color%}"
|
|
||||||
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}●%{$reset_color%}"
|
|
||||||
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
|
||||||
|
|
||||||
#Customized git status, oh-my-zsh currently does not allow render dirty status before branch
|
|
||||||
git_custom_status() {
|
|
||||||
local cb=$(current_branch)
|
|
||||||
if [ -n "$cb" ]; then
|
|
||||||
echo "- $ZSH_THEME_GIT_PROMPT_PREFIX$(current_branch)$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_SUFFIX"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
PROMPT='%2~ $(git_custom_status) »%b '
|
|
35
themes/minimal/prompt_minimal_setup
Normal file
35
themes/minimal/prompt_minimal_setup
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
function +vi-git-status() {
|
||||||
|
# Untracked files.
|
||||||
|
if [[ -n $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then
|
||||||
|
hook_com[unstaged]='%F{red}●%f'
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function prompt_minimal_precmd () {
|
||||||
|
setopt noxtrace noksharrays localoptions
|
||||||
|
vcs_info
|
||||||
|
}
|
||||||
|
|
||||||
|
function prompt_minimal_setup() {
|
||||||
|
setopt noxtrace noksharrays localoptions
|
||||||
|
prompt_opts=(cr subst percent)
|
||||||
|
|
||||||
|
autoload -Uz add-zsh-hook
|
||||||
|
autoload -Uz vcs_info
|
||||||
|
|
||||||
|
add-zsh-hook precmd prompt_minimal_precmd
|
||||||
|
|
||||||
|
zstyle ':vcs_info:*' enable bzr git hg svn
|
||||||
|
zstyle ':vcs_info:*' check-for-changes true
|
||||||
|
zstyle ':vcs_info:*' stagedstr '%F{green}●%f'
|
||||||
|
zstyle ':vcs_info:*' unstagedstr '%F{yellow}●%f'
|
||||||
|
zstyle ':vcs_info:*' formats ' - [%b%c%u]'
|
||||||
|
zstyle ':vcs_info:*' actionformats " - [%b%c%u|%F{cyan}%a%f]"
|
||||||
|
zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat '%b|%F{cyan}%r%f'
|
||||||
|
zstyle ':vcs_info:git*+set-message:*' hooks git-status
|
||||||
|
|
||||||
|
PROMPT='%2~${vcs_info_msg_0_} » '
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_minimal_setup "$@"
|
||||||
|
|
@ -1,43 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# Prompt for the Zsh shell:
|
|
||||||
# * One line.
|
|
||||||
# * VCS info on the right prompt.
|
|
||||||
# * Only shows the path on the left prompt by default.
|
|
||||||
# * Crops the path to a defined length and only shows the path relative to
|
|
||||||
# the current VCS repository root.
|
|
||||||
# * Wears a different color wether the last command succeeded/failed.
|
|
||||||
# * Shows user@hostname if connected through SSH.
|
|
||||||
# * Shows if logged in as root or not.
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
# Customizable parameters.
|
|
||||||
PROMPT_PATH_MAX_LENGTH=30
|
|
||||||
PROMPT_DEFAULT_END=❯
|
|
||||||
PROMPT_ROOT_END=❯❯❯
|
|
||||||
PROMPT_SUCCESS_COLOR=$FG[071]
|
|
||||||
PROMPT_FAILURE_COLOR=$FG[124]
|
|
||||||
PROMPT_VCS_INFO_COLOR=$FG[242]
|
|
||||||
|
|
||||||
# Set required options.
|
|
||||||
setopt promptsubst
|
|
||||||
|
|
||||||
# Load required modules.
|
|
||||||
autoload -U add-zsh-hook
|
|
||||||
autoload -Uz vcs_info
|
|
||||||
|
|
||||||
# Add hook for calling vcs_info before each command.
|
|
||||||
add-zsh-hook precmd vcs_info
|
|
||||||
|
|
||||||
# Set vcs_info parameters.
|
|
||||||
zstyle ':vcs_info:*' enable hg bzr git
|
|
||||||
zstyle ':vcs_info:*:*' check-for-changes true # Can be slow on big repos.
|
|
||||||
zstyle ':vcs_info:*:*' unstagedstr '!'
|
|
||||||
zstyle ':vcs_info:*:*' stagedstr '+'
|
|
||||||
zstyle ':vcs_info:*:*' actionformats "%S" "%r/%s/%b %u%c (%a)"
|
|
||||||
zstyle ':vcs_info:*:*' formats "%S" "%r/%s/%b %u%c"
|
|
||||||
zstyle ':vcs_info:*:*' nvcsformats "%~" ""
|
|
||||||
|
|
||||||
# Define prompts.
|
|
||||||
PROMPT="%(0?.%{$PROMPT_SUCCESS_COLOR%}.%{$PROMPT_FAILURE_COLOR%})${SSH_TTY:+[%n@%m]}%{$FX[bold]%}%$PROMPT_PATH_MAX_LENGTH<..<"'${vcs_info_msg_0_%%.}'"%<<%(!.$PROMPT_ROOT_END.$PROMPT_DEFAULT_END)%{$FX[no-bold]%}%{$FX[reset]%} "
|
|
||||||
RPROMPT="%{$PROMPT_VCS_INFO_COLOR%}"'$vcs_info_msg_1_'"%{$FX[reset]%}"
|
|
47
themes/nicoulaj/prompt_nicoulaj_setup
Normal file
47
themes/nicoulaj/prompt_nicoulaj_setup
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# Prompt for ZSH:
|
||||||
|
# * One line.
|
||||||
|
# * VCS info on the right prompt.
|
||||||
|
# * Only shows the path on the left prompt by default.
|
||||||
|
# * Crops the path to a defined length and only shows the path relative to
|
||||||
|
# the current VCS repository root.
|
||||||
|
# * Wears a different color wether the last command succeeded/failed.
|
||||||
|
# * Shows user@hostname if connected through SSH.
|
||||||
|
# * Shows if logged in as root or not.
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
function prompt_nicoulaj_setup() {
|
||||||
|
setopt noxtrace noksharrays localoptions
|
||||||
|
prompt_opts=(cr subst percent)
|
||||||
|
|
||||||
|
# Load required modules.
|
||||||
|
autoload -Uz add-zsh-hook
|
||||||
|
autoload -Uz vcs_info
|
||||||
|
|
||||||
|
# Add hook for calling vcs_info before each command.
|
||||||
|
add-zsh-hook precmd vcs_info
|
||||||
|
|
||||||
|
# Customizable parameters.
|
||||||
|
local max_path_chars=30
|
||||||
|
local user_char='❯'
|
||||||
|
local root_char='❯❯❯'
|
||||||
|
local success_color='%F{071}'
|
||||||
|
local failure_color='%F{124}'
|
||||||
|
local vcs_info_color='%F{242}'
|
||||||
|
|
||||||
|
# Set vcs_info parameters.
|
||||||
|
zstyle ':vcs_info:*' enable bzr git hg svn
|
||||||
|
zstyle ':vcs_info:*:*' check-for-changes true # Can be slow on big repos.
|
||||||
|
zstyle ':vcs_info:*:*' unstagedstr '!'
|
||||||
|
zstyle ':vcs_info:*:*' stagedstr '+'
|
||||||
|
zstyle ':vcs_info:*:*' actionformats "%S" "%r/%s/%b %u%c (%a)"
|
||||||
|
zstyle ':vcs_info:*:*' formats "%S" "%r/%s/%b %u%c"
|
||||||
|
zstyle ':vcs_info:*:*' nvcsformats "%~" ""
|
||||||
|
|
||||||
|
# Define prompts.
|
||||||
|
PROMPT="%(?.${success_color}.${failure_color})${SSH_TTY:+[%n@%m]}%B%${max_path_chars}<...<"'${vcs_info_msg_0_%%.}'"%<<%(!.${root_char}.${user_char})%b%f "
|
||||||
|
RPROMPT="${vcs_info_color}"'${vcs_info_msg_1_}'"%f"
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_nicoulaj_setup "$@"
|
||||||
|
|
34
themes/sorin/prompt_sorin_setup
Normal file
34
themes/sorin/prompt_sorin_setup
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# FILE: prompt_sorin_setup
|
||||||
|
# DESCRIPTION: oh-my-zsh theme file.
|
||||||
|
# AUTHOR: Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
|
# VERSION: 1.0.4
|
||||||
|
# SCREENSHOT: http://i.imgur.com/aipDQ.png
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
function prompt_sorin_setup() {
|
||||||
|
setopt localoptions noxtrace noksharrays
|
||||||
|
prompt_opts=(cr subst percent)
|
||||||
|
|
||||||
|
MODE_INDICATOR="%B%F{red}❮%f%b%F{red}❮❮%f"
|
||||||
|
ZSH_THEME_GIT_PROMPT_SHA_BEFORE=""
|
||||||
|
ZSH_THEME_GIT_PROMPT_SHA_AFTER=""
|
||||||
|
ZSH_THEME_GIT_PROMPT_AHEAD=""
|
||||||
|
ZSH_THEME_GIT_PROMPT_DIRTY=""
|
||||||
|
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
||||||
|
ZSH_THEME_GIT_PROMPT_PREFIX=" %F{blue}git%f:%F{red}"
|
||||||
|
ZSH_THEME_GIT_PROMPT_SUFFIX="%f"
|
||||||
|
ZSH_THEME_GIT_PROMPT_ADDED="%F{green} ✚%f"
|
||||||
|
ZSH_THEME_GIT_PROMPT_MODIFIED="%F{blue} ✹%f"
|
||||||
|
ZSH_THEME_GIT_PROMPT_DELETED="%F{red} ✖%f"
|
||||||
|
ZSH_THEME_GIT_PROMPT_RENAMED="%F{magenta} ➜%f"
|
||||||
|
ZSH_THEME_GIT_PROMPT_UNMERGED="%F{yellow} ═%f"
|
||||||
|
ZSH_THEME_GIT_PROMPT_UNTRACKED="%F{cyan} ✭%f"
|
||||||
|
|
||||||
|
PROMPT='%F{cyan}%~%f$(git-prompt-info) %(!.%B%F{red}#%f%b.%B%F{green}❯%f%b) '
|
||||||
|
RPROMPT='%(?::%F{red}⏎%f)$(git-prompt-status)'
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_sorin_setup "$@"
|
||||||
|
|
@ -1,48 +0,0 @@
|
|||||||
# ------------------------------------------------------------------------------
|
|
||||||
# FILE: sorin.zsh-theme
|
|
||||||
# DESCRIPTION: oh-my-zsh theme file.
|
|
||||||
# AUTHOR: Sorin Ionescu (sorin.ionescu@gmail.com)
|
|
||||||
# VERSION: 1.0.3
|
|
||||||
# SCREENSHOT: http://i.imgur.com/aipDQ.png
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
if [[ "$DISABLE_COLOR" != "true" ]]; then
|
|
||||||
MODE_INDICATOR="%{$fg_bold[red]%}❮%{$reset_color%}%{$fg[red]%}❮❮%{$reset_color%}"
|
|
||||||
local return_status="%{$fg[red]%}%(?..⏎)%{$reset_color%}"
|
|
||||||
|
|
||||||
PROMPT='%{$fg[cyan]%}%c$(git_prompt_info) %(!.%{$fg_bold[red]%}#.%{$fg_bold[green]%}❯)%{$reset_color%} '
|
|
||||||
|
|
||||||
ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[blue]%}git%{$reset_color%}:%{$fg[red]%}"
|
|
||||||
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
|
|
||||||
ZSH_THEME_GIT_PROMPT_DIRTY=""
|
|
||||||
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
|
||||||
|
|
||||||
RPROMPT='${return_status}$(git_prompt_status)%{$reset_color%}'
|
|
||||||
|
|
||||||
ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} ✚"
|
|
||||||
ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} ✹"
|
|
||||||
ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖"
|
|
||||||
ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜"
|
|
||||||
ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═"
|
|
||||||
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭"
|
|
||||||
else
|
|
||||||
MODE_INDICATOR="❮❮❮"
|
|
||||||
local return_status="%(?::⏎)"
|
|
||||||
|
|
||||||
PROMPT='%c$(git_prompt_info) %(!.#.❯) '
|
|
||||||
|
|
||||||
ZSH_THEME_GIT_PROMPT_PREFIX=" git:"
|
|
||||||
ZSH_THEME_GIT_PROMPT_SUFFIX=""
|
|
||||||
ZSH_THEME_GIT_PROMPT_DIRTY=""
|
|
||||||
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
|
||||||
|
|
||||||
RPROMPT='${return_status}$(git_prompt_status)'
|
|
||||||
|
|
||||||
ZSH_THEME_GIT_PROMPT_ADDED=" ✚"
|
|
||||||
ZSH_THEME_GIT_PROMPT_MODIFIED=" ✹"
|
|
||||||
ZSH_THEME_GIT_PROMPT_DELETED=" ✖"
|
|
||||||
ZSH_THEME_GIT_PROMPT_RENAMED=" ➜"
|
|
||||||
ZSH_THEME_GIT_PROMPT_UNMERGED=" ═"
|
|
||||||
ZSH_THEME_GIT_PROMPT_UNTRACKED=" ✭"
|
|
||||||
fi
|
|
110
themes/steeef/prompt_steeef_setup
Normal file
110
themes/steeef/prompt_steeef_setup
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
# Prompt style and colors based on Steve Losh's Prose theme:
|
||||||
|
# http://github.com/sjl/oh-my-zsh/blob/master/themes/prose.zsh-theme
|
||||||
|
#
|
||||||
|
# vcs_info modifications from Bart Trojanowski's zsh prompt:
|
||||||
|
# http://www.jukie.net/bart/blog/pimping-out-zsh-prompt
|
||||||
|
#
|
||||||
|
# Git untracked files modification from Brian Carper:
|
||||||
|
# http://briancarper.net/blog/570/git-info-in-your-zsh-prompt
|
||||||
|
|
||||||
|
function virtualenv_info() {
|
||||||
|
if [[ -n "$VIRTUAL_ENV" ]]; then
|
||||||
|
echo '('`basename $VIRTUAL_ENV`') '
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function prompt_steeef_precmd() {
|
||||||
|
if [[ -n "$__PROMPT_STEEEF_VCS_UPDATE" ]] ; then
|
||||||
|
# Check for untracked files or updated submodules since vcs_info doesn't.
|
||||||
|
if [[ ! -z $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then
|
||||||
|
__PROMPT_STEEEF_VCS_UPDATE=1
|
||||||
|
fmt_branch="(${__PROMPT_STEEEF_COLORS[1]}%b%f%u%c${__PROMPT_STEEEF_COLORS[4]}●%f)"
|
||||||
|
else
|
||||||
|
fmt_branch="(${__PROMPT_STEEEF_COLORS[1]}%b%f%u%c)"
|
||||||
|
fi
|
||||||
|
zstyle ':vcs_info:*:prompt:*' formats "${fmt_branch}"
|
||||||
|
|
||||||
|
vcs_info 'prompt'
|
||||||
|
__PROMPT_STEEEF_VCS_UPDATE=''
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function prompt_steeef_preexec() {
|
||||||
|
case "$(history $HISTCMD)" in
|
||||||
|
*git*)
|
||||||
|
__PROMPT_STEEEF_VCS_UPDATE=1
|
||||||
|
;;
|
||||||
|
*svn*)
|
||||||
|
__PROMPT_STEEEF_VCS_UPDATE=1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
function prompt_steeef_chpwd() {
|
||||||
|
__PROMPT_STEEEF_VCS_UPDATE=1
|
||||||
|
}
|
||||||
|
|
||||||
|
function prompt_steeef_setup() {
|
||||||
|
setopt localoptions noxtrace noksharrays
|
||||||
|
prompt_opts=(cr subst percent)
|
||||||
|
|
||||||
|
autoload -Uz add-zsh-hook
|
||||||
|
autoload -Uz vcs_info
|
||||||
|
|
||||||
|
add-zsh-hook precmd prompt_steeef_precmd
|
||||||
|
add-zsh-hook preexec prompt_steeef_preexec
|
||||||
|
add-zsh-hook chpwd prompt_steeef_chpwd
|
||||||
|
|
||||||
|
__PROMPT_STEEEF_VCS_UPDATE=1
|
||||||
|
|
||||||
|
# Use extended color pallete if available.
|
||||||
|
if [[ $TERM = *256color* || $TERM = *rxvt* ]]; then
|
||||||
|
__PROMPT_STEEEF_COLORS=(
|
||||||
|
"%F{81}" # turquoise
|
||||||
|
"%F{166}" # orange
|
||||||
|
"%F{135}" # purple
|
||||||
|
"%F{161}" # hotpink
|
||||||
|
"%F{118}" # limegreen
|
||||||
|
)
|
||||||
|
else
|
||||||
|
__PROMPT_STEEEF_COLORS=(
|
||||||
|
"%F{cyan}"
|
||||||
|
"%F{yellow}"
|
||||||
|
"%F{magenta}"
|
||||||
|
"%F{red}"
|
||||||
|
"%F{green}"
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Enable VCS systems you use.
|
||||||
|
zstyle ':vcs_info:*' enable bzr git hg svn
|
||||||
|
|
||||||
|
# check-for-changes can be really slow.
|
||||||
|
# You should disable it if you work with large repositories.
|
||||||
|
zstyle ':vcs_info:*:prompt:*' check-for-changes true
|
||||||
|
|
||||||
|
# Formats:
|
||||||
|
# %b - branchname
|
||||||
|
# %u - unstagedstr (see below)
|
||||||
|
# %c - stagedstr (see below)
|
||||||
|
# %a - action (e.g. rebase-i)
|
||||||
|
# %R - repository path
|
||||||
|
# %S - path in the repository
|
||||||
|
local fmt_branch="(${__PROMPT_STEEEF_COLORS[1]}%b%f%u%c)"
|
||||||
|
local fmt_action="(${__PROMPT_STEEEF_COLORS[5]}%a%f)"
|
||||||
|
local fmt_unstaged="${__PROMPT_STEEEF_COLORS[2]}●%f"
|
||||||
|
local fmt_staged="${__PROMPT_STEEEF_COLORS[5]}●%f"
|
||||||
|
|
||||||
|
zstyle ':vcs_info:*:prompt:*' unstagedstr "${fmt_unstaged}"
|
||||||
|
zstyle ':vcs_info:*:prompt:*' stagedstr "${fmt_staged}"
|
||||||
|
zstyle ':vcs_info:*:prompt:*' actionformats "${fmt_branch}${fmt_action}"
|
||||||
|
zstyle ':vcs_info:*:prompt:*' formats "${fmt_branch}"
|
||||||
|
zstyle ':vcs_info:*:prompt:*' nvcsformats ""
|
||||||
|
|
||||||
|
PROMPT="
|
||||||
|
${__PROMPT_STEEEF_COLORS[3]}%n%f at ${__PROMPT_STEEEF_COLORS[2]}%m%f in ${__PROMPT_STEEEF_COLORS[5]}%~%f "'${vcs_info_msg_0_}'"
|
||||||
|
"'$(virtualenv_info)'"$ "
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_steeef_setup "$@"
|
||||||
|
|
@ -1,100 +0,0 @@
|
|||||||
# prompt style and colors based on Steve Losh's Prose theme:
|
|
||||||
# http://github.com/sjl/oh-my-zsh/blob/master/themes/prose.zsh-theme
|
|
||||||
#
|
|
||||||
# vcs_info modifications from Bart Trojanowski's zsh prompt:
|
|
||||||
# http://www.jukie.net/bart/blog/pimping-out-zsh-prompt
|
|
||||||
#
|
|
||||||
# git untracked files modification from Brian Carper:
|
|
||||||
# http://briancarper.net/blog/570/git-info-in-your-zsh-prompt
|
|
||||||
|
|
||||||
function virtualenv_info {
|
|
||||||
[ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') '
|
|
||||||
}
|
|
||||||
PR_GIT_UPDATE=1
|
|
||||||
|
|
||||||
setopt prompt_subst
|
|
||||||
autoload colors
|
|
||||||
colors
|
|
||||||
|
|
||||||
autoload -U add-zsh-hook
|
|
||||||
autoload -Uz vcs_info
|
|
||||||
|
|
||||||
#use extended color pallete if available
|
|
||||||
if [[ $TERM = *256color* || $TERM = *rxvt* ]]; then
|
|
||||||
turquoise="%F{81}"
|
|
||||||
orange="%F{166}"
|
|
||||||
purple="%F{135}"
|
|
||||||
hotpink="%F{161}"
|
|
||||||
limegreen="%F{118}"
|
|
||||||
else
|
|
||||||
turquoise="$fg[cyan]"
|
|
||||||
orange="$fg[yellow]"
|
|
||||||
purple="$fg[magenta]"
|
|
||||||
hotpink="$fg[red]"
|
|
||||||
limegreen="$fg[green]"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# enable VCS systems you use
|
|
||||||
zstyle ':vcs_info:*' enable git svn
|
|
||||||
|
|
||||||
# check-for-changes can be really slow.
|
|
||||||
# you should disable it, if you work with large repositories
|
|
||||||
zstyle ':vcs_info:*:prompt:*' check-for-changes true
|
|
||||||
|
|
||||||
# set formats
|
|
||||||
# %b - branchname
|
|
||||||
# %u - unstagedstr (see below)
|
|
||||||
# %c - stagedstr (see below)
|
|
||||||
# %a - action (e.g. rebase-i)
|
|
||||||
# %R - repository path
|
|
||||||
# %S - path in the repository
|
|
||||||
PR_RST="%{${reset_color}%}"
|
|
||||||
FMT_BRANCH="(%{$turquoise%}%b%u%c${PR_RST})"
|
|
||||||
FMT_ACTION="(%{$limegreen%}%a${PR_RST})"
|
|
||||||
FMT_UNSTAGED="%{$orange%}●"
|
|
||||||
FMT_STAGED="%{$limegreen%}●"
|
|
||||||
|
|
||||||
zstyle ':vcs_info:*:prompt:*' unstagedstr "${FMT_UNSTAGED}"
|
|
||||||
zstyle ':vcs_info:*:prompt:*' stagedstr "${FMT_STAGED}"
|
|
||||||
zstyle ':vcs_info:*:prompt:*' actionformats "${FMT_BRANCH}${FMT_ACTION}"
|
|
||||||
zstyle ':vcs_info:*:prompt:*' formats "${FMT_BRANCH}"
|
|
||||||
zstyle ':vcs_info:*:prompt:*' nvcsformats ""
|
|
||||||
|
|
||||||
|
|
||||||
function steeef_preexec {
|
|
||||||
case "$(history $HISTCMD)" in
|
|
||||||
*git*)
|
|
||||||
PR_GIT_UPDATE=1
|
|
||||||
;;
|
|
||||||
*svn*)
|
|
||||||
PR_GIT_UPDATE=1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
add-zsh-hook preexec steeef_preexec
|
|
||||||
|
|
||||||
function steeef_chpwd {
|
|
||||||
PR_GIT_UPDATE=1
|
|
||||||
}
|
|
||||||
add-zsh-hook chpwd steeef_chpwd
|
|
||||||
|
|
||||||
function steeef_precmd {
|
|
||||||
if [[ -n "$PR_GIT_UPDATE" ]] ; then
|
|
||||||
# check for untracked files or updated submodules, since vcs_info doesn't
|
|
||||||
if [[ ! -z $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then
|
|
||||||
PR_GIT_UPDATE=1
|
|
||||||
FMT_BRANCH="(%{$turquoise%}%b%u%c%{$hotpink%}●${PR_RST})"
|
|
||||||
else
|
|
||||||
FMT_BRANCH="(%{$turquoise%}%b%u%c${PR_RST})"
|
|
||||||
fi
|
|
||||||
zstyle ':vcs_info:*:prompt:*' formats "${FMT_BRANCH}"
|
|
||||||
|
|
||||||
vcs_info 'prompt'
|
|
||||||
PR_GIT_UPDATE=
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
add-zsh-hook precmd steeef_precmd
|
|
||||||
|
|
||||||
PROMPT=$'
|
|
||||||
%{$purple%}%n%{$reset_color%} at %{$orange%}%m%{$reset_color%} in %{$limegreen%}%~%{$reset_color%} $vcs_info_msg_0_
|
|
||||||
$(virtualenv_info)$ '
|
|
Reference in New Issue
Block a user