Eu tenho várias tarefas no meu arquivo organizacional, uma das quais possui itens começando com uma caixa de seleção (mas somente aqueles). Todos eles têm um cookie estatístico no final ([n / m]).
Estou procurando uma maneira de atualizar automaticamente a tarefa pai de TODO
para DONE
uma vez que todas as caixas de seleção também estejam marcadas como concluídas.
A documentação diz:
Se você deseja que uma entrada TODO mude automaticamente para DONE quando todas as crianças terminarem, você pode usar a seguinte configuração [...]
Outra possibilidade é o uso de caixas de seleção para identificar (uma hierarquia) um grande número de subtarefas (consulte Caixas de seleção).
Pelo que entendi, a última parte é que, se os itens filhos forem caixas de seleção, o estado pai já deverá ser atualizado automaticamente (o que não é o caso).
o que estou perdendo?
Editar:
Da org-after-todo-statistics-hook
documentação (org.el):
Gancho chamado após a atualização de um cookie de estatísticas TODO. Cada função é chamada com dois argumentos: o número de entradas não concluídas e o número de entradas concluídas.
O que significa que o código proposto do orgmode.org:
(defun org-summary-todo (n-done n-not-done)
"Switch entry to DONE when all subentries are done, to TODO otherwise."
(let (org-log-done org-log-states) ; turn off logging
(org-todo (if (= n-not-done 0) "DONE" "TODO"))))
(add-hook 'org-after-todo-statistics-hook 'org-summary-todo)
não contará itens da caixa de seleção.
* Heading [0/1]