J'ai plusieurs tâches dans mon fichier Org, dont l'une contient des éléments commençant par une case à cocher (mais uniquement ceux-ci). Ils ont tous un cookie statistique à leur fin ([n / m]).
Je cherche un moyen de mettre à jour automatiquement la tâche parent de TODO
à DONE
une fois que toutes les cases à cocher sont également marquées comme terminées.
La documentation dit:
Si vous souhaitez qu'une entrée TODO passe automatiquement à DONE lorsque tous les enfants ont terminé, vous pouvez utiliser la configuration suivante [...]
Une autre possibilité est l'utilisation de cases à cocher pour identifier (une hiérarchie de) un grand nombre de sous-tâches (voir Cases à cocher).
La façon dont je comprends cette dernière partie est que si les éléments enfants sont des cases à cocher, l'état parent doit déjà être automatiquement mis à jour (ce qui n'est pas le cas).
Qu'est-ce que je rate?
Éditer:
À partir de org-after-todo-statistics-hook
la documentation (org.el):
Hook appelé après la mise à jour d'un cookie de statistiques TODO. Chaque fonction est appelée avec deux arguments: le nombre d'entrées non terminées et le nombre d'entrées terminées.
Ce qui signifie que le code proposé par 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)
ne comptera pas les éléments des cases à cocher.
* Heading [0/1]