- 18 10月, 2013 11 次提交
-
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
Both Indic and SEA seem to do it just fine, but SEA is much simpler.
-
由 Behdad Esfahbod 提交于
For scripts without an old/new spec distinction, use zero-context=false. This changes behavior in Sinhala / Khmer, but doesn't seem to regress. This will be useful and used in Javanese.
-
- 17 10月, 2013 14 次提交
-
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
Previously we planted this into the mode used for Khmer. There's not really much in common between the two, so separate again.
-
由 Behdad Esfahbod 提交于
Similar to 190c8f2b but for Sinhala.
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
It's cheap.
-
由 Behdad Esfahbod 提交于
Shouldn't change behavior at all, but is faster / more robust.
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
Whic means these twp are applied per-syllable now. Apparently in some Khmer fonts the clig interacts with presentation features. Test case: U+1781,U+17D2,U+1789,U+17BB,U+17C6 with Mondulkiri-R.ttf should produce one big ligature.
-
由 Behdad Esfahbod 提交于
If a glyph can be both blwf and pref, we were wrongly sorting it in the post position instead of below position.
-
由 Behdad Esfahbod 提交于
Test case: U+09AC,U+09CD,U+09A6 with Lohit-Bengali 2.5.3.
-
由 Behdad Esfahbod 提交于
Commit 6b65a76b. "end" was becoming negative. Was trigerred by Lohit-Kannada 2.5.3 and the sequence: U+0CB0,U+200D,U+0CBE,U+0CB7,U+0CCD,U+0C9F,U+0CCD,U+0CB0,U+0C97,U+0CB3 Two glyphs were being duplicated.
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
First, we were abusing OT_VD instead of OT_A. Fix that but moving OT_A in the grammar where it belongs (which is different from what the spec says). Also, only allow medial consonants after all other consonants. This doesn't affect any current character. Finally, fix Halant attachment in presence of medial consonants. Again, this currently doesn't affect any sequence. I lied. There's Gurmukhi U+0A75 which is Consonant_Medial. Uniscribe allows one of those in each of these positions: before matras, after matras and before syllable modifiers, and after syllable modifiers! We currently just allow unlimited numbers of it, before matras.
-
- 16 10月, 2013 12 次提交
-
-
由 Behdad Esfahbod 提交于
Unicode 6.2.0 Section 16.2 / Figure 16.3 says: "For backward compatibility, between Arabic characters a ZWJ acts just like the sequence <ZWJ, ZWNJ, ZWJ>, preventing a ligature from forming instead of requesting the use of a ligature that would not normally be used. As a result, there is no plain text mechanism for requesting the use of a ligature in Arabic text." As such, we flip internal zwj to zwnj flags for GSUB matching, which means it will block ligation in all features, unless the font explicitly matches U+200D glyph. This doesn't affect joining behavior.
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
The merge_clusters there was totally broken.
-
由 Behdad Esfahbod 提交于
Apparently Uniscribe Tamil shaper doesn't ship chubby clusters for Tamil. Adjust to that.
-
由 Behdad Esfahbod 提交于
Bug 70509 - Candrabindu+Visarga doesn't work in Devanagari https://bugs.freedesktop.org/show_bug.cgi?id=70509 We categorize both bindus and visarga as syllable-modifiers. OT spec doesn't actually say what characters go in the syllable modifier category, and allows one. We just allow up to two now. Test case: U+0930,U+0941,U+0901,U+0903 Uniscribe currently doesn't support that and produces a dotted circle.
-
由 Behdad Esfahbod 提交于
*Shouldn't* break anything.
-
由 Behdad Esfahbod 提交于
Rachana-0.6 implements dot-reph by ligation, so we shouldn't move it. Uniscribe doesn't either. Test case: U+0D4E,U+0D1A,U+0D4D,U+0D1A,U+0D4D
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
Seems to better match Uniscribe. Note: NotoSansTelugu-Regular has kern feature, so this fixes most of the positioning failures there, except for the kern pairs blocked by a (non-)joiner, in which case we (correctly) kern, but Uniscribe doesn't.
-
由 Behdad Esfahbod 提交于
More like Uniscribe... We still allow user-defined features to work across syllables, but not pres,blws,abs,psts,etc. This "regressed" Sinhala numbers by 11. These are cases were there's Consonant followed by Ra,Halant,ZWJ at the of text. The Ra,Halant,ZWJ ends up forming reph, which is wrong... But before we were also ligating that reph with the previous consonant. That's even more wrong. That's also what Uniscribe does. Current numbers: BENGALI: 353732 out of 354188 tests passed. 456 failed (0.128745%) 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: 951030 out of 951913 tests passed. 883 failed (0.0927606%) KHMER: 299070 out of 299124 tests passed. 54 failed (0.0180527%) MALAYALAM: 1048140 out of 1048334 tests passed. 194 failed (0.0185056%) ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%) SINHALA: 271655 out of 271847 tests passed. 192 failed (0.070628%) TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%) TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
-
- 15 10月, 2013 3 次提交
-
-
由 Behdad Esfahbod 提交于
It can come either at the end(ish!) of the syllable, or independently. When independent, it accepts a few bits and pieces.
-
由 Behdad Esfahbod 提交于
-
由 Behdad Esfahbod 提交于
...while some don't! Improved Bengali, Devanagari, Gurmukhi, Malayalam. Updated numbers: BENGALI: 353732 out of 354188 tests passed. 456 failed (0.128745%) 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: 951030 out of 951913 tests passed. 883 failed (0.0927606%) KHMER: 299070 out of 299124 tests passed. 54 failed (0.0180527%) MALAYALAM: 1048134 out of 1048334 tests passed. 200 failed (0.0190779%) ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%) SINHALA: 271666 out of 271847 tests passed. 181 failed (0.0665816%) TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%) TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
-