#proto #parser #incremental

protols-tree-sitter-proto

tree-sitter 解析库的 proto 语法

2 个不稳定版本

0.2.0 2024年7月20日
0.1.0 2024年6月22日

#110文本编辑器

Download history 181/week @ 2024-06-22 8/week @ 2024-06-29 4/week @ 2024-07-13 1094/week @ 2024-07-20 2406/week @ 2024-07-27 2241/week @ 2024-08-03 1516/week @ 2024-08-10

7,258 每月下载量
用于 protols

MIT 许可证

240KB
9K SLoC

C 8K SLoC JavaScript 400 SLoC // 0.1% comments Scheme 46 SLoC Rust 33 SLoC // 0.4% comments

tree-sitter-proto

tree-sitter 语法用于协议缓冲文件(仅限 proto3)。

状态

语法应该是完整的。我仍在处理高亮查询。我已经对一些非常大且复杂的 proto 文件进行了语法测试,并且它通过了。一旦高亮稳定,我将发布 1.0 版本。

分叉修改


lib.rs:

此包为 tree-sitter 解析库提供 proto 语言支持。

通常,您会使用 language 函数将此语言添加到 tree-sitter Parser,然后使用解析器解析一些代码

let code = "";
let mut parser = tree_sitter::Parser::new();
parser.set_language(&protols_tree_sitter_proto::language()).expect("Error loading proto grammar");
let tree = parser.parse(code, None).unwrap();

依赖

~2.7–4MB
~71K SLoC