Automatically scheduling tasks onto TaskPool
| emacs, planner
(defadvice planner-create-task-from-buffer (before paul activate)
"Automatically schedule task onto TaskPool as well as other projects."
(if plan-page
(unless (string-match plan-page "TaskPool")
(setq plan-page (concat plan-page planner-multi-separator "TaskPool")))
(setq plan-page "TaskPool")))
Here’s another snippet that will unschedule tasks from TaskPool when
you mark them completed with C-c C-x (planner-task-done). Nifty stuff,
huh?
(defadvice planner-task-done (after paul activate)
"Remove completed tasks from the TaskPool if that still leaves them linked."
(let ((info (planner-current-task-info)))
(when (planner-task-link-text info)
;; If it is linked to TaskPool _and_ at least one other thing
(if (string-match planner-multi-separator (planner-task-link-text info))
(planner-multi-replan-task
(planner-multi-make-link (planner-multi-filter-links "^TaskPool$" (planner-multi-task-link-as-list info) t)))
;; Else if it has a date and is linked to TaskPool
(if (and (planner-task-date info)
(string= (planner-task-link info) "TaskPool"))
(planner-replan-task nil))))))
You can e-mail me at sacha@sachachua.com.