org-provide-todo-statistics now alloww a list of TODO keywords.
When such a list is set, only compute statistics against headlines containing a keyword from this list. This was requested by Samuel Wales.
This commit is contained in:
parent
4e27954130
commit
da7a640931
|
@ -1,3 +1,11 @@
|
||||||
|
2009-07-27 Bastien Guerry <bzg@altern.org>
|
||||||
|
|
||||||
|
* org.el (org-provide-todo-statistics): Allow a list of TODO
|
||||||
|
keywords to compute statistics against headlines containing a
|
||||||
|
keyword from this list.
|
||||||
|
(org-update-parent-todo-statistics): Possibly use the new allowed
|
||||||
|
value of `org-provide-todo-statistics'.
|
||||||
|
|
||||||
2009-07-26 Bastien Guerry <bzg@altern.org>
|
2009-07-26 Bastien Guerry <bzg@altern.org>
|
||||||
|
|
||||||
* org-timer.el: Add autoload cookie.
|
* org-timer.el: Add autoload cookie.
|
||||||
|
|
23
lisp/org.el
23
lisp/org.el
|
@ -1705,14 +1705,18 @@ by a letter in parenthesis, like TODO(t)."
|
||||||
(defcustom org-provide-todo-statistics t
|
(defcustom org-provide-todo-statistics t
|
||||||
"Non-nil means, update todo statistics after insert and toggle.
|
"Non-nil means, update todo statistics after insert and toggle.
|
||||||
ALL-HEADLINES means update todo statistics by including headlines
|
ALL-HEADLINES means update todo statistics by including headlines
|
||||||
with no TODO keyword as well. When this is set, todo statistics
|
with no TODO keyword as well. A list of TODO keywords means the
|
||||||
is updated in the parent of the current entry each time a todo
|
same, but skip keywords that are not in this list.
|
||||||
state is changed."
|
|
||||||
|
When this is set, todo statistics is updated in the parent of the
|
||||||
|
current entry each time a todo state is changed."
|
||||||
:group 'org-todo
|
:group 'org-todo
|
||||||
:type '(choice
|
:type '(choice
|
||||||
(const :tag "For TODO entries" t)
|
(const :tag "Yes, only for TODO entries" t)
|
||||||
(const :tag "By all headlines" 'all-headlines)
|
(const :tag "Yes, including all entries" 'all-headlines)
|
||||||
(const :tag "No TODO statistics" nil)))
|
(repeat :tag "Yes, for TODOs in this list"
|
||||||
|
(string :tag "TODO keyword"))
|
||||||
|
(other :tag "No TODO statistics" nil)))
|
||||||
|
|
||||||
(defcustom org-hierarchical-todo-statistics t
|
(defcustom org-hierarchical-todo-statistics t
|
||||||
"Non-nil means, TODO statistics covers just direct children.
|
"Non-nil means, TODO statistics covers just direct children.
|
||||||
|
@ -9408,9 +9412,12 @@ statistics everywhere."
|
||||||
(> (setq l1 (length (match-string 1))) level))
|
(> (setq l1 (length (match-string 1))) level))
|
||||||
(setq kwd (and (or recursive (= l1 ltoggle))
|
(setq kwd (and (or recursive (= l1 ltoggle))
|
||||||
(match-string 2)))
|
(match-string 2)))
|
||||||
(if (eq org-provide-todo-statistics 'all-headlines)
|
(if (or (eq org-provide-todo-statistics 'all-headlines)
|
||||||
|
(and (listp org-provide-todo-statistics)
|
||||||
|
(or (member kwd org-provide-todo-statistics)
|
||||||
|
(member kwd org-done-keywords))))
|
||||||
(setq cnt-all (1+ cnt-all))
|
(setq cnt-all (1+ cnt-all))
|
||||||
(if org-provide-todo-statistics
|
(if (eq org-provide-todo-statistics t)
|
||||||
(and kwd (setq cnt-all (1+ cnt-all)))))
|
(and kwd (setq cnt-all (1+ cnt-all)))))
|
||||||
(and (member kwd org-done-keywords)
|
(and (member kwd org-done-keywords)
|
||||||
(setq cnt-done (1+ cnt-done)))
|
(setq cnt-done (1+ cnt-done)))
|
||||||
|
|
Loading…
Reference in New Issue