From d5a7a2df1fdeb2d82c51a0d78493bfb7241160c2 Mon Sep 17 00:00:00 2001 From: Raymaekers Luca Date: Mon, 24 Jun 2024 17:06:18 +0200 Subject: checkpoint --- bin/extra/clock | 19 +++++++-- bin/guiscripts/osurf-fill | 5 +-- bin/menuscripts/pomo | 101 +++++++++++++++++++++------------------------- 3 files changed, 63 insertions(+), 62 deletions(-) (limited to 'bin') diff --git a/bin/extra/clock b/bin/extra/clock index bd6efd2..6c5bfe0 100755 --- a/bin/extra/clock +++ b/bin/extra/clock @@ -1,12 +1,25 @@ #!/bin/sh -clocks="${XDG_DATA_HOME:-$HOME}"/clocks.csv +clocks="$HOME"/sync/share/clocks.csv -if [ ! -f "$clocks" ] -then +# Create csv file with headers if not exist +[ -f "$clocks" ] || printf 'start,end,message\n' > "$clocks" + + +if [ "$1" = "-h" ] +then + >&2 cat <&2 printf '%s\n' "$@"; } -log () { >&2 printf '%s' "$@"; } # Plays ringing sound # Then wait for user input to start/end the break -player_command() -{ - >&2 printf ' > ' +player_command() { + printf >&2 ' > ' [ -r "$ringSound" ] || PLAYER="" case "$PLAYER" in - mpv) mpv --loop --msg-level=all=no "$ringSound" ;; - "") head -n 1;; - *) $PLAYER "$ringSound" ;; + mpv) mpv --loop --msg-level=all=no "$ringSound" ;; + "") head -n 1 ;; + *) $PLAYER "$ringSound" ;; esac } # $1: time in minutes # $2: msg for notification -ring_ring() -{ - logn "$(date '+%R') B $round" +ring_ring() { + printf >&2 '%s B %s\n' "$(date '+%R')" "$round" player_command - herbe "pomo" "$2" & - sleep "${1}m" + herbe "pomo" "$2" & + sleep "${1}m" player_command - >&2 printf '\n' + printf >&2 '\n' } -### PROGRAM -main() -{ - round="${1-0}" - case "$round" in - 0|1|2|3) ;; - ring) ;; - *) logn "Invalid \$round value." && exit 1 ;; - esac +### Program - ringSound="${XDG_DATA_HOME:-$HOME/.local/share}"/pomo/ring.aac - [ -r "$ringSound" ] && logn "ring: $ringSound" +trap 'exit 1' INT - if [ "$1" = "ring" ] - then - player_command - exit - fi +round="${1:-0}" +# args +case "$round" in +0 | 1 | 2 | 3) ;; +ring) ;; +*) printf >&2 'Invalid value: %s\n' "$round"; exit 1 ;; +esac - # Countdown - for msg in "three" "two" "one" - do notif "$msg" - done +ringSound="${XDG_DATA_HOME:-$HOME/.local/share}"/pomo/ring.aac +[ -r "$ringSound" ] && printf >&2 'ring: %s\n' "$ringSound" - while true - do - notif "START" - logn "$(date '+%R') S $round" - sleep 25m - if [ "$round" -eq 3 ] - then - ring_ring 20 "GIGA BREAK TIME" - round=0 - else - ring_ring 5 "BREAK TIME" - round=$((round+1)) - fi - done -} +if [ "$1" = "ring" ]; then + player_command + exit +fi -trap 'exit 1' INT -main "$@" +# Countdown +for msg in "three" "two" "one"; do + notif "$msg" +done + +while true; do + notif "START" + printf >&2 '%s S %s\n' "$(date '+%R')" "$round" + sleep 25m + if [ "$round" -eq 3 ]; then + ring_ring 20 "GIGA BREAK TIME" + round=0 + else + ring_ring 5 "BREAK TIME" + round=$((round + 1)) + fi +done -- cgit v1.2.3