2009-09-23 08:18:15 +08:00
|
|
|
## fixme, i duplicated this in xterms - oops
|
2009-08-29 02:14:17 +08:00
|
|
|
function title {
|
|
|
|
if [[ $TERM == "screen" ]]; then
|
|
|
|
# Use these two for GNU Screen:
|
|
|
|
print -nR $'\033k'$1$'\033'\\\
|
|
|
|
|
|
|
|
print -nR $'\033]0;'$2$'\a'
|
2010-10-09 13:44:42 +08:00
|
|
|
elif [[ ($TERM =~ "^xterm") ]] || [[ ($TERM == "rxvt") ]]; then
|
2009-08-29 02:14:17 +08:00
|
|
|
# Use this one instead for XTerms:
|
|
|
|
print -nR $'\033]0;'$*$'\a'
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
function precmd {
|
|
|
|
title zsh "$PWD"
|
|
|
|
}
|
|
|
|
|
|
|
|
function preexec {
|
|
|
|
emulate -L zsh
|
|
|
|
local -a cmd; cmd=(${(z)1})
|
|
|
|
title $cmd[1]:t "$cmd[2,-1]"
|
|
|
|
}
|
|
|
|
|
2009-09-01 06:00:15 +08:00
|
|
|
function zsh_stats() {
|
|
|
|
history | awk '{print $2}' | sort | uniq -c | sort -rn | head
|
2009-09-01 06:00:38 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
function uninstall_oh_my_zsh() {
|
|
|
|
/bin/sh $ZSH/tools/uninstall.sh
|
2009-09-01 06:09:34 +08:00
|
|
|
}
|
|
|
|
|
2009-09-01 06:48:09 +08:00
|
|
|
function upgrade_oh_my_zsh() {
|
|
|
|
/bin/sh $ZSH/tools/upgrade.sh
|
|
|
|
}
|
|
|
|
|
2009-08-31 21:03:56 +08:00
|
|
|
function take() {
|
|
|
|
mkdir -p $1
|
|
|
|
cd $1
|
|
|
|
}
|
2010-12-25 06:20:57 +08:00
|
|
|
|
|
|
|
function extract() {
|
2011-01-11 00:34:38 +08:00
|
|
|
unset REMOVE_ARCHIVE
|
|
|
|
|
|
|
|
if test "$1" = "-r"; then
|
|
|
|
REMOVE=1
|
|
|
|
shift
|
|
|
|
fi
|
2010-12-25 06:20:57 +08:00
|
|
|
if [[ -f $1 ]]; then
|
|
|
|
case $1 in
|
|
|
|
*.tar.bz2) tar xvjf $1;;
|
|
|
|
*.tar.gz) tar xvzf $1;;
|
2010-12-25 21:28:16 +08:00
|
|
|
*.tar.xz) tar xvJf $1;;
|
|
|
|
*.tar.lzma) tar --lzma -xvf $1;;
|
2010-12-25 06:20:57 +08:00
|
|
|
*.bz2) bunzip $1;;
|
2011-01-24 22:49:49 +08:00
|
|
|
*.rar) unrar x $1;;
|
2010-12-25 06:20:57 +08:00
|
|
|
*.gz) gunzip $1;;
|
|
|
|
*.tar) tar xvf $1;;
|
|
|
|
*.tbz2) tar xvjf $1;;
|
|
|
|
*.tgz) tar xvzf $1;;
|
|
|
|
*.zip) unzip $1;;
|
|
|
|
*.Z) uncompress $1;;
|
|
|
|
*.7z) 7z x $1;;
|
|
|
|
*) echo "'$1' cannot be extracted via >extract<";;
|
|
|
|
esac
|
2011-01-11 00:34:38 +08:00
|
|
|
|
|
|
|
if [[ $REMOVE_ARCHIVE -eq 1 ]]; then
|
|
|
|
echo removing "$1";
|
|
|
|
/bin/rm "$1";
|
|
|
|
fi
|
|
|
|
|
2010-12-25 06:20:57 +08:00
|
|
|
else
|
|
|
|
echo "'$1' is not a valid file"
|
|
|
|
fi
|
|
|
|
}
|
2011-01-11 00:34:38 +08:00
|
|
|
|