Merge pull request #984 from zed-industries/deterministic-marked-text-ranges

Order returned ranges from marked_text_ranges by start index
This commit is contained in:
Keith Simmons 2022-05-11 10:31:33 -07:00 committed by GitHub
commit 61b4a4202f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -61,12 +61,12 @@ pub fn marked_text_ranges(full_marked_text: &str) -> (String, Vec<Range<usize>>)
let (range_marked_text, empty_offsets) = marked_text(full_marked_text);
let (unmarked, range_lookup) =
marked_text_ranges_by(&range_marked_text, vec![('[', ']'), ('(', ')'), ('<', '>')]);
(
unmarked,
range_lookup
.into_values()
.flatten()
.chain(empty_offsets.into_iter().map(|offset| offset..offset))
.collect(),
)
let mut combined_ranges: Vec<_> = range_lookup
.into_values()
.flatten()
.chain(empty_offsets.into_iter().map(|offset| offset..offset))
.collect();
combined_ranges.sort_by_key(|range| range.start);
(unmarked, combined_ranges)
}