【发布时间】:2025-12-20 04:15:11
【问题描述】:
我正在使用 emacs org 模式进行可重复的研究。我无法将调用结果链接到代码块。作为我正在尝试做的一个最小示例:
* Functions
#+name: f1
#+begin_src elisp :var x=7
(+ x x)
#+end_src
#+name: f2
#+begin_src elisp :var x=7
(+ x 2)
#+end_src
* Data
#+name: intermediate
#+call: f1(x=5)
#+RESULTS: intermediate
: 10
#+call: f2(x=intermediate)
当我调用f2 时,它失败了,因为x 是nil。如果我从 f1 的调用中删除名称,则 f2 可以工作,但如果我更改 f1 的参数,结果不会保持同步。
如何告诉 org mode 我想查看函数调用的结果,而无需在每次计算结果时手动重命名?
【问题讨论】:
-
在 org-mode 8.2.6 上,您的示例在导出时正确给出了 10 和 12 作为结果。
-
我也在 Emacs 24.3.1 中运行 org-mode 8.2.6。如果我将上面列出的内容逐字复制到一个空的 emacs org 缓冲区中,则导出到 html 会失败并显示消息“错误类型参数:number-or-marker-p,“nil””。
标签: emacs org-mode literate-programming org-babel