本文介绍了 ZeroBrane Studio 简易适配 Lua 5.4 的一些细节html
Lua 5.4 已经到 rc4 版本了(更新: 目前 Lua 5.4 已经正式发布了~),相信很多朋友都已经有所尝试,最简单的测试方法应该就是手动编译一个 lua.exe,而后直接命令行执行脚本:git
lua.exe lua_script_path
固然,使用 IDE 来编写测试脚本会更方便些,本身平时用 ZeroBrane Studio 比较多,不过最新版本的 ZeroBrane Studio 尚未直接支持 Lua 5.4 脚本的运行和调试,本身简单尝试适配了一下,发现仍是比较简单的:github
- 首先,咱们进入 ZeroBrane Studio 的程序目录,在 interpreters 文件夹下新建 luadeb54.lua 脚本,内容以下:
dofile 'interpreters/luabase.lua' local interpreter = MakeLuaInterpreter(5.4, ' 5.4') interpreter.skipcompile = true return interpreter
- 接着,咱们将咱们编译的 lua.exe 改名为 lua54.exe, 并拷贝至 bin 文件夹下:
通过上面两步,咱们就已经能够在 ZeroBrane Studio 运行 Lua 5.4 脚本了,不过仍然不能调试,因此:web
- 最后,咱们再使用 Lua 5.4 编译一下 luasocket,将生成的(两个) dll 文件(分别置于 mime 和 socket 文件夹下)拷贝至新建文件夹 clibs54(bin 目录下) 中
至此,咱们就能够在 ZeroBrane Studio 中进行基本的(Lua 5.4)脚本运行和调试了:api
简单写个测试脚本:socket
print("test begin") local tbcmt = { __close = function() print("close to-be-closed var") end } local function create_tbcv() local tbcv = {} setmetatable(tbcv, tbcmt) return tbcv end do local tbcv <close> = create_tbcv() end print("test end")
在 ZeroBrane Studio 中运行并获得输出:svg
若是须要调试也是能够的:测试
说明
- 文中介绍的适配方式比较简易,仅适用于较简单的开发场景
- 对于关键字标准库等的适配没有处理,有兴趣的朋友能够尝试调整 api/lua/baselib.lua 文件
本文同步分享在 博客“tkokof1”(CSDN)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。lua