微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将列表列表转换为组织表

如何解决将列表列表转换为组织表

我有一个 lisp 数据(列表列表)

docker run --rm -v data:/data -p 8089:8089 -p 9098:9098 -p 9099:9099 -e SATELLITE_ROUTES_PATH=/data/httbin.yml verygood/satellite     
Usage: app.py [OPTIONS]
Try 'app.py --help' for help.

Error: Invalid value for '--routes-path': File '/data/httbin.yml' does not exist.

当我尝试将此列表转换为 (setf *table-data* '((1 "Team1" (("member 1" "data1") ("member 2" "data2") ("member 3" "data3"))) (2 "Team2" (("member 1" "data1") ("member 2" "data2") ("member 3" "data3"))))) 时,使用 org-table 我得到了输出

(princ *table-data*)

| 1 | Team1 | ((member 1 data1) (member 2 data2) (member 3 data3)) | | 2 | Team2 | ((member 1 data1) (member 2 data2) (member 3 data3)) | 只考虑最外面的列表元素。

但我想得到如下输出

org-table

有没有可能实现这个目标?

此外,我想将此表转换回列表列表而不是普通列表。

解决方法

[仅部分答案:这个答案涉及从 lisp 数据结构转换表,就像 Org 模式所做的那样。]

您要生成的表的 lisp 表示如下:

#+begin_src emacs-lisp
(setq x '((1 "Team1" "member 1" "data1")
          ("" ""     "member 2" "data2")
          ("" ""     "member 3" "data3")
          (2 "Team2" "member 1" "data1")
          ("" ""     "member 2" "data2")
          ("" ""     "member 3" "data3")))
x
#+end_src

#+RESULTS:
| 1 | Team1 | member 1 | data1 |
|   |       | member 2 | data2 |
|   |       | member 3 | data3 |
| 2 | Team2 | member 1 | data1 |
|   |       | member 2 | data2 |
|   |       | member 3 | data3 |

正如您通过评估源块所看到的那样。

剩下要做的是将您想要的表示转换为这种表示,反之亦然。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。