0.2.0 |
|
---|---|
0.1.1 |
|
0.1.0 |
|
#125 in #escaping
26KB
670 行
term-parser
term-parser
是一个用于解析 ANSI转义码 的 Rust 包。
lib.rs
:
term-parser
是一个用于解析 ANSI转义码 的 Rust 包。解析器基于 Paul Williams 的 ANSI 兼容视频终端解析器,并修改以支持 UTF-8 输入。实现使用静态状态转换表以最小化分支。
使用方法
要读取转义码,从任何 std::io::Read
创建一个 ActionIter
并消费迭代器返回的 Action
。此包附带一个 "logger" 示例,它将打印 stdin 生成的操作描述。要尝试它,请运行以下命令
echo -n "\x1b[30mhello\x1b[0m" | cargo run --example logger
以下是 "logger" 示例的源代码,它演示了如何读取转义码
fn main() {
let stdin = std::io::stdin();
let stdin = stdin.lock();
let stdin = std::io::BufReader::new(stdin);
let action_iter = term_parser::ActionIter::new(stdin);
for action in action_iter {
println!("{:?}", action);
}
}
依赖项
~10KB