插件使用之加载自定义lua脚本

2016-07-07 ruki 更多博文 » 博客 » GitHub »

xmake plugin scripts

原文链接 https://waruqi.github.io/2016/07/07/plugin-lua.cn/
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。


xmake里面的lua脚本加载插件,可以让你方便调试和编写一些自定义的lua脚本,这个时候xmake就是一个纯lua的加载引擎。。

例如,我想写个简单的hello xmake!的lua脚本,可以自己建个 hello.lua 文件,编写如下脚本:

    function main()
        print("hello xmake!")
    end

main是入口函数,就跟平常写c类似,然后加载执行下这个lua脚本就行了:

        xmake lua /home/xxx/hello.lua
    or  xmake l /tmp/hello.lua

下面在来个稍微高级点的,我要传递参数进来,可以这么写:

    function main(argv)
        -- 打印所有参数值
        for _, value in ipairs(argv) do
            print(value)
        end

        -- 或者可以直接dump所有
        table.dump(argv)
    end

然后我们执行下,试试:

    xmake lua /tmp/hello.lua hello xmake

简单吧,当然除了lua内置的大部分模块,例如:os, string, table, ... 等等,xmake的lua加载器还提供其他更丰富的模块类库 可以通过 import 导入后使用,所有导入的模块支持跟插件开发中使用的类库是一样的,具体类库的使用,请参考:插件开发之类库使用

下面我主要介绍下,xmake lua插件提供的一些内置shell脚本,这些脚本是linux下的一些shell工具子集,用于实现跨平台执行,例如:

    xmake lua cat
    xmake lua cp
    xmake lua echo
    xmake lua mv
    xmake lua rm
    xmake lua rmdir
    xmake lua mkdir

现在提供的工具不是很多,但是以后可以慢慢扩充,扩展起来还是很方便的,只需要把对应脚本:cat.lua 放到 xmake lua插件目录的 scripts 目录下就行了。。

例如我想要跨平台运行 cat 命令,可以这么执行:

        xmake lua cat /tmp/a
    or  xmake l cat c:\\a.txt

等以后工具扩充的越来越多,相当于在各个平台下,有了一套完善的linux的shell工具,方便日常开发使用

如果你想要看下xmake当前版本支持了哪些内置的shell工具,可以执行:

        xmake lua -l
    or  xmake lua --list