summaryrefslogtreecommitdiff
path: root/plugins/timer
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/timer')
-rw-r--r--plugins/timer/timer.plugin.zsh18
1 files changed, 18 insertions, 0 deletions
diff --git a/plugins/timer/timer.plugin.zsh b/plugins/timer/timer.plugin.zsh
new file mode 100644
index 000000000..aa4573b9f
--- /dev/null
+++ b/plugins/timer/timer.plugin.zsh
@@ -0,0 +1,18 @@
+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
+ local tdiffstr='/'
+ if (( tdiff >= 60 )); then
+ tdiffstr+="$((tdiff / 60))m"
+ fi
+ tdiffstr+="$((tdiff % 60))s"
+ local cols=$(($COLUMNS - ${#tdiffstr} - 1))
+ echo -e "\033[1A\033[${cols}C ${tdiffstr}"
+ fi
+}