如何使用单个命令存档所有完成/委派/延迟任务



这是一个关于如何使用单个命令存档所有 DONE 任务的后续问题。

Stefan给出的解决方案适用于单个DONE语句。如何扩展它以使用多个 DONE 语句?

Stefan给出了以下解决方案:

(defun org-archive-done-tasks ()
(interactive)
(org-map-entries
(lambda ()
(org-archive-subtree)
(setq org-map-continue-from (org-element-property :begin (org-element-at-point))))
"/DONE" 'tree))

我有以下组织待办事项关键字:

(setq org-todo-keywords
'((sequence "TODO(t)" "NEXT(n)" "WAITING(w)" "PROJECT(p)" "|" "DONE(d)" "DELEGATED" "DEFERRED")))

目标是存档所有标记为"已完成"、"委派"或"延迟"的任务。我尝试使用此处所述的匹配,但无法使其正常工作。例如,我尝试过:

MATCH = "/DONE|/DELEGATED|/DEFERRED"

我是 elisp 的新手,感谢带有解释的解决方案。

语法有点晦涩难懂,但是如果我正确阅读了您链接到的页面,我认为(未经测试!(以下内容将起作用:

"/+DONE|+DELEGATED|+DEFERRED"

这与该页面上的最后一个示例非常相似:选择具有不为空 (!( 的TODO 属性 (/( 且该 TODO 属性的值为 DONE 或 DELEGATED 或 DEFERRED 的条目。

最新更新