summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRobby Russell <robby@planetargon.com>2012-12-04 08:27:13 -0800
committerRobby Russell <robby@planetargon.com>2012-12-04 08:27:13 -0800
commit178bce287ea26e5052091e66415521703848d5da (patch)
tree0db169c4861c0b0ce64eb7f9ae97fe5537558c53 /lib
parent63deae380cece1abe4634e68a3e0df817b152da4 (diff)
parent0118b5b759f3471478065b2163250852b7fa8c73 (diff)
downloadzsh-178bce287ea26e5052091e66415521703848d5da.tar.gz
zsh-178bce287ea26e5052091e66415521703848d5da.tar.bz2
zsh-178bce287ea26e5052091e66415521703848d5da.zip
Merge branch 'master' of github.com:robbyrussell/oh-my-zsh
Diffstat (limited to 'lib')
-rw-r--r--lib/directories.zsh4
-rw-r--r--lib/git.zsh13
-rw-r--r--lib/termsupport.zsh2
3 files changed, 16 insertions, 3 deletions
diff --git a/lib/directories.zsh b/lib/directories.zsh
index e445eb84c..6c743e40e 100644
--- a/lib/directories.zsh
+++ b/lib/directories.zsh
@@ -26,9 +26,9 @@ cd () {
elif [[ "x$*" == "x...." ]]; then
cd ../../..
elif [[ "x$*" == "x....." ]]; then
- cd ../../..
- elif [[ "x$*" == "x......" ]]; then
cd ../../../..
+ elif [[ "x$*" == "x......" ]]; then
+ cd ../../../../..
else
builtin cd "$@"
fi
diff --git a/lib/git.zsh b/lib/git.zsh
index 52477baf6..95dd3dd43 100644
--- a/lib/git.zsh
+++ b/lib/git.zsh
@@ -58,7 +58,7 @@ function git_prompt_long_sha() {
# Get the status of the working tree
git_prompt_status() {
- INDEX=$(git status --porcelain 2> /dev/null)
+ INDEX=$(git status --porcelain -b 2> /dev/null)
STATUS=""
if $(echo "$INDEX" | grep '^?? ' &> /dev/null); then
STATUS="$ZSH_THEME_GIT_PROMPT_UNTRACKED$STATUS"
@@ -80,12 +80,23 @@ git_prompt_status() {
fi
if $(echo "$INDEX" | grep '^ D ' &> /dev/null); then
STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS"
+ elif $(echo "$INDEX" | grep '^D ' &> /dev/null); then
+ STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS"
elif $(echo "$INDEX" | grep '^AD ' &> /dev/null); then
STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS"
fi
if $(echo "$INDEX" | grep '^UU ' &> /dev/null); then
STATUS="$ZSH_THEME_GIT_PROMPT_UNMERGED$STATUS"
fi
+ if $(echo "$INDEX" | grep '^## .*ahead' &> /dev/null); then
+ STATUS="$ZSH_THEME_GIT_PROMPT_AHEAD$STATUS"
+ fi
+ if $(echo "$INDEX" | grep '^## .*behind' &> /dev/null); then
+ STATUS="$ZSH_THEME_GIT_PROMPT_BEHIND$STATUS"
+ fi
+ if $(echo "$INDEX" | grep '^## .*diverged' &> /dev/null); then
+ STATUS="$ZSH_THEME_GIT_PROMPT_DIVERGED$STATUS"
+ fi
echo $STATUS
}
diff --git a/lib/termsupport.zsh b/lib/termsupport.zsh
index c056989eb..7470110b6 100644
--- a/lib/termsupport.zsh
+++ b/lib/termsupport.zsh
@@ -8,6 +8,8 @@ function title {
fi
if [[ "$TERM" == screen* ]]; then
print -Pn "\ek$1:q\e\\" #set screen hardstatus, usually truncated at 20 chars
+ elif [[ "$TERM_PROGRAM" == "Apple_Terminal" ]]; then
+ print -Pn "\e]1;$1:q\a" #set icon (=tab) name (will override window name on broken terminal)
elif [[ "$TERM" == xterm* ]] || [[ $TERM == rxvt* ]] || [[ "$TERM_PROGRAM" == "iTerm.app" ]]; then
print -Pn "\e]2;$2:q\a" #set window name
print -Pn "\e]1;$1:q\a" #set icon (=tab) name (will override window name on broken terminal)