diff options
author | Robert Strack <robert.strack@gmail.com> | 2015-11-13 23:42:21 -0500 |
---|---|---|
committer | Robert Strack <robert.strack@gmail.com> | 2015-11-13 23:42:21 -0500 |
commit | 96d10e2147b59adc25e9c3b90ac6f31935495ef3 (patch) | |
tree | 20758efaafe56a07ec5299346d4ab2cfc9b36405 /plugins/timer/timer.plugin.zsh | |
parent | 135c3763ccfb07c4a5cde9a2529dfa8d6ba19b39 (diff) | |
download | zsh-96d10e2147b59adc25e9c3b90ac6f31935495ef3.tar.gz zsh-96d10e2147b59adc25e9c3b90ac6f31935495ef3.tar.bz2 zsh-96d10e2147b59adc25e9c3b90ac6f31935495ef3.zip |
calculating command's execution time
Diffstat (limited to 'plugins/timer/timer.plugin.zsh')
-rw-r--r-- | plugins/timer/timer.plugin.zsh | 18 |
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 +} |