From 90bd50866590f390061a849b870c9b47a6741fd8 Mon Sep 17 00:00:00 2001 From: niksedk Date: Sun, 19 Jul 2026 14:48:19 +0200 Subject: [PATCH] OCR fix lists: adopt the safest community rules from #12644 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fraternl shared user OCR fix lists for English, French, Dutch and Spanish refined over years (#12644). Adopted only the rules that fix unambiguous OCR errors and cannot fire on legitimate text - every rule was behaviorally verified in .NET with fix cases and must-not-change cases, and deduped against the shipped lists. eng: iihrer->ührer (ü misread as ii), Sefior->Señor family (ñ as fi), compafiero/acompafiar. fra: ILy a, d'ou->d'où, 5'il->S'il, spaced apostrophes (s 'il, t' aime), I'a->l'a, 5O5->SOS (letter O only - the contributed rule also matched the number 505 and was narrowed), plus dictionary-gated mère/père/très/Là diacritic fixes in the IfSpelledCorrectly section. spa: iihrer, niñal->niña! and túl->tú! (! misread as l). nld: doubled-apostrophe ''n/''t collapse, wanner->wanneer. Deliberately NOT adopted: style rules (imperative "Stop." -> "Stop!", 'n->een rewrites, music-symbol removal, ellipsis/a.m. normalization), rules that corrupt legitimate text ("he cause"->because matches "did he cause", solucionario is a real word, Neel is a name, "gebeurd hier" can be valid word order, EI is real Spanish usage, 505 room numbers, accepted spellings like facade/voila/deja vu), and rules with bugs in the contributed files (doubled ${3}, $[ in replacement). Co-Authored-By: Claude Fable 5 --- Dictionaries/eng_OCRFixReplaceList.xml | 6 ++++++ Dictionaries/fra_OCRFixReplaceList.xml | 23 ++++++++++++++++++++++- Dictionaries/nld_OCRFixReplaceList.xml | 4 ++++ Dictionaries/spa_OCRFixReplaceList.xml | 5 +++++ 4 files changed, 37 insertions(+), 1 deletion(-) diff --git a/Dictionaries/eng_OCRFixReplaceList.xml b/Dictionaries/eng_OCRFixReplaceList.xml index 1636eeed627..da82ad94aa4 100644 --- a/Dictionaries/eng_OCRFixReplaceList.xml +++ b/Dictionaries/eng_OCRFixReplaceList.xml @@ -3395,6 +3395,12 @@ + + + + + + diff --git a/Dictionaries/fra_OCRFixReplaceList.xml b/Dictionaries/fra_OCRFixReplaceList.xml index 9e73675d20e..17bcbf0bd6a 100644 --- a/Dictionaries/fra_OCRFixReplaceList.xml +++ b/Dictionaries/fra_OCRFixReplaceList.xml @@ -267,7 +267,23 @@ - + + + + + + + + + + + + + + + + + @@ -372,5 +388,10 @@ + + + + + \ No newline at end of file diff --git a/Dictionaries/nld_OCRFixReplaceList.xml b/Dictionaries/nld_OCRFixReplaceList.xml index 5f3f1cbc626..3c5668754e1 100644 --- a/Dictionaries/nld_OCRFixReplaceList.xml +++ b/Dictionaries/nld_OCRFixReplaceList.xml @@ -108,6 +108,8 @@ + + @@ -137,6 +139,8 @@ + + diff --git a/Dictionaries/spa_OCRFixReplaceList.xml b/Dictionaries/spa_OCRFixReplaceList.xml index 5078478508f..1d10b4d9ac3 100644 --- a/Dictionaries/spa_OCRFixReplaceList.xml +++ b/Dictionaries/spa_OCRFixReplaceList.xml @@ -366,6 +366,9 @@ + + + @@ -948,5 +951,7 @@ + + \ No newline at end of file