Skip to content

fix: non_word_boundary uses the Word property like Ruby's \B - #20

Merged
ronaldtse merged 2 commits into
mainfrom
fix/non-word-boundary-word-property
Oct 1, 2026
Merged

ronaldtse merged 2 commits into
mainfrom
fix/non-word-boundary-word-property

Conversation

@ronaldtse

Copy link
Copy Markdown
Contributor

The complement of the Word-property boundary, not raw Python \B (which is built on a mark-less \w). At a damma|alif junction Ruby's \B holds — both are Word characters — so odni-ara's article contraction (non_word_boundary + maybe(damma) + ال → " al ") fires: نُورُالدِين is Nur al Din, not Nurualdin.

Direct corpus sweep through the engine: 8,227 examples, 0 failures. The only map not loading is var-ara-Arab-Arab-rababa, which needs the rababa ML model and is excluded from non-Ruby compilers by design. Suite 52 passed / 1 xpassed.

The complement of the Word-property boundary, not raw Python \B
(which is built on a mark-less \w). At a damma|alif junction Ruby's
\B holds — both are Word characters — so odni-ara's article
contraction (non_word_boundary + maybe(damma) + ال -> " al ")
fires: نُورُالدِين is Nur al Din, not Nurualdin.

Direct corpus sweep: 8,227 examples, 0 failures. The only map not
loading is var-ara-Arab-Arab-rababa, which needs the rababa ML model
and is excluded from non-Ruby compilers by design.
@ronaldtse
ronaldtse merged commit 10d0a61 into main Oct 1, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant