将列表从 org 电子表格传递到 lisp 函数

发布于 2025-01-01 17:47:01 字数 205 浏览 0 评论 0原文

我有一个名为 TABLE1 的表,我试图将一个列表传递给函数 foo,如下所示:

#+TBLFM: $1='(foo list(a b c))

(defun foo (my-list) 
  (first my-list)
)

不幸的是,表公式的计算结果为 #ERROR。知道如何将列表传递给函数吗?

I have a table named TABLE1 and I am trying to pass a list to the function foo as follow:

#+TBLFM: $1='(foo list(a b c))

(defun foo (my-list) 
  (first my-list)
)

Unfortunately the table formula evaluates to #ERROR. Any idea how I can go about passing a list to the function?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

离不开的别离 2025-01-08 17:47:01

您需要使用有效的函数才能使其工作。即使在 *scratch* 缓冲区中,(foo list(abc)) 也无法计算。

如果将公式更改为:

(foo (list "a" "b" "c"))
or
(foo (list 'a 'b 'c))
or
(foo '(a b c))

它将在表字段中返回a

You need to use a valid function for it to work. (foo list(a b c)) fails to evaluate even in the *scratch* buffer.

If you change the formula to:

(foo (list "a" "b" "c"))
or
(foo (list 'a 'b 'c))
or
(foo '(a b c))

it will return a in the table field.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文