在组织模式下,将字符串参数从表传递到代码块



当使用org-modeorg-babel时,我试图传递一个字符串作为代码块的参数。特别是,我考虑以下最小的例子:

#+NAME: test
#+BEGIN_SRC python :var x="foobar"
return len(x)
#+END_SRC
| 6 | #ERROR |
#+TBLFM: @1$1='(org-sbe test)::@1$2='(org-sbe test (x ("fb")))

您可以注意到,第一个单元格已正确填充。但是,我无法正确处理第二个。我尝试了各种选择;例如:

#+TBLFM: @1$1='(org-sbe test)::@1$2='(org-sbe test (x "fb"))
#+TBLFM: @1$1='(org-sbe test)::@1$2='(org-sbe test(x="fb"))

有什么想法吗?

BTW:#+CALL: test(x="fb")返回预期结果,即2。内联调用或"表调用"的语法似乎有所不同…:(

终于找到了正确的组合!

| 6 | 3 |
#+TBLFM: @1$1='(org-sbe test)::@1$2='(org-sbe test (x "bar"))

请注意,必须转义"。。。

最新更新