# 11:00|13:00|1748422800|1748430000|fpath|desc... # 00:00|00:00|1748296800|1748383200|fpath|desc... function allday() { return ITALIC FAINT " (allday) " OFF $6 } function endstoday() { return CYAN " -- " $2 OFF ": " $6 } function slice() { if ($2 == "00:00") return CYAN $1 " -- " OFF ": " $6 else return CYAN $1 OFF " -- " CYAN $2 OFF ": " $6 } function hrline(hour) { print hour, "", "", "", FAINT hour ":00 ----------------------" OFF } BEGIN { FS = "|"; GREEN = "\033[1;32m"; RED = "\033[1;31m"; WHITE = "\033[1;97m"; CYAN = "\033[1;36m"; ITALIC = "\033[3m"; FAINT = "\033[2m"; OFF = "\033[m"; OFS = "|" } /^[0-9]+$/ && hour { hrline(hour) } /^[0-9]+$/ { hour = $1 < 10 ? "0"$1 : $1; next } $1 == hour":00" { print $1, $3, $4, $5, slice(); unset hour; next } $1 == "00:00" && $2 == "00:00" { print $1, $3, $4, $5, allday(); next } $1 == "00:00" { print $1, $3, $4, $5, endstoday();next } hour { hrline(hour); print $1, $3, $4, $5, slice(); unset hour; next } { print $1, $3, $4, $5, slice(); unset hour; next }