summaryrefslogtreecommitdiff
path: root/.config/fisher/github.com/matchai/spacefish/functions/__sf_util_human_time.fish
blob: ce80474977ad767f15ae53dc96a28c0aa382de90 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#
# Human time
#

function __sf_util_human_time -d "Humanize a time interval for display"
	command awk '
		function hmTime(time,   stamp) {
			split("h:m:s:ms", units, ":")
			for (i = 2; i >= -1; i--) {
				if (t = int( i < 0 ? time % 1000 : time / (60 ^ i * 1000) % 60 )) {
					stamp = stamp t units[sqrt((i - 2) ^ 2) + 1] " "
				}
			}
			if (stamp ~ /^ *$/) {
				return "0ms"
			}
			return substr(stamp, 1, length(stamp) - 1)
		}
		{
			print hmTime($0)
		}
	'
end