|
|
@@ -117,16 +117,13 @@ static espeakng_CTYPE codepoint_type(uint32_t c) |
|
|
|
case 0x0085: return ESPEAKNG_CTYPE_NEWLINE; // NEW LINE (NEL) |
|
|
|
} |
|
|
|
|
|
|
|
// 2. Classify codepoints by their Unicode General Category. |
|
|
|
// 2. Override property types for codepoints by their Unicode General Category. |
|
|
|
|
|
|
|
ucd_category cat = ucd_lookup_category(c); |
|
|
|
switch (cat) |
|
|
|
{ |
|
|
|
case UCD_CATEGORY_Lu: return ESPEAKNG_CTYPE_UPPERCASE; |
|
|
|
case UCD_CATEGORY_Ll: return ESPEAKNG_CTYPE_LOWERCASE; |
|
|
|
case UCD_CATEGORY_Zl: return ESPEAKNG_CTYPE_NEWLINE; |
|
|
|
case UCD_CATEGORY_Zp: return ESPEAKNG_CTYPE_PARAGRAPH; |
|
|
|
case UCD_CATEGORY_Zs: return ESPEAKNG_CTYPE_WHITESPACE; |
|
|
|
} |
|
|
|
|
|
|
|
// 3. Classify codepoints by their Unicode properties. |
|
|
@@ -156,7 +153,15 @@ static espeakng_CTYPE codepoint_type(uint32_t c) |
|
|
|
return ESPEAKNG_CTYPE_ELLIPSIS; |
|
|
|
} |
|
|
|
|
|
|
|
// 4. Classify the remaining codepoints. |
|
|
|
// 4. Classify codepoints by their Unicode General Category. |
|
|
|
|
|
|
|
switch (cat) |
|
|
|
{ |
|
|
|
case UCD_CATEGORY_Lu: return ESPEAKNG_CTYPE_UPPERCASE; |
|
|
|
case UCD_CATEGORY_Ll: return ESPEAKNG_CTYPE_LOWERCASE; |
|
|
|
} |
|
|
|
|
|
|
|
// 5. Classify the remaining codepoints. |
|
|
|
|
|
|
|
return ESPEAKNG_CTYPE_OTHER; |
|
|
|
} |