Estou tendo problemas para entender como gerenciar tarefas recorrentes no taskwarrior
Eu começo com um banco de dados vazio:
$ task
[task next]
No matches.
Eu adiciono uma tarefa diária recorrente:
$ task add recur:daily due:later test
Aparece no relatório:
$ task
[task next]
ID Age Recur Due Description Urg
2 - P1D 19.2y test 2.4
1 task
Creating recurring task instance 'test'
Se eu marcar feito assim:
$ task 2 done
Completed task 2 'test'.
Completed 1 task.
$ task
[task next]
No matches.
desaparece do relatório. Acredito que faça sentido, já que "completei a tarefa diária hoje".
O problema é que nunca mais aparece no dia seguinte e depois. O que estou fazendo errado?
As tarefas aparentemente recorrentes devem ter as mesmas configurações de vencimento do companheiro. Por exemplo:
desta forma, a tarefa diária pode ser marcada como concluída e não aparecerá novamente até o dia seguinte
mesmo para tarefas semanais/mensais etc.
Antes de mergulhar nos detalhes de trabalho, observe que a recorrência não é bem projetada . O que trago são observações empíricas e passíveis de mudança com um retrabalho.
TLDR; Como usar e entender a recorrência
Exemplo:
task add recur:daily due:9:00 until:12:00 wait:5:00 eat breakfast
Detalhes
A recorrência requer um
due
atributo (imposto com uma verificação de validação ). A recorrência também pode usar atributosuntil
ewait
, se existirem. A recorrência não usascheduled
. E há ummask
atributo que rastreia qual instância da recorrência a tarefa é.Quando uma nova instância recorrente é criada:
new task due
=parent due
+recur
*mask
until
ewait
scheduled
é copiado por atacado da tarefa pai. Na prática, esse comportamento inesperado não interromperá seu fluxo de trabalho, apenas afetará os filtros e distorcerá a urgência. Eu chamo isso porque demorei muito tempo para descobrir que isso não estava funcionando como esperado.Toda vez
taskwarrior
que é executado, ele verifica se é hora de criar a próxima ocorrência. A pseudo-equação é:Observe que há um valor de configuração,
rc.recurrence.limit
, que pode ser usado para informar ao taskwarrior para criar ainda mais ocorrências mais distantes.Você pode esperar que a próxima ocorrência seja criada na data de vencimento da anterior.