< and > are delimiters in Rust and C++

pull/297/head
Wilfred Hughes 2022-03-08 20:42:57 +07:00
parent 88ae00bd88
commit 17ff2bc07e
3 changed files with 14 additions and 4 deletions

@ -2,6 +2,10 @@
Difftastic now requires Rust 1.56 to build.
### Parsing
Fixed handling of `<` `>` delimiters in C++ and Rust.
### Diffing
Improved diff results when choosing between syntax nodes at different

@ -74,10 +74,10 @@ sample_files/simple_before.txt sample_files/simple_after.txt
4b653ebe89321835c35722dd065cf6a2 -
sample_files/slider_before.rs sample_files/slider_after.rs
78de439db7fba270a0d515ee9b786d25 -
9b21c5790773eaba1a83e92fe2b9b5a8 -
sample_files/slow_before.rs sample_files/slow_after.rs
367ef5db3827a8945b16cad2a8cfad47 -
07c6dda6ca91de93a0553f90060697d0 -
sample_files/small_before.js sample_files/small_after.js
ee97a525a74be6dd18e959395d02265b -

@ -122,7 +122,7 @@ pub fn from_language(language: guess::Language) -> TreeSitterConfig {
atom_nodes: (vec!["string_literal", "char_literal"])
.into_iter()
.collect(),
delimiter_tokens: (vec![("(", ")"), ("{", "}"), ("[", "]")]),
delimiter_tokens: (vec![("(", ")"), ("{", "}"), ("[", "]"), ("<", ">")]),
highlight_query: ts::Query::new(
language,
concat!(
@ -379,7 +379,13 @@ pub fn from_language(language: guess::Language) -> TreeSitterConfig {
atom_nodes: (vec!["char_literal", "string_literal"])
.into_iter()
.collect(),
delimiter_tokens: (vec![("{", "}"), ("(", ")"), ("[", "]"), ("|", "|")]),
delimiter_tokens: (vec![
("{", "}"),
("(", ")"),
("[", "]"),
("|", "|"),
("<", ">"),
]),
highlight_query: ts::Query::new(
language,
include_str!("../vendor/highlights/rust.scm"),