primiti_ve/cli
v0.1.0 ·
a small, runtime agnostic cli builder
cli
a small, runtime agnostic cli builder
example usage
lune
local process = require("@lune/process")
local cli = require(path.to.package)
local command = cli.builders.command.new("test")
local flag1 = cli.builders.flag.new("--flag1", nil, "flag1")
local flag2 = cli.builders.flag.new("--flag2", { "-f2" }, "flag2")
local flag3 = cli.builders.flag.new("--output", nil, "output", true)
command:add_flag(flag1)
command:add_flag(flag2)
command:add_flag(flag3)
-- or:
-- command:add_flags({ flag1, flag2 })
local args = process.args
local parsed = command:parse(args)
print(parsed)
roblox/luau
local cli = require(path.to.package)
local command = cli.builders.command.new("test")
local flag1 = cli.builders.flag.new("--flag1", nil, "flag1")
local flag2 = cli.builders.flag.new("--flag2", { "-f2" }, "flag2")
local flag3 = cli.builders.flag.new("--output", nil, "output", true)
command:add_flag(flag1)
command:add_flag(flag2)
command:add_flag(flag3)
-- or:
-- command:add_flags({ flag1, flag2 })
local args = { "--flag1", "--output", "test" } -- supply your own args somehow
local parsed = command:parse(args)
print(parsed)