#parser #incremental #earthfile

tree-sitter-earthfile

earthfile grammar for the tree-sitter parsing library

10 unstable releases (3 breaking)

new 0.4.0 May 16, 2024
0.3.0 Apr 25, 2024
0.2.4 Apr 16, 2024
0.1.2 Mar 25, 2024

#115 in Text editors

Download history 321/week @ 2024-03-20 159/week @ 2024-03-27 104/week @ 2024-04-03 609/week @ 2024-04-10 233/week @ 2024-04-17 1135/week @ 2024-04-24 1315/week @ 2024-05-01 323/week @ 2024-05-08

3,382 downloads per month
Used in earthlyls

MIT license

2.5MB
99K SLoC

C 98K SLoC // 0.0% comments JavaScript 724 SLoC Scheme 69 SLoC Rust 34 SLoC // 0.1% comments

tree-sitter-earthfile

tree-sitter grammar for Earthfile.

Screenshot of yage Earthfile in neovim

License

tree-sitter-earthfile is distributed under the terms of the MIT license.

See LICENSE for details.


lib.rs:

This crate provides Earthfile language support for the tree-sitter parsing library.

Typically, you will use the language function to add this language to a tree-sitter Parser, and then use the parser to parse some code:

let code = r#"
"#;
let mut parser = tree_sitter::Parser::new();
parser.set_language(&tree_sitter_earthfile::language()).expect("Error loading Earthfile grammar");
let tree = parser.parse(code, None).unwrap();
assert!(!tree.root_node().has_error());

Dependencies

~2.7–4MB
~71K SLoC