bin/time.sh (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
#!/usr/bin/env bash
set -euo pipefail
CATEGORIES=(
"stop"
"programming"
"notes"
"chat"
"chore"
"study"
"wasted"
)
_stop() { timew stop; }
_status() {
if current=$(timew get dom.active.tags 2>/dev/null); then
echo "$current"
else
echo "none"
fi
}
_select() {
selected=$(printf "%s\n" "${CATEGORIES[@]}" | sk --margin 25% --color="bw" --reverse)
[[ "$selected" == "" ]] && exit 1
if [[ "$selected" == "stop" ]]
then _stop
else timew start "$selected"
fi
}
case "${1:-}" in
status) _status ;;
stop) _stop ;;
*) _select ;;
esac
|