functions.zsh 1.64 KB
Newer Older
1
## fixme, i duplicated this in xterms - oops
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function title {
  if [[ $TERM == "screen" ]]; then
    # Use these two for GNU Screen:
    print -nR $'\033k'$1$'\033'\\\

    print -nR $'\033]0;'$2$'\a'
  elif [[ $TERM == "xterm" || $TERM == "rxvt" ]]; then
    # 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]"
}

function remote_console() {
  /usr/bin/env ssh $1 "( cd $2 && ruby script/console production )"
26
27
28
29
}

function zsh_stats() {
  history | awk '{print $2}' | sort | uniq -c | sort -rn | head
Robby Russell's avatar
Robby Russell committed
30
31
32
33
}

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

36
37
38
39
function upgrade_oh_my_zsh() {
  /bin/sh $ZSH/tools/upgrade.sh
}

Geoff Garside's avatar
Geoff Garside committed
40
41
42
43
44
45
46
function tab() {
  osascript 2>/dev/null <<EOF
    tell application "System Events"
      tell process "Terminal" to keystroke "t" using command down
    end
    tell application "Terminal"
      activate
Dale Campbell's avatar
Dale Campbell committed
47
      do script with command "cd \"$PWD\"; $*" in window 1
Geoff Garside's avatar
Geoff Garside committed
48
49
50
51
52
53
54
55
56
57
58
59
60
    end tell
EOF
}

function take() {
  mkdir -p $1
  cd $1
}

function tm() {
  cd $1
  mate $1
}
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77

# To use: add a .lighthouse file into your directory with the URL to the
# individual project. For example:
# https://rails.lighthouseapp.com/projects/8994
# Example usage: http://screencast.com/t/ZDgwNDUwNT
open_lighthouse_ticket () {
  if [ ! -f .lighthouse-url ]; then
    echo "There is no .lighthouse file in the current directory..."
    return 0;
  else
    lighthouse_url=$(cat .lighthouse-url);
    echo "Opening ticket #$1";
    `open $lighthouse_url/tickets/$1`;
  fi
}

alias lho='open_lighthouse_ticket'