1 个不稳定版本

0.0.1 2023 年 2 月 28 日

#6 in #po

MIT 许可证

67KB
2K SLoC

C 2K SLoC JavaScript 106 SLoC // 0.1% comments Rust 31 SLoC Scheme 28 SLoC // 0.2% comments

tree-sitter-po

此 crate 为 tree-sitter 解析库提供 PO 语法。要使用此 crate,将其添加到您的 [dependencies] 部分中。请注意,您可能还需要依赖 tree-sitter crate 来以任何有用的方式使用解析结果。

[dependencies]
tree-sitter = "~0.20.3"
tree-sitter-po = "0.0.1"

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

let code = r#"
  # test
  #. hi
  #: modules/user/views_handler_filter_user_name.inc:112
  #~ msgid "hi"
  msgid "Unable to find user: @users"
  msgid_plural "Unable to find users: @users"
"#;
let mut parser = Parser::new();
parser.set_language(tree_sitter_po::language()).expect("Error loading PO grammar");
let parsed = parser.parse(code, None);

如果您有任何问题,请通过 tree-sitter 讨论页面联系我们。

依赖项

~2.8–4MB
~72K SLoC