命令行工具 CLIKit

BSD
Swift 查看源码»
OS X
2014-10-31
叶秀兰

CLIKit 可以帮助你用最快的方式编写一个命令行工具。

特性
    • 指定命令和子命令
    • 参数 (edit 22)
    • Boolean flags (coffee make --sugar --no-milk)
    • Options (open --title=foo --author=bar)

示例:

var manager = Manager()
manager.register("issue", "Options for issue") { argv in
    println("Say `open`, `close` or `edit`")
}
manager.register("issue open", "Opens a new issue") { argv in
    println("A new issue has been created!")
}
manager.register("issue close", "Closes an open issue") { argv in
    println("Issue has been closed.")
}
manager.register("issue edit", "Edits an issue") { argv in
    if let id = argv.shift() {
        var alert = "Editing issue #\(id). "
        if let assignee = argv.option("assignee") {
            alert += "\(assignee) will be the new assignee. "
        }
        if let milestone = argv.option("milestone") {
            alert += "The issue must be completed before \(milestone). "
        }
        println(alert)
    } else {
        println("Issue id not specified")
    }
}
manager.run()

Result:

$ ./my_cli issue open
A new issue has been created!
$ ./my_cli issue edit 22 --assignee=radex --milestone=2.0
Editing issue #22. radex will be the new assignee. The issue must be completed before 2.0. 
$ ./my_cli issue
Say `open`, `close` or `edit`




的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

暂无博客

返回顶部
顶部