taskwarrior
taskwarrior copied to clipboard
separate "until" and "recur until" attributes
Currently, when using recurrence, the "Until" field determines when the recurrance stops. Take this example from the taskwarrior docs
task add Pay the rent due:1st recur:monthly until:2015-03-31
Created task 123.
This will make a task "Pay the rent" which will recur monthly, and stop recurring on 2015-03-01. This is great functionality, however it prevents creating any recurring tasks where the task instances themselves need to have an until date.
For example, if I want the task
task add "Put the garbage out" due:sunday recur:weekly
I would likely want that task to expire after a week, so I can have the next weeks garbage task instead.
If I try to do this
task add "Put the garbage out" due:sunday recur:weekly until:due+6d
This will make the task stop recurring after one week, which is unintended.
Is this something that can be separated out somehow?
Similarly, it would also be useful to have a scheduled datetime for each recurrence itself. Quoting the same example with the rent. Lets say you get the bill alway in the last week of the month. Then being able to do something like the following would be useful:
task add Pay the rent due:1st scheduled:due-7d recur:monthly until:2015-03-31
@jcjgraf @tunbridgep
In terms of planning, I wonder if the design document for the planned recurrence overhaul is addressing these concerns? https://taskwarrior.org/docs/design/recurrence.html
Thanks @tbabej for your quick response!
This overhaul seems very promising and actually addresses my stated problem (in Proposal: Use relative offsets). Though, it does not address the problem stated by @tunbridgep.
You could solve that doing something like:
- Apply Proposal: Use relative offsets (in addition to
wait
andschedule
) also to theuntil
keyword. - Add something like Proposal: New 'runtil' attribute which defines till what date the task should recur (i.e. it does what
until
does in the current implementation).
Adding this as feedback to the recurrence overhaul tracker so that we don't forget about it.
"until" and "recur until" are certainly different things, and easily confused, so what if we re-named "recur until" to "recur end" or "end recur"? Would that help?
Is anyone interested in working on this problem? I'd really like to be able to say like: "recur:daily recur-until:due+5days" recurrence happens for 5 days regardless of recurrence period. Or: "recur:daily+5" recur daily for 5 times only.
Let me know what you think!
@tunbridgep This is how I solved it: https://github.com/scottyob/taskwarrior-better-recur