5 个版本
0.3.4 | 2021 年 1 月 17 日 |
---|---|
0.3.3 | 2021 年 1 月 13 日 |
0.2.0 |
|
0.1.0 |
|
#810 在 命令行界面
每月 48 次下载
26KB
570 行
交互
交互是一个为 Rust 设计的简单且轻量级的 readline 库。
特性
- 单行编辑模式
- 多行编辑模式
- 键绑定
- 历史记录
- 自动完成
用法
在您的 Cargo.toml
中添加以下内容
[dependencies]
interaction = "0.3.4"
或者,如果您已经安装了 cargo-edit,您可以运行此命令
$ cargo add interaction
示例
use interaction::InteractionBuilder;
use std::io;
fn main() {
let history_file = "./.example_history";
let mut inter = InteractionBuilder::new()
.prompt_str(";;>")
.history_limit(5)
.completion(|_input, completions| {
completions.push(b"foo".to_vec());
completions.push(b"bar".to_vec());
})
.load_history(history_file)
.unwrap()
.build();
loop {
match inter.line() {
Ok(input) => {
// write any code.
}
Err(e) if e.kind() == io::ErrorKind::Interrupted => {
inter.save_history(history_file).unwrap();
break;
}
Err(_) => {
break;
}
}
}
}
依赖项
~120KB