若使用 David Allen 的 GTD 等方法管理工作,定期 review 确保所有项目推进是重要任务。 停滞(stuck) 项目指未定义下一步行动的项目,因此不会出现在 Org 待办列表中。Review 时需识别此类项目并为其定义下一步行动。
org-agenda-list-stuck-projects) ¶列出停滞项目。
自定义变量 org-stuck-projects ,定义停滞项目规则与查找方式。
通常需要先配置该视图才能正常使用。内置默认假设所有项目为二级标题,且项目若至少有一个条目状态为 ‘TODO’ 、 ‘NEXT’ 或 ‘NEXTACTION’ 则不属于停滞。
假设你在使用 Org 模式时有自己的一套习惯:用标签 ‘:PROJECT:’ 标记项目,用 ‘TODO’ 关键字 ‘MAYBE’ 表示暂时不予考虑的项目。再假设,TODO 关键字 ‘DONE’ 表示已完成的项目, ‘NEXT’ 和 ‘TODO’ 表示下一步行动。标签 ‘:@shop:’ 表示购物事项,即使没有 ‘NEXT’ 标签,也视为下一步行动。最后,如果项目中任何位置包含特殊单词 ‘IGNORE’ ,也不应该出现在列表中。 在这种情况下,你可以先用 标签/TODO 匹配表达式 ‘+PROJECT/-MAYBE-DONE’ 筛选出符合条件的项目(参见 Tag Searches),然后在其子树中检查是否存在 ‘TODO’ 、 ‘NEXT’ 、 ‘@shop’ 和 ‘IGNORE’ ,以此判断哪些项目不属于停滞项目。对应的正确配置如下:
(setq org-stuck-projects
'("+PROJECT/-MAYBE-DONE" ("NEXT" "TODO") ("@shop")
"\\<IGNORE\\>"))
注意:如果某个项目被判定为非停滞项目,仍会在该条目的子树中继续搜索停滞项目。