问题
Here are the relevant parts of my .emacs
(setq org-enforce-todo-dependencies t)
(setq org-enforce-todo-checkbox-dependencies t)
(setq org-agenda-dim-blocked-tasks 'invisible)
When I visit my agenda view I want to see tasks which are scheduled or have a deadline (even if they are blocked by another task and are therefor stricly speaking rightly invisible).
Currently those tasks are not visible whilst they are being blocked by other tasks.
I would however prefer that an exception be made for these tasks which have been scheduled or given a deadline and that they be made visibile so that I maintain active awareness of them.
回答1:
This could be accomplished by splitting off the scheduled and deadline tasks with a custom agenda view. Only scheduled and deadline items would be shown in the first block, and the setting to make blocked tasks invisible can be applied to uniquely to a the second block. For example:
;; Retain your default settings
(setq org-enforce-todo-dependencies t)
(setq org-enforce-todo-checkbox-dependencies t)
(setq org-agenda-dim-blocked-tasks t)
;; Create the custom agenda view
(setq org-agenda-custom-commands
'(("c"
"Agenda to show deadlines & hide blocked"
(
(agenda ""
((org-agenda-entry-types '(:deadline :scheduled))))
(tags-todo "-TODO=\"DONE\""
((org-agenda-skip-entry-if 'deadline 'scheduled)
(org-agenda-dim-blocked-tasks 'invisible)))
))))
回答2:
Isn't it because of your setting:
(setq org-agenda-dim-blocked-tasks 'invisible)
?
来源:https://stackoverflow.com/questions/29846732/make-emacs-org-mode-deadlines-and-scheduled-blocked-tasks-visible-in-agenda-view