环境
- Time 2022-08-23
- Rust 1.63.0
- Tui 0.19.0
前言
说明
参考:https://github.com/fdehau/tui-rs/tree/master/examples/demo
目标
实现 tui-rs
的综合示例程序,读取命令行参数。
定义组件
use argh::FromArgs;
/// Tui 的示例程序
#[derive(Debug, FromArgs)]
struct Cli {
/// 刷新的间隔时间
#[argh(option, default = "250")]
tick_rate: u64,
/// 是否使用Unicode增强
#[argh(option, default = "true")]
enhanced_graphics: bool,
}
fn main() -> anyhow::Result<()> {
let cli: Cli = argh::from_env();
println!("{}", cli.tick_rate);
println!("{}", cli.enhanced_graphics);
Ok(())
}
运行效果
[root@jiangbo release]# ./game
250
true
[root@jiangbo release]# ./game --help
Usage: game [--tick-rate <tick-rate>] [--enhanced-graphics <enhanced-graphics>]
Tui 的示例程序
Options:
--tick-rate 刷新的间隔时间
--enhanced-graphics
是否使用Unicode增强
--help display usage information
[root@jiangbo release]# ./game --tick-rate 500
500
true
总结
实现 tui-rs
的综合示例程序,读取命令行参数。