LuaPanda
LuaPanda copied to clipboard
lua debug and code tools for VS Code
Since Mike Pall stepped down in [LuaJIT](https://github.com/LuaJIT/LuaJIT) development, project largely stalled. Soon, number of forks appeared, but the most promising one is [MoonJIT](https://github.com/moonjit/moonjit). They strive to keep the compatibility, but...
用来调试时getinfo出现libpdebug加载失败,跟踪调试,发现luajit没有导出lua_version这个函数,在luajit 动态库中导出这个函数, libpdebug加载成功,还是不能调试,不知道为什么
我们项目中使用 sol2 3.2.3 作为绑定库. 在不使用 sol2 注册任何类型时. 调试一切正常. 当使用sol2注册一个类型: 如下代码: `m_lua.new_usertype("CLogger", "debug_print", &CLogger::DebugPrint);` 再进行调试时, 调试器就会崩溃. 提示以下错误: ``` CScript: sol: runtime error: sol: cannot call '__pairs/pairs' on type 'sol::as_container_t': it is...
luapanda是一个lua写的调试器。为了提高运行效率,我把调用热点hook使用C重写了一遍,做成了一个模块。调试器启动时会尝试去找这个模块,如果找到就用,找不到就使用lua hook完成功能。 在开发lua调试器之后我又开发了一个quickjs调试器,其中使用了CDP作为前后端通信协议,直接对接了VScode内建的JavaScript Debugger(商店搜索 `@builtin JavaScript Debugger` 能找到)。框架上也是使用了C hook核心+js逻辑的形态。以下是开发了两个调试器之后的一些想法: + 脚本开发还是比C方便太多了,协议构建,字符串处理,三方库都能大大提升开发效率。 + 关于脚本的性能弱于原生语言,应该用合理的架构去优化,比如调用热点函数写成原生模块。 + CDP协议比较冗余,很多是用于chrome环境下的字段,开发调试器一般自定协议就行。特地使用CDP意义不大。 + CDP协议的时序似乎没有清晰的文档介绍。我在和 vscode JavaScript Debugger 前端对接时被时序折腾了很久(还得看 JavaScript Debugger 插件的源码,还没注释)。 + 所以还是得自己写插件,会稳定很多。我在对接遇 JavaScript Debugger 时遇到过几次vscode一升级,前后端就对不上了(人家是追着适配chrome, 我在后面追着适配它...
C代码中使用了lua的函数,涉及到栈、表,想debug相关内容,请问是否支持
#150 issue修复 ## 问题描述 当`luaFileExtension` 中不包含文件后缀的分隔符如`lua`时,会导致函数处理后缀时将`.`转换为`/`,将文件`test.lua`变成`test/lua`,进而解析出来的文件名称变成了`lua.lua`。  ## 解决方案 判断经过后缀处理之后的字符串是否以`/`结尾,如果是换成`.`结尾。
Node.js v18.15.0 TypeError: fetch failed [Info - 11:35:30 AM] Connection to server got closed. Server will restart. (node:42048) [DEP0128] DeprecationWarning: Invalid 'main' field in 'c:\Users\admin\.vscode\extensions\stuartwang.luapanda-3.0.2\node_modules\antlr4\package.json' of 'src/antlr4/index.js'. Please either fix...
使用testBreakpoint,能显示匹配串,但是文件名包含[ ]这样的正则表达式,没有转义: 消息如下: " - BreakPoint Test: User set lua extension: . Auto get lua extension: .lua User set truncatedOPath: test1/0 GetInfo: @E:/test1.0/spec/[xxxx]test.lua Normalized: /spec/[xxxx]test.lua Formated: [xxxx]test.lua Breakpoint: e:/test1.0/spec/[xxxx]test.lua 说明:自动路径(autoPathMode)模式已开启。同名文件中的断点识别(distinguishSameNameFile)...
PC环境下使用VSCode作为Client。 手机(安卓IOS都试过)开启Server,listeningTimeoutSec = 0.5。 手机log里应该是正常开启端口的监听了。  VSCode开始调试后,会尝试连接,然后失败断开连接。  在PC下Ping手机连的IP(Wifi)是Ping的通的,所以目前不是很能定位到是什么问题。
之前有接到反馈使用lua5.4时无法建立连接,初步估计是luasocket的问题,查了下luasocket在5.3以后会出现http连接的问题 https://github.com/lunarmodules/luasocket/issues/331 更新luascoekt可以解决此问题,大家可以试下