[indic] Allow ZWJ/ZWNJ before SM

In Oriya, a ZWJ/ZWNJ might be added before candrabindu to encourage
or stop ligation of the candrabindu.  This is clearly specified in
the Unicode section on Oriya.  Allow it there.  Note that Uniscribe
doesn't allow this.

Micro tests added using Noto Sans Oriya draft.

No changes in numbers.  Currently at:

BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%)
DEVANAGARI: 707307 out of 707394 tests passed. 87 failed (0.0122987%)
GUJARATI: 366349 out of 366457 tests passed. 108 failed (0.0294714%)
GURMUKHI: 60732 out of 60747 tests passed. 15 failed (0.0246926%)
KANNADA: 951190 out of 951913 tests passed. 723 failed (0.0759523%)
KHMER: 299070 out of 299124 tests passed. 54 failed (0.0180527%)
MALAYALAM: 1048147 out of 1048334 tests passed. 187 failed (0.0178378%)
ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
SINHALA: 271662 out of 271847 tests passed. 185 failed (0.068053%)
TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%)
TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
This commit is contained in:
Behdad Esfahbod 2014-12-10 12:05:24 -08:00
parent c0e95abc5f
commit e6f80fa104
6 changed files with 6 additions and 1 deletions

View File

@ -69,7 +69,7 @@ cn = c.ZWJ?.n?;
forced_rakar = ZWJ H ZWJ Ra; forced_rakar = ZWJ H ZWJ Ra;
symbol = Symbol.N?; symbol = Symbol.N?;
matra_group = z{0,3}.M.N?.(H | forced_rakar)?; matra_group = z{0,3}.M.N?.(H | forced_rakar)?;
syllable_tail = (SM.SM?.ZWNJ?)? A{0,3}? VD{0,2}; syllable_tail = (z?.SM.SM?.ZWNJ?)? A{0,3}? VD{0,2};
place_holder = PLACEHOLDER | DOTTEDCIRCLE; place_holder = PLACEHOLDER | DOTTEDCIRCLE;
halant_group = (z?.h.(ZWJ.N?)?); halant_group = (z?.h.(ZWJ.N?)?);
final_halant_group = halant_group | h.ZWNJ; final_halant_group = halant_group | h.ZWNJ;

View File

@ -40,6 +40,7 @@ TESTS = \
tests/arabic-feature-order.tests \ tests/arabic-feature-order.tests \
tests/context-matching.tests \ tests/context-matching.tests \
tests/hangul-jamo.tests \ tests/hangul-jamo.tests \
tests/indic-joiner-candrabindu.tests \
tests/indic-old-spec.tests \ tests/indic-old-spec.tests \
tests/indic-pref-blocking.tests \ tests/indic-pref-blocking.tests \
tests/mongolian-variation-selector.tests \ tests/mongolian-variation-selector.tests \

View File

@ -2,6 +2,7 @@
270b89df543a7e48e206a2d830c0e10e5265c630.ttf 270b89df543a7e48e206a2d830c0e10e5265c630.ttf
37033cc5cf37bb223d7355153016b6ccece93b28.ttf 37033cc5cf37bb223d7355153016b6ccece93b28.ttf
4cce528e99f600ed9c25a2b69e32eb94a03b4ae8.ttf 4cce528e99f600ed9c25a2b69e32eb94a03b4ae8.ttf
5028afb650b1bb718ed2131e872fbcce57828fff.ttf
57a9d9f83020155cbb1d2be1f43d82388cbecc88.ttf 57a9d9f83020155cbb1d2be1f43d82388cbecc88.ttf
757ebd573617a24aa9dfbf0b885c54875c6fe06b.ttf 757ebd573617a24aa9dfbf0b885c54875c6fe06b.ttf
7e14e7883ed152baa158b80e207b66114c823a8b.ttf 7e14e7883ed152baa158b80e207b66114c823a8b.ttf

View File

@ -2,6 +2,7 @@ arabic-fallback-shaping.tests
arabic-feature-order.tests arabic-feature-order.tests
context-matching.tests context-matching.tests
hangul-jamo.tests hangul-jamo.tests
indic-joiner-candrabindu.tests
indic-old-spec.tests indic-old-spec.tests
indic-pref-blocking.tests indic-pref-blocking.tests
mongolian-variation-selector.tests mongolian-variation-selector.tests

View File

@ -0,0 +1,2 @@
fonts/sha1sum/5028afb650b1bb718ed2131e872fbcce57828fff.ttf:U+0B13,U+200D,U+0B01:[omorya=0+1450]
fonts/sha1sum/5028afb650b1bb718ed2131e872fbcce57828fff.ttf:U+0B13,U+200C,U+0B01:[oorya=0+1309|space=1+0|candrabinduorya=1+0]