Org-Mode: 从 noweb 插入调用 noweb 插入

Org-Mode: call the noweb insertion from the noweb insertion

a 和 b -- python 函数,c -- 简单的 noweb 插入到 python 源代码块,d -- noweb 插入与 noweb 插入一起运行。函数 c -- 有效,但函数 d -- 无效,因为 python 尝试执行插入,但这是无效语法。是否可以从 noweb 插入 运行 noweb 插入?

#+NAME: a
#+BEGIN_SRC python
a = 1
#+END_SRC

#+NAME: b
#+BEGIN_SRC python
b = 1
#+END_SRC

#+NAME: c
#+BEGIN_SRC python :noweb yes :results output
<<a>>
<<b>>
c = a + b
print c
#+END_SRC

#+NAME: d
#+BEGIN_SRC python :noweb yes :results output
<<c>>

d = c * 2
print d
#+END_SRC

在实验过程中,我发现这种构造有效(所有 noweb 插入必须在最后一个代码块中):

#+NAME: a
#+BEGIN_SRC python
a = 1
#+END_SRC

#+NAME: b
#+BEGIN_SRC python
b = 1
#+END_SRC

#+NAME: c
#+BEGIN_SRC python
c = a + b
#+END_SRC

#+NAME: d
#+BEGIN_SRC python :noweb yes :results output
<<a>>
<<b>>
<<c>>

d = c * 2
print d
#+END_SRC