functions.zsh 1.45 KB
Newer Older
1
## fixme, i duplicated this in xterms - oops
2
3
4
5
6
7
function title {
  if [[ $TERM == "screen" ]]; then
    # Use these two for GNU Screen:
    print -nR $'\033k'$1$'\033'\\\

    print -nR $'\033]0;'$2$'\a'
8
  elif [[ ($TERM =~ "^xterm") ]] || [[ ($TERM == "rxvt") ]]; then
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    # 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]"
}

24
25
function zsh_stats() {
  history | awk '{print $2}' | sort | uniq -c | sort -rn | head
Robby Russell's avatar
Robby Russell committed
26
27
28
29
}

function uninstall_oh_my_zsh() {
  /bin/sh $ZSH/tools/uninstall.sh
Robby Russell's avatar
Robby Russell committed
30
31
}

32
33
34
35
function upgrade_oh_my_zsh() {
  /bin/sh $ZSH/tools/upgrade.sh
}

Geoff Garside's avatar
Geoff Garside committed
36
37
38
39
function take() {
  mkdir -p $1
  cd $1
}
40
41

function extract() {
42
43
44
45
46
47
    unset REMOVE_ARCHIVE
    
    if test "$1" = "-r"; then
        REMOVE=1
        shift
    fi
48
49
50
51
  if [[ -f $1 ]]; then
    case $1 in
      *.tar.bz2) tar xvjf $1;;
      *.tar.gz) tar xvzf $1;;
SuprDewd's avatar
SuprDewd committed
52
53
      *.tar.xz) tar xvJf $1;;
      *.tar.lzma) tar --lzma -xvf $1;;
54
55
56
57
58
59
60
61
62
63
64
      *.bz2) bunzip $1;;
      *.rar) unrar $1;;
      *.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
65
66
67
68
69
70

    if [[ $REMOVE_ARCHIVE -eq 1 ]]; then
        echo removing "$1";
        /bin/rm "$1";
    fi

71
72
73
74
  else
    echo "'$1' is not a valid file"
  fi
}
75