2 个不稳定版本
0.2.0 | 2023 年 8 月 4 日 |
---|---|
0.1.0 | 2023 年 7 月 8 日 |
#835 在 命令行界面
每月 23 次下载
用于 3 crates
18KB
293 行
CLIPLY
让 Rust 中的命令行界面变得简单。
关于
Cliply 是一个用于解析和处理命令行参数的流行 clap
库的替代品。它旨在对初学者更加友好。享受!
特性
- 闪电般快速。
- 易于使用,无戏剧性。
- 提供多种开箱即用的选项。
- 提供开箱即用的
-h
或--help
标志。 - 提供开箱即用的
-v
或--version
标志。
安装
要将 Cliply 用于您的 Rust 项目,请将以下行添加到项目 Cargo.toml
的 [dependencies]
部分
cliply = "0.2.0"
要将库导入到项目的代码中,请使用以下行
use cliply::App;
要了解如何使用该库的详细信息,请参阅下面的部分。
示例
以下是如何在示例应用程序中使用 Cliply 的 API 的示例。
/*
CLIPLY by "Angel Dollface".
Licensed under the MIT license.
*/
/// Importing the main
/// Cliply API struct.
use cliply::App;
/// Importing the error
/// struct to handle any
/// errors.
use cliply::CliplyError;
/// Main point of
/// entry for the
/// Rust compiler.
pub fn main() -> () {
// Instantiating the "App" struct with the required
// data.
let mut my_app: App = App::new(
&"Test App",
&"1.0.0",
&"Angel Dollface"
);
// Adding a greeting without data. Note the use of "false".
my_app.add_arg(
&"greet",
&" generic greeting for the user",
&"false"
);
// Adding a greeting with data. Note the use of "true".
my_app.add_arg(
&"cgreet",
&"custom greeting for the user",
&"true"
);
// Was the version flag used?
if my_app.version_is() == true {
println!("{}", my_app.version_info());
}
// Was the help flag used?
else if my_app.help_is() == true {
println!("{}", my_app.help_info());
}
// Was the "greet" flag used?
else if my_app.arg_was_used(&"greet") == true {
println!("Hello World!");
}
// Was the "cgreet" flag used? Note the use of the result!
else if my_app.arg_was_used(&"cgreet") == true {
let arg_data: Result<String, CliplyError> = my_app.get_arg_data(&"cgreet");
match arg_data {
Ok(x) => {
println!("Hello, {}!", x);
},
Err(e) => {
println!("{}", e.to_string());
}
}
}
// If user-supplied flags are invalid, show
// them the app's help message.
else {
println!("{}", my_app.help_info());
}
}
要阅读详细文档,您可以访问此 链接。
变更日志
版本 0.1.0
- 初始版本。
- 上传到 GitHub。
版本 0.2.0
- 更新了文档。
- 更新了
coutils
crate 的版本。
注意
- Cliply 由 Alexander Abraham(又名 "Angel Dollface")创建
- 许可协议:MIT 许可证
依赖关系
~1.5MB
~25K SLoC