2个版本

0.0.2 2023年3月10日
0.0.1 2023年2月27日

#eww中排名6

MIT授权

170KB
6K SLoC

C 5.5K SLoC JavaScript 224 SLoC // 0.1% comments Scheme 190 SLoC // 0.2% comments Rust 34 SLoC

tree-sitter-yuck

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

[dependencies]
tree-sitter = "~0.20.3"
tree-sitter-yuck = "0.0.2"

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

let code = r#"
  (include "eww.yuck")

  (defwidget bar []
    (centerbox :orientation "h"
    (workspaces)
    (music)
    (sidestuff)))
"#;
let mut parser = Parser::new();
parser.set_language(tree_sitter_yuck::language()).expect("Error loading Yuck grammar");
let parsed = parser.parse(code, None);

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

依赖项

~2.8–4MB
~72K SLoC