逗号表明您想要evaluate打电话给capture-date-based-file
,但周围的形式是quoted而不是反引号,所以这是行不通的。
也就是说,这是两个完全不同的事情:
'(foo ,(bar) baz)
`(foo ,(bar) baz)
See C-hig (elisp)Backquote
RET
在反引号形式中,逗号导致立即计算后面的形式,然后将该计算结果替换到反引号形式中。以引用的形式,,(bar)
只是保留为字面意思,(bar)
.
您看到的特定错误的原因是 Lisp 阅读器产生以下内容:
ELISP> (read ",(bar)")
(\, (bar))
因此任何尝试evaluate ,(bar)
实际上是调用了不存在的函数\,
(FWIW,这是您会遇到的不太明显的错误之一。)
在您的场景中,我假设 org 从模板结构中提取特定的表单并对其进行评估。M-x toggle-debug-on-error
很可能会向您准确显示这种情况发生的地点和时间。