Emacs Org-Mode: Clear non-repeated SCHEDULED time when DEADLINE is repeated -
i use org-mode manage deadlines repeated tasks. example, may have following:
* todo weekly task deadline <2013-08-10 sat +1w> if mark task done, deadline automatically increments next week expected. however, use scheduled time indicate when during week task, example:
* todo weekly task deadline <2013-08-10 sat +1w> scheduled: <2013-08-08 thu> this makes task show in agenda today (thursday). when mark task done, end following:
* todo weekly task deadline <2013-08-17 sat +1w> scheduled: <2013-08-08 thu> ...and task still appears in agenda view today, though has been completed.
is possible, tasks have repeated deadline, org-mode clear non-repeated scheduled date?
here's patch, if want apply yourself. i'll send copy org-mode mailing list.
--- a/lisp/org.el +++ b/lisp/org.el @@ -12835,7 +12835,8 @@ function run automatically after each state change done state." (setq type (if (match-end 1) org-scheduled-string (if (match-end 3) org-deadline-string "plain:")) ts (match-string (if (match-end 2) 2 (if (match-end 4) 4 0)))) - (when (string-match "\\([.+]\\)?\\(\\+[0-9]+\\)\\([hdwmy]\\)" ts) + (if (not (string-match "\\([.+]\\)?\\(\\+[0-9]+\\)\\([hdwmy]\\)" ts)) + (org-remove-timestamp-with-keyword org-scheduled-string) (setq n (string-to-number (match-string 2 ts)) (match-string 3 ts)) (if (equal "w") (setq n (* n 7) "d"))
Comments
Post a Comment