diff --git a/dot_config/private_fish/functions/dailyrec.fish b/dot_config/private_fish/functions/dailyrec.fish new file mode 100644 index 0000000..3c65610 --- /dev/null +++ b/dot_config/private_fish/functions/dailyrec.fish @@ -0,0 +1,29 @@ +#!/usr/bin/fish +function dailyrec + set recfile "$HOME/org/daily.rec" + + read -P 'Date (yyyy-mm-dd) (default: today)> ' date + if test -z "$date" + set date (date +%Y-%m-%d) + else + set date (date -d "$date" +%Y-%m-%d) + end + + if not date -d "$date" > /dev/null 2>&1 + echo "Invalid date: $date (should be yyyy-mm-dd)" + exit 1 + end + + echo Date: $date + + if test (recsel -e "Date = '$date'" --count "$recfile") -eq 0 + recins --verbose -t Daily -f "Date" -v "$date" "$recfile" + end + + + for field in Morning Mood Eating Walking Bass Reading + read -P "$field > " value + if test -z "$value"; continue; end + recset --verbose -e "Date = '$date'" -f "$field" -S "$value" "$recfile" + end +end