Saya memiliki beberapa tugas dalam file Org saya, salah satunya memiliki item yang dimulai dengan kotak centang (tetapi hanya itu). Mereka semua memiliki cookie statistik pada akhirnya ([n / m]).
Saya sedang mencari cara untuk secara otomatis memperbarui tugas induk dari TODO
hingga DONE
setelah semua kotak centang ditandai sebagai selesai juga.
Dokumentasi mengatakan:
Jika Anda ingin entri TODO secara otomatis berubah menjadi SELESAI ketika semua anak selesai, Anda dapat menggunakan pengaturan berikut [...]
Kemungkinan lain adalah penggunaan kotak centang untuk mengidentifikasi (hierarki) sejumlah besar subtugas (lihat Kotak Centang).
Cara saya memahami bagian terakhir adalah bahwa jika item anak-anak adalah kotak centang, status induk harus sudah diperbarui secara otomatis (yang tidak demikian halnya).
Apa yang saya lewatkan?
Edit:
Dari org-after-todo-statistics-hook
dokumentasi (org.el):
Hook yang dipanggil setelah cookie statistik TODO telah diperbarui. Setiap fungsi disebut dengan dua argumen: jumlah entri yang belum selesai dan jumlah entri yang sudah selesai.
Yang berarti bahwa kode yang diusulkan dari 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)
tidak akan menghitung item kotak centang.
* Heading [0/1]
Jawaban:
Seperti yang Anda sebutkan dalam pertanyaan Anda yang diperbarui,
org-after-todo-statistics-hook
bukan yang Anda inginkan. Yang Anda inginkan adalahorg-checkbox-statistics-hook
.Saya menggunakan fungsi ini untuk melakukan apa yang Anda gambarkan (mereka harus benar-benar mendapatkan fungsi ini ke mode-org):
(add-hook 'org-checkbox-statistics-hook 'my/org-checkbox-todo)
apakah itu akan memanggilnya setiap kali Anda mengaktifkan kotak centang.Itu mengharuskan Anda memiliki cookie statistik (hal yang Anda dapatkan dengan
[/]
atau[%]
kemudianC-c C-c
) di header.sumber
Saya ingin versi yang sesuai dengan yang dicari @ctietze - aktifkan status kotak centang untuk item dalam daftar centang. Saya mencoba menelepon
org-reset-checkbox-state-subtree
tetapi mendapatkan kesalahan tentang terlalu banyak frame bersarang (Saya menggunakan Spacemacs).Inilah solusi kerja saya:
sumber