Orthographie-Highlighting-Fix

Dieser Hotfix behebt einen Bug, der dank des ersten externen Nutzer-Feedbacks entdeckt wurde — vielen Dank an den aufmerksamen Hinweis!

Das Problem

Seit v0.21 normalisiert die Suchmaschine historische Schreibweisen: „dass“ findet „daß“, „Teil“ findet „Theil“. Die Suche zählte und identifizierte die Treffer korrekt — aber die Hervorhebung im Textkörper funktionierte nur für exakte Zeichenfolgen. Wer z. B. „Prozess“ suchte, sah „3 Seiten“ als Ergebnis, aber auf den betroffenen Seiten wurde „Prozeß“ nicht gelb markiert.

Die Ursache

Die Such-Engine (evaluateQuery) verwendete die Orthographie-Normalisierung (normalizeOrtho), um Treffer zu finden. Die Highlighting-Funktionen (highlightTermsInCard im Reader, highlightText und extractSnippet auf der Recherche-Seite) arbeiteten jedoch mit einfachem String-Matching — ohne Normalisierung.

Die Lösung

Alle drei Highlighting-Funktionen nutzen jetzt eine neue Hilfsfunktion orthoMapOrigToNorm, die für jeden Originaltext eine Zeichenposition-Zuordnung zur normalisierten Form berechnet. Treffer im normalisierten Text werden auf die korrekten Positionen im Originaltext zurückgemappt — so wird z. B. „daß“ korrekt hervorgehoben, auch wenn der Suchbegriff „dass“ lautet.

Betroffene Dateien

Dieser Fix basiert auf dem ersten externen Nutzer-Feedback über das Feedback-Formular. Danke für den Hinweis!


← Alle Einträge