Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
33 lines (27 sloc) 1.01 KB
# long-running command growler
# hooks for zsh, built on bash version at http://hints.macworld.com/article.php?story=20071009124425468
if growlnotify -h &>/dev/null; then
preexec_functions+='save_preexec_time'
save_preexec_time() {
export PREEXEC_CMD="$(history $HISTCMD | sed 's/ *[0-9]* *//')"
export PREEXEC_TIME=$(date +'%s')
}
precmd_functions+='growl_about_long_running_commands'
growl_about_long_running_commands() {
exitstatus=$?
if [ $exitstatus -eq 0 ]; then
img="$HOME/.zsh/images/pass.png"
else
img="$HOME/.zsh/images/fail.png"
fi
stop=$(date +'%s')
start=${PREEXEC_TIME:-$stop}
let elapsed=$stop-$start
max=${PREEXEC_MAX:-4}
if [ $elapsed -gt $max ]; then
growlnotify --image="$img" -n "LongRunningCommandGrowler" -m "exited with status $exitstatus after $elapsed secs" ${PREEXEC_CMD:-Some command}
fi
PREEXEC_TIME=
PREEXEC_CMD=
}
fi