timer.plugin.zsh 410 Bytes
Newer Older
1
2
3
4
5
6
7
8
9
preexec() {
  __timer_cmd_start_time=$(date '+%s')
}

precmd() {
  if [ -n "${__timer_cmd_start_time}" ]; then
    local cmd_end_time=$(date '+%s')
    local tdiff=$((${cmd_end_time} - ${__timer_cmd_start_time}))
    unset __timer_cmd_start_time
10
11
12
    local tdiffstr="$((tdiff / 60))m$((tdiff % 60))s"
    local cols=$(($COLUMNS - ${#tdiffstr#0m} - 2))
    echo -e "\033[1A\033[${cols}C \`${tdiffstr#0m}"
13
14
  fi
}