3 个不稳定版本
0.3.1 | 2023年11月5日 |
---|---|
0.3.0 | 2023年2月9日 |
0.2.2 | 2022年12月8日 |
0.1.0 |
|
在 命令行界面 中排名第 247
每月下载量 36 次
11KB
128 行
menu_rs
这是一个 Rust 库,允许创建简单且可交互的命令行菜单。
使用非常简单,您只需创建一个菜单,添加您想要的功能选项和对应的动作,然后就可以使用了!您可以使用箭头键移动到选项,按 ENTER 选择选项,按 ESC 退出菜单。
示例
use menu_rs::{Menu, MenuOption};
fn main() {
fn action_1() {
println!("Option 1 called!");
}
fn action_2() {}
fn action_3() {}
fn action_4() {}
let menu = Menu::new(vec![
MenuOption::new("Option 1", action_1).hint("Hint for option 1"),
MenuOption::new("Option 2", action_2),
MenuOption::new("Option 3", action_3),
MenuOption::new("Option 4", action_4),
]);
menu.show();
}
lib.rs
:
menu_rs 是一个 Rust 库,允许创建简单且可交互的命令行菜单。
使用非常简单,您只需创建一个菜单,添加您想要的功能选项和对应的动作,然后就可以使用了!您可以使用箭头键移动到选项,按 ENTER 选择选项,按 ESC 退出菜单。
示例
use menu_rs::{Menu, MenuOption};
let my_variable: u32 = 157;
fn action_1() {
println!("action 1")
}
fn action_2(val: u32) {
println!("action 2 with number {}", val)
}
fn action_3(msg: &str, val: f32) {
println!("action 3 with string {} and float {}", msg, val)
}
fn action_4() {
println!("action 4")
}
let menu = Menu::new(vec![
MenuOption::new("Option 1", action_1).hint("Hint for option 1"),
MenuOption::new("Option 2", || action_2(42)),
MenuOption::new("Option 3", || action_3("example", 3.14)),
MenuOption::new("Option 4", action_4),
MenuOption::new("Option 5", move || action_2(my_variable)),
]);
menu.show();
依赖关系
~0.4–8.5MB
~47K SLoC