1 unstable release
0.1.0 | Oct 13, 2024 |
---|
#176 in Text editors
7,970 downloads per month
105KB
3.5K
SLoC
tree-sitter-diff
A tree-sitter grammar for diff
s
Highlighting a .diff
file:
![](https://img.gs/czjpqfbdkz/500,2x/https://raw.githubusercontent.com/tree-sitter/tree-sitter-diff/HEAD/assets/diff.png)
Injecting this grammar into tree-sitter-git-commit
in a verbose commit (git commit --verbose
):
![](https://img.gs/czjpqfbdkz/500,2x/https://raw.githubusercontent.com/tree-sitter/tree-sitter-diff/HEAD/assets/helix-commit-with-diff.png)
lib.rs
:
This crate provides Diff language support for the tree-sitter parsing library.
Typically, you will use the [LANGUAGE][] constant to add this language to a tree-sitter Parser, and then use the parser to parse some code:
let code = r#"
diff --git a/tree-sitter-gitdiff.wasm b/tree-sitter-gitdiff.wasm
index 0e9e828..3e32290 100755
Binary files a/tree-sitter-gitdiff.wasm and b/tree-sitter-gitdiff.wasm differ
"#;
let mut parser = tree_sitter::Parser::new();
let language = tree_sitter_diff::LANGUAGE;
parser
.set_language(&language.into())
.expect("Error loading Diff parser");
let tree = parser.parse(code, None).unwrap();
assert!(!tree.root_node().has_error());
Dependencies
~4–310KB