Передать строковый аргумент в блок кода из таблицы в режиме org
Я пытаюсь передать строку в качестве аргумента блока кода при использовании org-mode
а также org-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 ответ
Решение
Наконец-то нашли правильную комбинацию!
| 6 | 3 |
#+TBLFM: @1$1='(org-sbe test)::@1$2='(org-sbe test (x \"bar\"))
Обратите внимание, что "
надо бежать...