2020-11-30 ruki
LTUI是一个基于lua的跨平台字符终端UI界面库。 此框架源于xmake中图形化菜单配置的需求,类似linux kernel的menuconf去配置编译参数,因此基于curses和lua实现了一整套跨平台的字符终端ui库。 而样式风格基本上完全参照的kconfig-frontends,当然用户也可以自己定制不同的ui风格。 另外,LTUI是完全跨平台的,windows上的terminal终端也是完全支持的,在windows上ltui会采用pdcurses来进行窗口绘制。 Github 更新内容 新版本中,我们改进了对鼠标的支持,实现对所有控件的鼠标事件点击响应,这里我们非常感谢 @laelnasan 贡献。 另外我们新 继续阅读 »
2000-02-22 ruki
content {:toc} 注:此处为镜像文档,最新在线文档请看:http://xmake.io/#/zh/manual 接口规范 命名规范 接口的命名,是有按照预定义的一些规范来命名的,这样更加方便理解和易于使用,目前命名按照如下一些规则: | 接口规则 | 描述 | | --------------------- | ------------------------------------------------------------ | | is_前缀的接口 | 表示 继续阅读 »
2000-02-22 ruki
content {:toc} Note: This documents is only a mirror, if you want to see newest documents please goto: http://xmake.io/#/manual Specification Naming conventions The interface is named according to some of the predefined specifications, which is more convenient to understand and easy to use. It's according to the fo 继续阅读 »
2016-02-04 ruki
默认编译出来的tbox库,支持的功能比较全,带有所有模块,并且支持ssl(依赖polarssl/openssl)、gzip(依赖zlib)、database(依赖sqlite3/mysql)。 因此生成的库文件偏大,而且会依赖三个第三方库,如果你用不到上述三个模块,完全可以自己配置编译所需要的模块,减小生成库的大小。 新版采用xmake进行构建,裁剪模块已经是相当方便了,默认情况下回去自动检测依赖的第三方库进行编译。 如果要禁用某个第三方库或者模块,只要执行xmake f --xxxx=false就行了,所有第三方库依赖都是可选,完全可以禁用。。 例如,禁用所有第三方库支持: bash xmake f --pola 继续阅读 »
2020-11-30 ruki
LTUI is a lua-based cross-platform character terminal UI interface library. This framework is derived from the requirement of graphical menu configuration in xmake, similar to the menuconf of linux kernel to configure compilation parameters, so based on curses and lua, a complete set of cross- The character terminal u 继续阅读 »
2017-01-12 ruki
之前在给xmake做构建的效率优化的时候,需要对lua脚本的api调用性能进行分析,分析出最耗时一些lua调用api, 找出性能瓶颈,来针对性地进行优化,那么问题来了,如果对lua脚本像c程序那样进行profile呢? 我们现在看下最后实现完的最终效果: 4.681, 98.84%, 1, anonymous : actions/build/main.lua: 36 3.314, 69.98%, 1, anonymous : actions/build/main.lua: 66 3.314, 69.98%, 继续阅读 »
2016-07-22 ruki
xmake provides a convenient and flexible cross-compiling support, in most cases, we need not to configure complex toolchains prefix, for example: arm-linux- As long as this toolchains meet the following directory structure: /home/toolchains_sdkdir - bin - arm-linux-gcc - arm-linux-ld - ... 继续阅读 »
2016-06-09 ruki
我们继续以之前讲解的hello插件为基础,现在为其增加参数配置选项,并且指定一个独立的脚本文件中进行开发,这样我们就可以写一些更复杂的插件 ```lua -- 定义一个名叫hello的插件任务 task("hello") -- 设置类型为插件 set_category("plugin") -- 插件运行的入口,这里指定main,说明从当前插件目录的main.lua脚本中加载插件入口 on_run("main") -- 设置插件的命令行选项,这里没有任何参数选项,仅仅显示插件描述 set_menu({ -- usage 继续阅读 »
2016-12-14 ruki
lua原生并没有提供try-catch的语法来捕获异常处理,但是提供了pcall/xpcall等接口,可在保护模式下执行lua函数。 因此,可以通过封装这两个接口,来实现try-catch块的捕获机制。 我们可以先来看下,封装后的try-catch使用方式: ```lua try { -- try 代码块 function () error("error message") end, -- catch 代码块 catch { -- 发生异常后,被执行 function (errors) print(errors) end } } ``` 上面 继续阅读 »
2016-07-26 ruki
Introduction This is a very simple and lightweight x86 virtual machine which can load and run the assembly code from ida pro directly. Features Supports cross-platform and it's able to run the x86 assembly code on linux, windows, maxosx, android and ios ... Supports the frequently-used x86 assembly instruction (.e.g 继续阅读 »