todoist-repeater

Create recurring tasks in Todoist with cron-style syntax
Log | Files | Refs | README

commit d62e3ba8fa65ab5731060250974d9e216b448103
parent 8f09516cc211e3652189e4cedab5810af89cd178
Author: David Schlachter <t480-debian-git@schlachter.ca>
Date:   Mon, 10 Nov 2025 00:24:57 -0500

Add jobs to scheduler

Diffstat:
Mmain.go | 20++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/main.go b/main.go @@ -33,19 +33,13 @@ func main() { if err != nil { log.Printf("reading input: %s", err) } - changed := inputChanged(lastSeenInput, input) - if changed { - fmt.Println("changed!") + + if inputChanged(lastSeenInput, input) { lastSeenInput = input c.Stop() c := cron.New() - err := addJobs(c) - if err != nil { - log.Printf("adding jobs: %s", err) - } + addJobs(c, input) c.Start() - } else { - fmt.Println("not changed!") } time.Sleep(time.Minute) // re-read the input file every minute @@ -114,4 +108,10 @@ func inputChanged(old, new map[inputLine]struct{}) bool { return false } -func addJobs(c *cron.Cron) error { return nil } +func createTask(task string) {} + +func addJobs(c *cron.Cron, tasks map[inputLine]struct{}) { + for task := range tasks { + c.AddFunc(task.Schedule, func() { createTask(task.Task) }) + } +}