forked from mirrors/org-mode
org-habit: Extend tracking to done notes
* lisp/org-habit.el (org-habit-parse-todo): Also find timestamps when `org-log-done' is `note'. Reported-by: Andrew Francis Swann <swann@math.au.dk>
This commit is contained in:
parent
1616e08448
commit
de51e1aef6
|
@ -200,11 +200,27 @@ This list represents a \"habit\" for the rest of this module."
|
|||
(count 0))
|
||||
(unless reversed (goto-char end))
|
||||
(while (and (< count maxdays)
|
||||
(funcall search (format "- State \"%s\".*\\[\\([^]]+\\)\\]"
|
||||
(regexp-opt org-done-keywords))
|
||||
(funcall search
|
||||
(concat
|
||||
(format "- State \"%s\".*\\[\\([^]]+\\)\\]"
|
||||
(regexp-opt org-done-keywords))
|
||||
"\\|"
|
||||
(org-replace-escapes
|
||||
(regexp-quote
|
||||
(cdr (assq 'done org-log-note-headings)))
|
||||
`(("%d" . ,org-ts-regexp-inactive)
|
||||
("%D" . ,org-ts-regexp)
|
||||
("%s" . "\"\\S-+\"")
|
||||
("%S" . "\"\\S-+\"")
|
||||
("%t" . ,org-ts-regexp-inactive)
|
||||
("%T" . ,org-ts-regexp)
|
||||
("%u" . ".*?")
|
||||
("%U" . ".*?"))))
|
||||
limit t))
|
||||
(push (time-to-days
|
||||
(org-time-string-to-time (match-string-no-properties 1)))
|
||||
(org-time-string-to-time
|
||||
(or (org-match-string-no-properties 1)
|
||||
(org-match-string-no-properties 2))))
|
||||
closed-dates)
|
||||
(setq count (1+ count))))
|
||||
(list scheduled sr-days deadline dr-days closed-dates))))
|
||||
|
|
Loading…
Reference in a new issue