vonshednob / pter

Manage your todo.txt in a commandline user interface (TUI)
https://vonshednob.cc/pter/
MIT License
102 stars 6 forks source link

Recurring/repeating tasks? #12

Closed pglaz closed 2 years ago

pglaz commented 2 years ago

Hello! I'm just giving pter a go and loving it so far! However, I think it doesn't support repeating/recurring tasks? Like

(A) 2021-12-07 cleanup reports folder t:2021-12-10 rec:2w

Apologies if I missed this in the docs but I couldn't find a mention. Thank you!

vonshednob commented 2 years ago

Glad you like it so far.

You are right though, pter does not support recurring tasks at the moment. But I like that feature quite a bit. Gotta think about it some more, but I’ll add it!

Thanks for the suggestion!

pglaz commented 2 years ago

Thank you so much! That's awesome.

Just to give you something to consider, what I saw in other todotxt apps is the normal recurring and strict recurring (for example Michael Descy's SwiftoDo or sleek both do this).

Some apps though require recurring tasks to have due dates, which I don't understand given that there could be a threshold date present instead. In my personal opinion, due dates should be used sparingly (if I don't do this by this day, I'll be fired or my wife will leave me). Adding due dates to all recurring tasks, even with a threshold date present, desensitizes me from due dates -- my todo list is full of them so they're no longer scary. I think the following approach makes most sense:

Anyway, that's just my 5 cents. You'll decide which approach is best given your vision of pter!

vonshednob commented 2 years ago

Yeah, I pretty much agree with the points you listed there. There will likely be two configuration options to control the behaviour:

I like your suggestion to follow t if no due has been defined.

Thanks for the input! I’ll get to it :)

pglaz commented 2 years ago

For recurring-mode, do you mean that it'd be set in the config for all tasks? Perhaps it could also be modified on per-task basis with the presence or absence of + sign, like

So one might need both normal and strict recurring within a single todo list. But again -- I don't want to get too intrusive here and it's just my opinion!

vonshednob commented 2 years ago

The program-wide option was inspired by topydo, but I was considering a possibility to specify the mode on a task-by-task basis.

Semantically, + feels more like the interval mode than the strict mode, but since it appears to be the qualifier used by sleek and SwiftoDo (just not by topydo), I’ll follow that to keep pter as compatible as possible.

pter already supports relative dates, which means I can just reuse that pattern, so the + is well in the syntax. And of course it doesn’t make a lot of sense to have a recurring task with a negative time interval.

This makes me wonder whether the global option is of any use :thinking: probably not, because it’ll result rather in user surprise than consistent behaviour.

vonshednob commented 2 years ago

Well, let’s see how that worked out… fixed in 3.1.0.

Just scream when there’s something wrong with it :grin: