gpt4 book ai didi

lua - 导入 lua 模块并将它们与 lua pandoc 过滤器一起使用

转载 作者:行者123 更新时间:2023-12-05 02:12:25 37 4
gpt4 key购买 nike

Pandoc 通过其 --lua-filter 参数原生支持 lua 过滤器。
但是,我想知道它使用的是什么版本的 lua,以及是否可以将 lua 模块(我相信它依赖于 C 代码)导入其中。
这是我调查的一部分,目的是创建一个过滤器来读取 excel 工作表并将它们转换为 pandoc 表。

最佳答案

通常可以通过运行print(_VERSION) 来检查Lua 版本。即,在您的 shell 中运行它应该可以工作:

pandoc --lua-filter <(echo 'print(_VERSION)') <<< ''

旧的 pandoc 版本可以用 Lua 5.1、Lua 5.2、Lua 5.3 或 LuaJIT 中的任何一个编译。然而,保持兼容性很麻烦,因此 HsLua 的维护者pandoc(即我)使用的包,大约一年前停止支持旧版本。如果您使用的是 pandoc 2.3.1 或更高版本,pandoc 保证包含 Lua 5.3.x。

加载纯 Lua 库不会有问题,并且应该像普通的 Lua 可执行文件一样工作。唯一的问题可能是 pandoc 中设置的默认 LUA_PATH 与其他程序中使用的不同。如果没有针对系统范围的 Lua 版本编译 pandoc,就会发生这种情况。 LuaRocks可以在那里提供帮助,只需运行 eval "$(luarocks path)"

与纯 Lua 库一样,如果 pandoc 已被编译为非静态二进制文件,C Lua 库应该可以正常工作。但是,pandoc 网站和 GitHub 上提供的非 Windows 二进制文件是静态的,动态加载 C 库将无法工作。

我们maintain Alpine-based Docker images , pandoc/corepandoc/latex,它们是针对系统范围的 Lua 版本编译的。如果您平台的包管理器没有提供最新的 pandoc 版本,不能使用静态编译的二进制文件,并且您不想自己编译 pandoc,这可能是一个不错的选择。如果您希望看到对 Ubuntu 等其他基础镜像的支持,只需提出问题即可。

关于lua - 导入 lua 模块并将它们与 lua pandoc 过滤器一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56082354/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com