[Indic] Allow multiple Consonants in Vowel/NBSP syllables

Uniscribe allows multiple Halant+Consonant after a Vowel.
Tests:
↦       * U+0905,U+094D,U+092B,U+094D,930,94d,930
This commit is contained in:
Behdad Esfahbod 2012-05-11 18:46:35 +02:00
parent 8c0aa486f3
commit 9c09928989
1 changed files with 3 additions and 3 deletions

View File

@ -62,8 +62,8 @@ syllable_tail = SM? (VD VD?)?;
consonant_syllable = (c.n? (H.z?|z.H))* c.n? A? (H.z? | matra_group*)? syllable_tail; consonant_syllable = (c.n? (H.z?|z.H))* c.n? A? (H.z? | matra_group*)? syllable_tail;
vowel_syllable = (Ra H)? V n? (z?.H.c | ZWJ.c)? matra_group* syllable_tail; vowel_syllable = (Ra H)? V n? (z?.H.c | ZWJ.c)* matra_group* syllable_tail;
standalone_cluster = (Ra H)? NBSP n? (z? H c)? matra_group* syllable_tail; standalone_cluster = (Ra H)? NBSP n? (z? H c)* matra_group* syllable_tail;
other = any; other = any;
main := |* main := |*
@ -78,7 +78,7 @@ main := |*
#define process_syllable(func) \ #define process_syllable(func) \
HB_STMT_START { \ HB_STMT_START { \
/* printf ("syllable %d..%d %s\n", last, p+1, #func); */ \ /* fprintf (stderr, "syllable %d..%d %s\n", last, p+1, #func); */ \
for (unsigned int i = last; i < p+1; i++) \ for (unsigned int i = last; i < p+1; i++) \
info[i].syllable() = syllable_serial; \ info[i].syllable() = syllable_serial; \
PASTE (initial_reordering_, func) (map, buffer, mask_array, last, p+1); \ PASTE (initial_reordering_, func) (map, buffer, mask_array, last, p+1); \