我无法理解如何在taskwarrior中管理重复性任务
我从一个空数据库开始:
$ task
[task next]
No matches.
我添加了一个重复的日常任务:
$ task add recur:daily due:later test
它显示在报告中:
$ task
[task next]
ID Age Recur Due Description Urg
2 - P1D 19.2y test 2.4
1 task
Creating recurring task instance 'test'
如果我这样标记它:
$ task 2 done
Completed task 2 'test'.
Completed 1 task.
$ task
[task next]
No matches.
它从报告中消失。我相信这是有道理的,因为“我今天完成了日常任务”。
问题是它再也不会在第二天甚至更远的地方再次出现。我究竟做错了什么?
显然,重复任务应该具有相同的同伴到期设置。例如:
这样,可以将每日任务标记为已完成,直到第二天才会再次出现
每周/每月等任务相同
在我深入研究工作细节之前,请注意重复性不是精心设计的。我带来的是经验观察,并且可能会随着返工而改变。
TLDR;我如何使用和理解复发
例子:
task add recur:daily due:9:00 until:12:00 wait:5:00 eat breakfast
细节
重复需要一个
due
属性(通过验证检查强制执行)。Recurrence 也可以使用until
和wait
属性,如果它们存在的话。复发不使用scheduled
。并且有一个mask
属性,它跟踪任务是哪个重复实例。创建新的重复实例时:
new task due
=parent due
+recur
*mask
until
和_wait
scheduled
从父任务批量复制。实际上,这种意外行为不会破坏您的工作流程,只会影响过滤器和扭曲紧迫性。我之所以这么说是因为我花了很长时间才发现这没有按预期工作。每次
taskwarrior
运行时,它都会检查是否该创建下一个事件。伪方程为:请注意,有一个配置值 ,
rc.recurrence.limit
可用于告诉 taskwarrior 在更远的地方创建更多事件。您可以预期下一个事件将在前一个事件的到期日期创建。