Commit 3f0b754
A word-final apostrophe is not an unbalanced delimiter
The close sweep added in d993db0 flagged "Mari' Aube'". It should not:
an ambiguity means the part could REASONABLY read two ways where it
sits, and a "'" after a word character cannot -- it is an apostrophe.
"'" is the only delimiter character that occurs inside and at the end
of real name parts, and the least likely of them to mark a nickname.
The same position with a quote IS ambiguous, because quotes do not
appear inside names, so the carve-out is deliberately this one
character:
"Mari' Aube'" -> 0 ambiguities
'Mari" Aube"' -> 2 ambiguities
#273 excluded the curly apostrophe from the delimiter set outright for
this reason. The straight one has to stay a delimiter (v1's
quoted_word), so it gets the narrower treatment here.
The carve-out is about what PRECEDES the character, so an apostrophe
opening a quote is untouched: "John 'Jack Smith" still reports an
unmatched open. Also allows a preceding period, for initials
("O'B. Smith'").
Corpus back to 0 of 486 reporting, where the naive close sweep had 1.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent d993db0 commit 3f0b754
2 files changed
Lines changed: 42 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
64 | 82 | | |
65 | 83 | | |
66 | 84 | | |
| |||
191 | 209 | | |
192 | 210 | | |
193 | 211 | | |
| 212 | + | |
194 | 213 | | |
195 | 214 | | |
196 | 215 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
199 | 199 | | |
200 | 200 | | |
201 | 201 | | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
202 | 225 | | |
203 | 226 | | |
204 | 227 | | |
| |||
0 commit comments