0

在 Emacs 23.3.1 中,我有一个 org 文件,其中包含(除其他外) state CANCELED(c@)。我想遍历一个子树(可以正常工作org-map-entries),然后根据用户输入将状态设置CANCELED为记录的注释Reason

如果我调用(org-todo "CANCELED"),则项目的状态设置正确,但我留下了一个*Org Note*缓冲区,因为我的循环继续进行,所以该缓冲区被忽略。

如何以非交互方式设置日志注释?如果不可能,是否有更好的替代方案(progn (switch-to-buffer "*Org Note*") (insert "Reason") (org-ctrl-c-ctrl-c))(这也不起作用:-))?

4

1 回答 1

0

我发现advice'ingorg-todo工作量太大,因为笔记记录器非常集成到整体框架中,并且受Worg的启发选择了更传统的键盘宏方法:

(kmacro-exec-ring-item (quote ("\C-c\C-tcReason\C-c\C-c" 0 "%d")) nil)

于 2013-01-16T01:38:21.170 回答