org-mode - 如何使用单个命令归档所有 DONE/DELEGATED/DEFERRED 任务
问题描述
这是关于如何使用单个命令归档所有 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))
我有以下 org-todo-keywords:
(setq org-todo-keywords
'((sequence "TODO(t)" "NEXT(n)" "WAITING(w)" "PROJECT(p)" "|" "DONE(d)" "DELEGATED" "DEFERRED")))
目标是归档所有标记为 DONE、DELEGATED 或 DEFERRED 的任务。我已尝试按照此处的说明使用匹配,但无法使其正常工作。我试过例如:
MATCH = "/DONE|/DELEGATED|/DEFERRED"
我是 elisp 的新手,感谢您提供带有解释的解决方案。
解决方案
语法有点晦涩,但是如果我正确阅读了您链接到的页面,我认为(未经测试!)以下内容将起作用:
"/+DONE|+DELEGATED|+DEFERRED"
这与该页面上的最后一个示例非常相似:选择具有非空 (!) 的 TODO 属性 (/) 并且该 TODO 属性的值为 DONE、DELEGATED 或 DEFERRED 的条目。
推荐阅读
- javascript - 如何强制按钮在 vue.js 中保持一行?
- ansible - 从清单中的组打印主机名
- neo4j - 如何对 cypher、neo4j 的结果进行分页?
- jquery - Laravel 5.8 需要在 app.js 中找不到函数
- python - 更新的熊猫:现在 lambda & to_list() 不起作用
- mysql - 死锁插入MySQL表
- angular - 如何在数据表中添加全选复选框?
- amazon-web-services - 如何在 CloudWatch 仪表板模板中使用参数
- typescript - 如何在 IntelliSense 上选择导入的模块?
- r - 重复列 a 到新行