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

3 投票
1 回答
795 浏览
提问于 2025-04-21 02:41

我正在尝试在使用 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"))

有没有什么想法?

顺便说一下: #+CALL: test(x="fb") 返回了预期的结果,也就是 2。看起来内联调用或“表格调用”的语法是不同的... :(

1 个回答

4

终于找到了正确的组合!

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

注意," 这个符号需要进行转义处理...

撰写回答