all repos

dotfiles @ 2f800f2

i use rach linux btw
1 files changed, 38 insertions(+), 0 deletions(-)
bin: add timewarrior helper
Author: Oleksandr Smirnov olexsmir@gmail.com
Committed at: 2025-09-09 23:31:10 +0300
Parent: 1789289
A bin/time.sh
ยทยทยท
                
                1
                +#!/usr/bin/env bash

              
                
                2
                +set -euo pipefail

              
                
                3
                +

              
                
                4
                +CATEGORIES=(

              
                
                5
                +  "stop"

              
                
                6
                +  "programming"

              
                
                7
                +  "notes"

              
                
                8
                +  "chat"

              
                
                9
                +  "chore"

              
                
                10
                +  "study"

              
                
                11
                +  "wasted"

              
                
                12
                +)

              
                
                13
                +

              
                
                14
                +_stop() { timew stop; }

              
                
                15
                +

              
                
                16
                +_status() {

              
                
                17
                +  if current=$(timew get dom.active.tags 2>/dev/null); then

              
                
                18
                +    echo "$current"

              
                
                19
                +  else

              
                
                20
                +    echo "none"

              
                
                21
                +  fi

              
                
                22
                +}

              
                
                23
                +

              
                
                24
                +_select() {

              
                
                25
                +  selected=$(printf "%s\n" "${CATEGORIES[@]}" | sk --margin 25% --color="bw" --reverse)

              
                
                26
                +  [[ "$selected" == "" ]] && exit 1

              
                
                27
                +

              
                
                28
                +  if [[ "$selected" == "stop" ]]

              
                
                29
                +  then _stop

              
                
                30
                +  else  timew start "$selected"

              
                
                31
                +  fi

              
                
                32
                +}

              
                
                33
                +

              
                
                34
                +case "${1:-}" in

              
                
                35
                +  status) _status ;;

              
                
                36
                +  stop)   _stop   ;;

              
                
                37
                +  *)      _select ;;

              
                
                38
                +esac