Change word diffing to split into words and spaces

This commit is contained in:
Armin Ronacher 2021-01-31 21:40:20 +01:00
parent e63fe172c5
commit 459fdfdf9d
3 changed files with 250 additions and 21 deletions

View file

@ -0,0 +1,222 @@
---
source: src/text/mod.rs
expression: "&changes"
---
[
Change {
tag: Equal,
old_index: Some(
0,
),
new_index: Some(
0,
),
value: "Hello",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
1,
),
new_index: Some(
1,
),
value: " ",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
2,
),
new_index: Some(
2,
),
value: "World",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
3,
),
new_index: Some(
3,
),
value: "\n",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
4,
),
new_index: Some(
4,
),
value: "some",
missing_newline: false,
},
Change {
tag: Insert,
old_index: None,
new_index: Some(
5,
),
value: " ",
missing_newline: false,
},
Change {
tag: Insert,
old_index: None,
new_index: Some(
6,
),
value: "amazing",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
5,
),
new_index: Some(
7,
),
value: " ",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
6,
),
new_index: Some(
8,
),
value: "stuff",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
7,
),
new_index: Some(
9,
),
value: " ",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
8,
),
new_index: Some(
10,
),
value: "here",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
9,
),
new_index: Some(
11,
),
value: "\n",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
10,
),
new_index: Some(
12,
),
value: "some",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
11,
),
new_index: Some(
13,
),
value: " ",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
12,
),
new_index: Some(
14,
),
value: "more",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
13,
),
new_index: Some(
15,
),
value: " ",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
14,
),
new_index: Some(
16,
),
value: "stuff",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
15,
),
new_index: Some(
17,
),
value: " ",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
16,
),
new_index: Some(
18,
),
value: "here",
missing_newline: false,
},
Change {
tag: Equal,
old_index: Some(
17,
),
new_index: Some(
19,
),
value: "\n",
missing_newline: false,
},
]