将字符串参数从org模式下的表中传递给代码块

时间:2014-09-11 13:48:30

标签: python org-mode org-babel org-table

在使用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。内联调用或“表调用”的语法似乎不同...... :(

1 个答案:

答案 0 :(得分:3)

终于找到了合适的组合!

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

请注意"必须转义...