[indic] Recategorize U+A8E0..A8F1 as OT_VD

Up to two of them come after all OT_A characters.
This commit is contained in:
Behdad Esfahbod 2014-05-22 18:50:34 -04:00
parent c519536c34
commit e848bfae7c
2 changed files with 7 additions and 5 deletions

View File

@ -69,7 +69,7 @@ cn = c.ZWJ?.n?;
forced_rakar = ZWJ H ZWJ Ra; forced_rakar = ZWJ H ZWJ Ra;
avagraha = Avag.N?; avagraha = Avag.N?;
matra_group = z{0,3}.M.N?.(H | forced_rakar)?; matra_group = z{0,3}.M.N?.(H | forced_rakar)?;
syllable_tail2 = (SM.SM?.ZWNJ?)? A{0,3}? VD?; syllable_tail2 = (SM.SM?.ZWNJ?)? A{0,3}? VD{0,2};
syllable_tail = (Coeng (cn|V))? avagraha? syllable_tail2; syllable_tail = (Coeng (cn|V))? avagraha? syllable_tail2;
place_holder = NBSP | DOTTEDCIRCLE; place_holder = NBSP | DOTTEDCIRCLE;
halant_group = (z?.h.(ZWJ.N?)?); halant_group = (z?.h.(ZWJ.N?)?);

View File

@ -198,14 +198,16 @@ set_indic_properties (hb_glyph_info_t &info)
* U+092E,U+0952,U+0951 * U+092E,U+0952,U+0951
*/ */
if (unlikely (hb_in_ranges<hb_codepoint_t> (u, 0x0951, 0x0952, if (unlikely (hb_in_ranges<hb_codepoint_t> (u, 0x0951, 0x0952,
0xA8E0, 0xA8F1) && 0x1CD0, 0x1CD2,
hb_in_ranges<hb_codepoint_t> (u, 0x1CD0, 0x1CD2, 0x1CD4, 0x1CE0) ||
0x1CD4, 0x1CE0, u == 0x1CF4))
0x1CF4, 0x1CF4)))
cat = OT_A; cat = OT_A;
/* The following act more like the Bindus. */ /* The following act more like the Bindus. */
else if (unlikely (hb_in_range<hb_codepoint_t> (u, 0x0953, 0x0954))) else if (unlikely (hb_in_range<hb_codepoint_t> (u, 0x0953, 0x0954)))
cat = OT_SM; cat = OT_SM;
/* Cantillation marks. */
else if (unlikely (hb_in_range<hb_codepoint_t> (u, 0xA8E0, 0xA8F1)))
cat = OT_VD;
if (unlikely (u == 0x17D1)) if (unlikely (u == 0x17D1))
cat = OT_X; cat = OT_X;