Mare Lua 5.3 调试器开源项目

我要开发同款
匿名用户2017年03月18日
46阅读
开发技术JavaScript
所属分类开发工具、程序调试工具
授权协议MIT

作品详情

Mare 是一个Lua5.3调试器。简单说,就是像JavaScript一样调试Lua。

简介

基本原理是根据云风博客文章如何优雅的实现一个lua调试器,使用文章里所说的C调试模块,实现一个DebugVM,内建一个客户端把数据发出去,由服务器翻译成 ChromeDebuggingProtocol,然后就可以直接用Chrome浏览器内建的 DevTools 来做交互调试了。

脑洞其实来自Facebook的 Stetho,使用DevTools来调试Android。

特性

本项目仍然处于早期开发阶段,遇到坑务必淡定

已实现的

远程调试模型,Lua模块,服务端,图形界面可以跑在不同系统上

数据对象审查功能,支持循环引用,非字符串key,metatable查看,调用栈查看

断点调试,按行号,按函数call/return,按探测点名,带黑名单

单步执行,标准三件套StepOver、StepInto、StepOut

查看中断变量数据,栈、local和upvalue

按条件中断,Watch表达式,调试上下文REPL

源码交互,项目目录树,代码高亮,日志和函数源码定位

计划中的

打包MacOS版本,因为不能在Linux服务器上交叉编译

支持Android/apk,iOS/ipa,因为不能直接访问文件系统,需要自己实现loader

VSCode、Atom插件,理论上拿JavaScript来改改就行了

中断时,展开变量时,按需获取数据,现在只是限制数据量的快照

调试模块参数可配置,某些地方还是硬编码

完善前端管理页面,会话管理页面还是原始

国际化,现在注释和文档还是用中文

各种优化,各种测试,各种文档,各种重构

兼容性

下面的环境测试过基本可用,只要编译时选择Lua5.3解析器

ejoy2d 游戏引擎框架

fcitx Linux小企鹅输入法

love2d 游戏引擎框架

nmap 网络扫描器

torch 机器学习框架

vim 文本编辑器

简介来自项目主页

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论