9 个不稳定版本

0.6.2 2022 年 8 月 2 日
0.6.1 2022 年 4 月 7 日
0.6.0 2021 年 12 月 22 日
0.5.0 2021 年 4 月 14 日
0.1.0 2019 年 6 月 30 日

#610 in 命令行界面

Download history • Rust 包仓库 10852/week @ 2024-03-14 • Rust 包仓库 11947/week @ 2024-03-21 • Rust 包仓库 9306/week @ 2024-03-28 • Rust 包仓库 9672/week @ 2024-04-04 • Rust 包仓库 9547/week @ 2024-04-11 • Rust 包仓库 10392/week @ 2024-04-18 • Rust 包仓库 9295/week @ 2024-04-25 • Rust 包仓库 8744/week @ 2024-05-02 • Rust 包仓库 8832/week @ 2024-05-09 • Rust 包仓库 9619/week @ 2024-05-16 • Rust 包仓库 7745/week @ 2024-05-23 • Rust 包仓库 10397/week @ 2024-05-30 • Rust 包仓库 9637/week @ 2024-06-06 • Rust 包仓库 11033/week @ 2024-06-13 • Rust 包仓库 9986/week @ 2024-06-20 • Rust 包仓库 6549/week @ 2024-06-27 • Rust 包仓库

39,275 每月下载量
用于 31 个 Crates(通过 termwiz

MIT 许可证

53KB
1K SLoC

vtparse

这是一个转义和控制序列解析器的实现。它基于 DEC ANSI 解析器

它已略微修改以支持 UTF-8 序列。

vtparse 是最低级别的解析器;它对序列的基本类型进行分类,但不给它们赋予任何语义意义。

如果您正在寻找语义解析,您可能想查看 termwiz Crates 中的 termwiz::escape::parser::Parser

vte Crates 的比较

vtparse 支持动态大小的 OSC 缓冲区,这使得它适合处理大型的转义序列,如 iTerm2 图像协议中使用的转义序列。


lib.rs:

DEC ANSI 解析器描述的状态机的实现,修改以支持 UTF-8。

这足以广泛分类在终端模拟器中常用的 ANSI/ECMA-48 转义序列。它不对这些转义序列赋予语义意义;例如,如果您想解析使文本加粗的 SGR 序列,您需要知道在您的 VTActor 实现中哪些代码对应于加粗。

如果您不想自己研究所有可能的转义序列,您可能想使用 termwiz Crates 中的 termwiz::escape::parser::Parser

依赖项

~14KB