Update to Unicode 12.0.0
This commit is contained in:
parent
2f125b0fa7
commit
e723c04de1
|
@ -384,7 +384,6 @@ def map_to_use(data):
|
|||
if U == 0x11302: UIPC = Top
|
||||
if U == 0x1133C: UIPC = Bottom
|
||||
if U == 0x1171E: UIPC = Left # Correct?!
|
||||
if 0x1CF2 <= U <= 0x1CF3: UIPC = Right
|
||||
if 0x1CF8 <= U <= 0x1CF9: UIPC = Top
|
||||
# https://github.com/roozbehp/unicode-data/issues/8
|
||||
if U == 0x0A51: UIPC = Bottom
|
||||
|
|
|
@ -212,6 +212,7 @@ print (' if (processed)')
|
|||
print (' {')
|
||||
print (' if (buffer->idx < count)')
|
||||
print (' buffer->next_glyph ();')
|
||||
print (' buffer->swap_buffers ();')
|
||||
print (' }')
|
||||
print ('}')
|
||||
|
||||
|
|
|
@ -357,6 +357,14 @@ typedef enum
|
|||
/*11.0*/HB_SCRIPT_OLD_SOGDIAN = HB_TAG ('S','o','g','o'),
|
||||
/*11.0*/HB_SCRIPT_SOGDIAN = HB_TAG ('S','o','g','d'),
|
||||
|
||||
/*
|
||||
* Since REPLACEME
|
||||
*/
|
||||
/*12.0*/HB_SCRIPT_ELYMAIC = HB_TAG ('E','l','y','m'),
|
||||
/*12.0*/HB_SCRIPT_NANDINAGARI = HB_TAG ('N','a','n','d'),
|
||||
/*12.0*/HB_SCRIPT_NYIAKENG_PUACHUE_HMONG = HB_TAG ('H','m','n','p'),
|
||||
/*12.0*/HB_SCRIPT_WANCHO = HB_TAG ('W','c','h','o'),
|
||||
|
||||
/* No script set. */
|
||||
HB_SCRIPT_INVALID = HB_TAG_NONE,
|
||||
|
||||
|
|
|
@ -6,10 +6,10 @@
|
|||
*
|
||||
* on files with these headers:
|
||||
*
|
||||
* # ArabicShaping-11.0.0.txt
|
||||
* # Date: 2018-02-21, 14:50:00 GMT [KW, RP]
|
||||
* # Blocks-11.0.0.txt
|
||||
* # Date: 2017-10-16, 24:39:00 GMT [KW]
|
||||
* # ArabicShaping-12.0.0.txt
|
||||
* # Date: 2018-09-22, 23:54:00 GMT [KW, RP]
|
||||
* # Blocks-12.0.0.txt
|
||||
* # Date: 2018-07-30, 19:40:00 GMT [KW]
|
||||
* UnicodeData.txt does not have a header.
|
||||
*/
|
||||
|
||||
|
@ -152,9 +152,9 @@ static const uint8_t joining_table[] =
|
|||
|
||||
/* 1E900 */ D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,
|
||||
/* 1E920 */ D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,
|
||||
/* 1E940 */ D,D,D,D,
|
||||
/* 1E940 */ D,D,D,D,X,X,X,X,X,X,X,T,
|
||||
|
||||
}; /* Table items: 1304; occupancy: 56% */
|
||||
}; /* Table items: 1312; occupancy: 56% */
|
||||
|
||||
|
||||
static unsigned int
|
||||
|
@ -190,7 +190,7 @@ joining_type (hb_codepoint_t u)
|
|||
break;
|
||||
|
||||
case 0x1Eu:
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x1E900u, 0x1E943u)) return joining_table[u - 0x1E900u + joining_offset_0x1e900u];
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x1E900u, 0x1E94Bu)) return joining_table[u - 0x1E900u + joining_offset_0x1e900u];
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
@ -6,12 +6,12 @@
|
|||
*
|
||||
* on files with these headers:
|
||||
*
|
||||
* # IndicSyllabicCategory-11.0.0.txt
|
||||
* # Date: 2018-05-21, 18:33:00 GMT [KW, RP]
|
||||
* # IndicPositionalCategory-11.0.0.txt
|
||||
* # Date: 2018-02-05, 16:21:00 GMT [KW, RP]
|
||||
* # Blocks-11.0.0.txt
|
||||
* # Date: 2017-10-16, 24:39:00 GMT [KW]
|
||||
* # IndicSyllabicCategory-12.0.0.txt
|
||||
* # Date: 2019-01-31, 02:26:00 GMT [KW, RP]
|
||||
* # IndicPositionalCategory-12.0.0.txt
|
||||
* # Date: 2019-01-31, 02:26:00 GMT [KW, RP]
|
||||
* # Blocks-12.0.0.txt
|
||||
* # Date: 2018-07-30, 19:40:00 GMT [KW]
|
||||
*/
|
||||
|
||||
#include "hb-ot-shape-complex-indic.hh"
|
||||
|
@ -19,21 +19,21 @@
|
|||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wunused-macros"
|
||||
|
||||
#define ISC_A INDIC_SYLLABIC_CATEGORY_AVAGRAHA /* 16 chars; Avagraha */
|
||||
#define ISC_Bi INDIC_SYLLABIC_CATEGORY_BINDU /* 83 chars; Bindu */
|
||||
#define ISC_A INDIC_SYLLABIC_CATEGORY_AVAGRAHA /* 17 chars; Avagraha */
|
||||
#define ISC_Bi INDIC_SYLLABIC_CATEGORY_BINDU /* 86 chars; Bindu */
|
||||
#define ISC_BJN INDIC_SYLLABIC_CATEGORY_BRAHMI_JOINING_NUMBER /* 20 chars; Brahmi_Joining_Number */
|
||||
#define ISC_Ca INDIC_SYLLABIC_CATEGORY_CANTILLATION_MARK /* 58 chars; Cantillation_Mark */
|
||||
#define ISC_C INDIC_SYLLABIC_CATEGORY_CONSONANT /* 2110 chars; Consonant */
|
||||
#define ISC_CD INDIC_SYLLABIC_CATEGORY_CONSONANT_DEAD /* 10 chars; Consonant_Dead */
|
||||
#define ISC_Ca INDIC_SYLLABIC_CATEGORY_CANTILLATION_MARK /* 59 chars; Cantillation_Mark */
|
||||
#define ISC_C INDIC_SYLLABIC_CATEGORY_CONSONANT /* 2160 chars; Consonant */
|
||||
#define ISC_CD INDIC_SYLLABIC_CATEGORY_CONSONANT_DEAD /* 12 chars; Consonant_Dead */
|
||||
#define ISC_CF INDIC_SYLLABIC_CATEGORY_CONSONANT_FINAL /* 67 chars; Consonant_Final */
|
||||
#define ISC_CHL INDIC_SYLLABIC_CATEGORY_CONSONANT_HEAD_LETTER /* 5 chars; Consonant_Head_Letter */
|
||||
#define ISC_CIP INDIC_SYLLABIC_CATEGORY_CONSONANT_INITIAL_POSTFIXED /* 1 chars; Consonant_Initial_Postfixed */
|
||||
#define ISC_CK INDIC_SYLLABIC_CATEGORY_CONSONANT_KILLER /* 2 chars; Consonant_Killer */
|
||||
#define ISC_CM INDIC_SYLLABIC_CATEGORY_CONSONANT_MEDIAL /* 28 chars; Consonant_Medial */
|
||||
#define ISC_CP INDIC_SYLLABIC_CATEGORY_CONSONANT_PLACEHOLDER /* 21 chars; Consonant_Placeholder */
|
||||
#define ISC_CM INDIC_SYLLABIC_CATEGORY_CONSONANT_MEDIAL /* 29 chars; Consonant_Medial */
|
||||
#define ISC_CP INDIC_SYLLABIC_CATEGORY_CONSONANT_PLACEHOLDER /* 22 chars; Consonant_Placeholder */
|
||||
#define ISC_CPR INDIC_SYLLABIC_CATEGORY_CONSONANT_PRECEDING_REPHA /* 2 chars; Consonant_Preceding_Repha */
|
||||
#define ISC_CPrf INDIC_SYLLABIC_CATEGORY_CONSONANT_PREFIXED /* 7 chars; Consonant_Prefixed */
|
||||
#define ISC_CS INDIC_SYLLABIC_CATEGORY_CONSONANT_SUBJOINED /* 95 chars; Consonant_Subjoined */
|
||||
#define ISC_CPrf INDIC_SYLLABIC_CATEGORY_CONSONANT_PREFIXED /* 9 chars; Consonant_Prefixed */
|
||||
#define ISC_CS INDIC_SYLLABIC_CATEGORY_CONSONANT_SUBJOINED /* 94 chars; Consonant_Subjoined */
|
||||
#define ISC_CSR INDIC_SYLLABIC_CATEGORY_CONSONANT_SUCCEEDING_REPHA /* 4 chars; Consonant_Succeeding_Repha */
|
||||
#define ISC_CWS INDIC_SYLLABIC_CATEGORY_CONSONANT_WITH_STACKER /* 6 chars; Consonant_With_Stacker */
|
||||
#define ISC_GM INDIC_SYLLABIC_CATEGORY_GEMINATION_MARK /* 3 chars; Gemination_Mark */
|
||||
|
@ -42,7 +42,7 @@
|
|||
#define ISC_ML INDIC_SYLLABIC_CATEGORY_MODIFYING_LETTER /* 1 chars; Modifying_Letter */
|
||||
#define ISC_ZWNJ INDIC_SYLLABIC_CATEGORY_NON_JOINER /* 1 chars; Non_Joiner */
|
||||
#define ISC_N INDIC_SYLLABIC_CATEGORY_NUKTA /* 30 chars; Nukta */
|
||||
#define ISC_Nd INDIC_SYLLABIC_CATEGORY_NUMBER /* 480 chars; Number */
|
||||
#define ISC_Nd INDIC_SYLLABIC_CATEGORY_NUMBER /* 481 chars; Number */
|
||||
#define ISC_NJ INDIC_SYLLABIC_CATEGORY_NUMBER_JOINER /* 1 chars; Number_Joiner */
|
||||
#define ISC_x INDIC_SYLLABIC_CATEGORY_OTHER /* 1 chars; Other */
|
||||
#define ISC_PK INDIC_SYLLABIC_CATEGORY_PURE_KILLER /* 21 chars; Pure_Killer */
|
||||
|
@ -50,21 +50,21 @@
|
|||
#define ISC_SM INDIC_SYLLABIC_CATEGORY_SYLLABLE_MODIFIER /* 25 chars; Syllable_Modifier */
|
||||
#define ISC_TL INDIC_SYLLABIC_CATEGORY_TONE_LETTER /* 7 chars; Tone_Letter */
|
||||
#define ISC_TM INDIC_SYLLABIC_CATEGORY_TONE_MARK /* 42 chars; Tone_Mark */
|
||||
#define ISC_V INDIC_SYLLABIC_CATEGORY_VIRAMA /* 25 chars; Virama */
|
||||
#define ISC_Vs INDIC_SYLLABIC_CATEGORY_VISARGA /* 36 chars; Visarga */
|
||||
#define ISC_V INDIC_SYLLABIC_CATEGORY_VIRAMA /* 27 chars; Virama */
|
||||
#define ISC_Vs INDIC_SYLLABIC_CATEGORY_VISARGA /* 35 chars; Visarga */
|
||||
#define ISC_Vo INDIC_SYLLABIC_CATEGORY_VOWEL /* 30 chars; Vowel */
|
||||
#define ISC_M INDIC_SYLLABIC_CATEGORY_VOWEL_DEPENDENT /* 660 chars; Vowel_Dependent */
|
||||
#define ISC_VI INDIC_SYLLABIC_CATEGORY_VOWEL_INDEPENDENT /* 464 chars; Vowel_Independent */
|
||||
#define ISC_M INDIC_SYLLABIC_CATEGORY_VOWEL_DEPENDENT /* 673 chars; Vowel_Dependent */
|
||||
#define ISC_VI INDIC_SYLLABIC_CATEGORY_VOWEL_INDEPENDENT /* 476 chars; Vowel_Independent */
|
||||
|
||||
#define IMC_B INDIC_MATRA_CATEGORY_BOTTOM /* 340 chars; Bottom */
|
||||
#define IMC_B INDIC_MATRA_CATEGORY_BOTTOM /* 349 chars; Bottom */
|
||||
#define IMC_BL INDIC_MATRA_CATEGORY_BOTTOM_AND_LEFT /* 1 chars; Bottom_And_Left */
|
||||
#define IMC_BR INDIC_MATRA_CATEGORY_BOTTOM_AND_RIGHT /* 2 chars; Bottom_And_Right */
|
||||
#define IMC_L INDIC_MATRA_CATEGORY_LEFT /* 59 chars; Left */
|
||||
#define IMC_L INDIC_MATRA_CATEGORY_LEFT /* 61 chars; Left */
|
||||
#define IMC_LR INDIC_MATRA_CATEGORY_LEFT_AND_RIGHT /* 21 chars; Left_And_Right */
|
||||
#define IMC_x INDIC_MATRA_CATEGORY_NOT_APPLICABLE /* 1 chars; Not_Applicable */
|
||||
#define IMC_O INDIC_MATRA_CATEGORY_OVERSTRUCK /* 10 chars; Overstruck */
|
||||
#define IMC_R INDIC_MATRA_CATEGORY_RIGHT /* 276 chars; Right */
|
||||
#define IMC_T INDIC_MATRA_CATEGORY_TOP /* 393 chars; Top */
|
||||
#define IMC_R INDIC_MATRA_CATEGORY_RIGHT /* 281 chars; Right */
|
||||
#define IMC_T INDIC_MATRA_CATEGORY_TOP /* 398 chars; Top */
|
||||
#define IMC_TB INDIC_MATRA_CATEGORY_TOP_AND_BOTTOM /* 10 chars; Top_And_Bottom */
|
||||
#define IMC_TBR INDIC_MATRA_CATEGORY_TOP_AND_BOTTOM_AND_RIGHT /* 1 chars; Top_And_Bottom_And_Right */
|
||||
#define IMC_TL INDIC_MATRA_CATEGORY_TOP_AND_LEFT /* 6 chars; Top_And_Left */
|
||||
|
@ -152,7 +152,7 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table[] = {
|
|||
/* 0A38 */ _(C,x), _(C,x), _(x,x), _(x,x), _(N,B), _(x,x), _(M,R), _(M,L),
|
||||
/* 0A40 */ _(M,R), _(M,B), _(M,B), _(x,x), _(x,x), _(x,x), _(x,x), _(M,T),
|
||||
/* 0A48 */ _(M,T), _(x,x), _(x,x), _(M,T), _(M,T), _(V,B), _(x,x), _(x,x),
|
||||
/* 0A50 */ _(x,x), _(Ca,x), _(x,x), _(x,x), _(x,x), _(x,x), _(x,x), _(x,x),
|
||||
/* 0A50 */ _(x,x), _(Ca,B), _(x,x), _(x,x), _(x,x), _(x,x), _(x,x), _(x,x),
|
||||
/* 0A58 */ _(x,x), _(C,x), _(C,x), _(C,x), _(C,x), _(x,x), _(C,x), _(x,x),
|
||||
/* 0A60 */ _(x,x), _(x,x), _(x,x), _(x,x), _(x,x), _(x,x), _(Nd,x), _(Nd,x),
|
||||
/* 0A68 */ _(Nd,x), _(Nd,x), _(Nd,x), _(Nd,x), _(Nd,x), _(Nd,x), _(Nd,x), _(Nd,x),
|
||||
|
@ -237,7 +237,7 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table[] = {
|
|||
|
||||
/* Kannada */
|
||||
|
||||
/* 0C80 */ _(x,x), _(Bi,T), _(Bi,R), _(Vs,R), _(x,x), _(VI,x), _(VI,x), _(VI,x),
|
||||
/* 0C80 */ _(Bi,x), _(Bi,T), _(Bi,R), _(Vs,R), _(x,x), _(VI,x), _(VI,x), _(VI,x),
|
||||
/* 0C88 */ _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(VI,x), _(x,x), _(VI,x), _(VI,x),
|
||||
/* 0C90 */ _(VI,x), _(x,x), _(VI,x), _(VI,x), _(VI,x), _(C,x), _(C,x), _(C,x),
|
||||
/* 0C98 */ _(C,x), _(C,x), _(C,x), _(C,x), _(C,x), _(C,x), _(C,x), _(C,x),
|
||||
|
@ -346,8 +346,8 @@ static const INDIC_TABLE_ELEMENT_TYPE indic_table[] = {
|
|||
/* 1CD8 */ _(Ca,B), _(Ca,B), _(Ca,T), _(Ca,T), _(Ca,B), _(Ca,B), _(Ca,B), _(Ca,B),
|
||||
/* 1CE0 */ _(Ca,T), _(Ca,R), _(x,O), _(x,O), _(x,O), _(x,O), _(x,O), _(x,O),
|
||||
/* 1CE8 */ _(x,O), _(x,x), _(x,x), _(x,x), _(x,x), _(x,B), _(x,x), _(x,x),
|
||||
/* 1CF0 */ _(x,x), _(x,x), _(Vs,x), _(Vs,x), _(Ca,T),_(CWS,x),_(CWS,x), _(Ca,R),
|
||||
/* 1CF8 */ _(Ca,x), _(Ca,x), _(x,x), _(x,x), _(x,x), _(x,x), _(x,x), _(x,x),
|
||||
/* 1CF0 */ _(x,x), _(x,x), _(CD,x), _(CD,x), _(Ca,T),_(CWS,x),_(CWS,x), _(Ca,R),
|
||||
/* 1CF8 */ _(Ca,x), _(Ca,x), _(CP,x), _(x,x), _(x,x), _(x,x), _(x,x), _(x,x),
|
||||
|
||||
#define indic_offset_0x2008u 1656
|
||||
|
||||
|
|
|
@ -6,12 +6,12 @@
|
|||
*
|
||||
* on files with these headers:
|
||||
*
|
||||
* # IndicSyllabicCategory-11.0.0.txt
|
||||
* # Date: 2018-05-21, 18:33:00 GMT [KW, RP]
|
||||
* # IndicPositionalCategory-11.0.0.txt
|
||||
* # Date: 2018-02-05, 16:21:00 GMT [KW, RP]
|
||||
* # Blocks-11.0.0.txt
|
||||
* # Date: 2017-10-16, 24:39:00 GMT [KW]
|
||||
* # IndicSyllabicCategory-12.0.0.txt
|
||||
* # Date: 2019-01-31, 02:26:00 GMT [KW, RP]
|
||||
* # IndicPositionalCategory-12.0.0.txt
|
||||
* # Date: 2019-01-31, 02:26:00 GMT [KW, RP]
|
||||
* # Blocks-12.0.0.txt
|
||||
* # Date: 2018-07-30, 19:40:00 GMT [KW]
|
||||
* UnicodeData.txt does not have a header.
|
||||
*/
|
||||
|
||||
|
@ -167,7 +167,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
|
||||
/* Kannada */
|
||||
|
||||
/* 0C80 */ O, VMAbv, VMPst, VMPst, O, B, B, B, B, B, B, B, B, O, B, B,
|
||||
/* 0C80 */ B, VMAbv, VMPst, VMPst, O, B, B, B, B, B, B, B, B, O, B, B,
|
||||
/* 0C90 */ B, O, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 0CA0 */ B, B, B, B, B, B, B, B, B, O, B, B, B, B, B, B,
|
||||
/* 0CB0 */ B, B, B, B, O, B, B, B, B, B, O, O, CMBlw, B, VPst, VAbv,
|
||||
|
@ -288,7 +288,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* 19A0 */ B, B, B, B, B, B, B, B, B, B, B, B, O, O, O, O,
|
||||
/* 19B0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 19C0 */ B, B, B, B, B, B, B, B, VMPst, VMPst, O, O, O, O, O, O,
|
||||
/* 19D0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
|
||||
/* 19D0 */ B, B, B, B, B, B, B, B, B, B, B, O, O, O, O, O,
|
||||
/* 19E0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
/* 19F0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
|
||||
|
@ -351,7 +351,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
|
||||
/* 1CD0 */ VMAbv, VMAbv, VMAbv, O, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMAbv, VMAbv, VMBlw, VMBlw, VMBlw, VMBlw,
|
||||
/* 1CE0 */ VMAbv, VMPst, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, O, O, O, O, VMBlw, O, O,
|
||||
/* 1CF0 */ O, O, VMPst, VMPst, VMAbv, CS, CS, VMPst, VMAbv, VMAbv, O, O, O, O, O, O,
|
||||
/* 1CF0 */ O, O, IND, IND, VMAbv, CS, CS, VMPst, VMAbv, VMAbv, GB, O, O, O, O, O,
|
||||
|
||||
#define use_offset_0x1df8u 2736
|
||||
|
||||
|
@ -393,7 +393,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
|
||||
/* Syloti Nagri */
|
||||
|
||||
/* A800 */ B, B, O, B, B, B, VAbv, B, B, B, B, VMAbv, B, B, B, B,
|
||||
/* A800 */ B, B, VAbv, B, B, B, H, B, B, B, B, VMAbv, B, B, B, B,
|
||||
/* A810 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* A820 */ B, B, B, VPst, VPst, VBlw, VAbv, VPst, O, O, O, O, O, O, O, O,
|
||||
/* A830 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
|
@ -438,7 +438,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* A980 */ VMAbv, VMAbv, FAbv, VMPst, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* A990 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* A9A0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* A9B0 */ B, B, B, CMAbv, VPst, VPst, VAbv, VAbv, VBlw, VBlw, VPre, VPre, VAbv, SUB, MPst, MBlw,
|
||||
/* A9B0 */ B, B, B, CMAbv, VPst, VPst, VAbv, VAbv, VBlw, VBlw, VPre, VPre, VAbv, MBlw, MPst, MBlw,
|
||||
/* A9C0 */ H, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
/* A9D0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
|
||||
|
||||
|
@ -600,7 +600,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* 11420 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 11430 */ B, B, B, B, B, VPst, VPre, VPst, VBlw, VBlw, VBlw, VBlw, VBlw, VBlw, VAbv, VAbv,
|
||||
/* 11440 */ VPst, VPst, H, VMAbv, VMAbv, VMPst, CMBlw, B, O, O, O, O, O, O, O, O,
|
||||
/* 11450 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, FM, O,
|
||||
/* 11450 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, FM, B,
|
||||
/* 11460 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
/* 11470 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
|
||||
|
@ -643,7 +643,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* 11680 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 11690 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 116A0 */ B, B, B, B, B, B, B, B, B, B, B, VMAbv, VMPst, VAbv, VPre, VPst,
|
||||
/* 116B0 */ VBlw, VBlw, VAbv, VAbv, VAbv, VAbv, H, CMBlw, O, O, O, O, O, O, O, O,
|
||||
/* 116B0 */ VBlw, VBlw, VAbv, VAbv, VAbv, VAbv, H, CMBlw, B, O, O, O, O, O, O, O,
|
||||
/* 116C0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
|
||||
/* 116D0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
/* 116E0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
|
@ -666,9 +666,18 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* 11820 */ B, B, B, B, B, B, B, B, B, B, B, B, VPst, VPre, VPst, VBlw,
|
||||
/* 11830 */ VBlw, VBlw, VBlw, VAbv, VAbv, VAbv, VAbv, VMAbv, VMPst, H, CMBlw, O, O, O, O, O,
|
||||
|
||||
#define use_offset_0x11a00u 5232
|
||||
#define use_offset_0x119a0u 5232
|
||||
|
||||
|
||||
/* Nandinagari */
|
||||
|
||||
/* 119A0 */ B, B, B, B, B, B, B, B, O, O, B, B, B, B, B, B,
|
||||
/* 119B0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 119C0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 119D0 */ B, VPst, VPre, VPst, VBlw, VBlw, VBlw, VBlw, O, O, VAbv, VAbv, VPst, VPst, VMPst, VMPst,
|
||||
/* 119E0 */ H, B, O, O, VPre, O, O, O, O, O, O, O, O, O, O, O,
|
||||
/* 119F0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
|
||||
|
||||
/* Zanabazar Square */
|
||||
|
||||
/* 11A00 */ B, VAbv, VBlw, VBlw, VAbv, VAbv, VAbv, VAbv, VAbv, VAbv, VBlw, B, B, B, B, B,
|
||||
|
@ -682,10 +691,10 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* 11A50 */ B, VAbv, VBlw, VBlw, VAbv, VAbv, VAbv, VPst, VPst, VBlw, VBlw, VBlw, B, B, B, B,
|
||||
/* 11A60 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 11A70 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 11A80 */ B, B, B, B, O, O, R, R, R, R, FBlw, FBlw, FBlw, FBlw, FBlw, FBlw,
|
||||
/* 11A80 */ B, B, B, B, R, R, R, R, R, R, FBlw, FBlw, FBlw, FBlw, FBlw, FBlw,
|
||||
/* 11A90 */ FBlw, FBlw, FBlw, FBlw, FBlw, FBlw, VMAbv, VMPst, CMAbv, H, O, O, O, B, O, O,
|
||||
|
||||
#define use_offset_0x11c00u 5392
|
||||
#define use_offset_0x11c00u 5488
|
||||
|
||||
|
||||
/* Bhaiksuki */
|
||||
|
@ -706,7 +715,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* 11CA0 */ SUB, SUB, SUB, SUB, SUB, SUB, SUB, SUB, O, SUB, SUB, SUB, SUB, SUB, SUB, SUB,
|
||||
/* 11CB0 */ VBlw, VPre, VBlw, VAbv, VPst, VMAbv, VMAbv, O,
|
||||
|
||||
#define use_offset_0x11d00u 5576
|
||||
#define use_offset_0x11d00u 5672
|
||||
|
||||
|
||||
/* Masaram Gondi */
|
||||
|
@ -726,7 +735,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* 11D90 */ VAbv, VAbv, O, VPst, VPst, VMAbv, VMPst, H, O, O, O, O, O, O, O, O,
|
||||
/* 11DA0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
|
||||
|
||||
#define use_offset_0x11ee0u 5752
|
||||
#define use_offset_0x11ee0u 5848
|
||||
|
||||
|
||||
/* Makasar */
|
||||
|
@ -734,7 +743,7 @@ static const USE_TABLE_ELEMENT_TYPE use_table[] = {
|
|||
/* 11EE0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
|
||||
/* 11EF0 */ B, B, GB, VAbv, VBlw, VPre, VPst, O,
|
||||
|
||||
}; /* Table items: 5776; occupancy: 74% */
|
||||
}; /* Table items: 5872; occupancy: 74% */
|
||||
|
||||
USE_TABLE_ELEMENT_TYPE
|
||||
hb_use_get_category (hb_codepoint_t u)
|
||||
|
@ -785,7 +794,7 @@ hb_use_get_category (hb_codepoint_t u)
|
|||
if (hb_in_range<hb_codepoint_t> (u, 0x11400u, 0x114DFu)) return use_table[u - 0x11400u + use_offset_0x11400u];
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x11580u, 0x1173Fu)) return use_table[u - 0x11580u + use_offset_0x11580u];
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x11800u, 0x1183Fu)) return use_table[u - 0x11800u + use_offset_0x11800u];
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x11A00u, 0x11A9Fu)) return use_table[u - 0x11A00u + use_offset_0x11a00u];
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x119A0u, 0x11A9Fu)) return use_table[u - 0x119A0u + use_offset_0x119a0u];
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x11C00u, 0x11CB7u)) return use_table[u - 0x11C00u + use_offset_0x11c00u];
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x11D00u, 0x11DAFu)) return use_table[u - 0x11D00u + use_offset_0x11d00u];
|
||||
if (hb_in_range<hb_codepoint_t> (u, 0x11EE0u, 0x11EF7u)) return use_table[u - 0x11EE0u + use_offset_0x11ee0u];
|
||||
|
|
|
@ -9,8 +9,8 @@
|
|||
* # Copied from https://docs.microsoft.com/en-us/typography/script-development/use
|
||||
* # On October 23, 2018; with documentd dated 02/07/2018.
|
||||
*
|
||||
* # Scripts-11.0.0.txt
|
||||
* # Date: 2018-02-21, 05:34:31 GMT
|
||||
* # Scripts-12.0.0.txt
|
||||
* # Date: 2019-01-28, 22:16:47 GMT
|
||||
*/
|
||||
|
||||
#include "hb-ot-shape-complex-vowel-constraints.hh"
|
||||
|
|
|
@ -377,6 +377,9 @@ hb_ot_shape_complex_categorize (const hb_ot_shape_planner_t *planner)
|
|||
case HB_SCRIPT_MAKASAR:
|
||||
//case HB_SCRIPT_SOGDIAN:
|
||||
|
||||
/* Unicode-12.0 additions */
|
||||
case HB_SCRIPT_NANDINAGARI:
|
||||
|
||||
/* If the designer designed the font for the 'DFLT' script,
|
||||
* (or we ended up arbitrarily pick 'latn'), use the default shaper.
|
||||
* Otherwise, use the specific shaper.
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
*
|
||||
* on files with these headers:
|
||||
*
|
||||
* <meta name="updated_at" content="2018-09-07 07:45 PM" />
|
||||
* File-Date: 2018-08-08
|
||||
* <meta name="updated_at" content="2018-11-18 05:25 AM" />
|
||||
* File-Date: 2019-02-20
|
||||
*/
|
||||
|
||||
#ifndef HB_OT_TAG_TABLE_HH
|
||||
|
@ -131,7 +131,7 @@ static const LangTag ot_languages[] = {
|
|||
{"bjt", {HB_TAG('B','L','N',' ')}}, /* Balanta-Ganja -> Balante */
|
||||
{"bla", {HB_TAG('B','K','F',' ')}}, /* Siksika -> Blackfoot */
|
||||
{"ble", {HB_TAG('B','L','N',' ')}}, /* Balanta-Kentohe -> Balante */
|
||||
{"blk", {HB_TAG('B','L','K',' ')}}, /* Pa'o Karen */
|
||||
{"blk", {HB_TAG('B','L','K',' ')}}, /* Pa’o Karen */
|
||||
{"bln", {HB_TAG('B','I','K',' ')}}, /* Southern Catanduanes Bikol -> Bikol */
|
||||
{"bm", {HB_TAG('B','M','B',' ')}}, /* Bambara (Bamanankan) */
|
||||
{"bmm", {HB_TAG('M','L','G',' ')}}, /* Northern Betsimisaraka Malagasy -> Malagasy */
|
||||
|
@ -318,7 +318,7 @@ static const LangTag ot_languages[] = {
|
|||
{"fj", {HB_TAG('F','J','I',' ')}}, /* Fijian */
|
||||
{"flm", {HB_TAG('H','A','L',' '), /* Halam (Falam Chin) (retired code) */
|
||||
HB_TAG('Q','I','N',' ')}}, /* Falam Chin (retired code) -> Chin */
|
||||
{"fmp", {HB_TAG('F','M','P',' ')}}, /* Fe'fe' */
|
||||
{"fmp", {HB_TAG('F','M','P',' ')}}, /* Fe’fe’ */
|
||||
{"fo", {HB_TAG('F','O','S',' ')}}, /* Faroese */
|
||||
{"fon", {HB_TAG('F','O','N',' ')}}, /* Fon */
|
||||
{"fr", {HB_TAG('F','R','A',' ')}}, /* French */
|
||||
|
@ -653,7 +653,7 @@ static const LangTag ot_languages[] = {
|
|||
{"mwr", {HB_TAG('M','A','W',' ')}}, /* Marwari [macrolanguage] */
|
||||
{"mww", {HB_TAG('M','W','W',' ')}}, /* Hmong Daw */
|
||||
{"my", {HB_TAG('B','R','M',' ')}}, /* Burmese */
|
||||
{"mym", {HB_TAG('M','E','N',' ')}}, /* Me'en */
|
||||
{"mym", {HB_TAG('M','E','N',' ')}}, /* Me’en */
|
||||
{"myn", {HB_TAG('M','Y','N',' ')}}, /* Mayan [family] */
|
||||
{"myq", {HB_TAG('M','N','K',' ')}}, /* Forest Maninka (retired code) -> Maninka */
|
||||
{"myv", {HB_TAG('E','R','Z',' ')}}, /* Erzya */
|
||||
|
@ -687,7 +687,7 @@ static const LangTag ot_languages[] = {
|
|||
{"nog", {HB_TAG('N','O','G',' ')}}, /* Nogai */
|
||||
{"nov", {HB_TAG('N','O','V',' ')}}, /* Novial */
|
||||
{"npi", {HB_TAG('N','E','P',' ')}}, /* Nepali */
|
||||
{"nqo", {HB_TAG('N','K','O',' ')}}, /* N'Ko */
|
||||
{"nqo", {HB_TAG('N','K','O',' ')}}, /* N’Ko */
|
||||
{"nr", {HB_TAG('N','D','B',' ')}}, /* South Ndebele -> Ndebele */
|
||||
{"nsk", {HB_TAG('N','A','S',' ')}}, /* Naskapi */
|
||||
{"nso", {HB_TAG('N','S','O',' ')}}, /* Pedi -> Sotho, Northern */
|
||||
|
|
|
@ -171,6 +171,10 @@ static const hb_script_t ucdn_script_translate[] =
|
|||
HB_SCRIPT_MEDEFAIDRIN,
|
||||
HB_SCRIPT_OLD_SOGDIAN,
|
||||
HB_SCRIPT_SOGDIAN,
|
||||
HB_SCRIPT_ELYMAIC,
|
||||
HB_SCRIPT_NANDINAGARI,
|
||||
HB_SCRIPT_NYIAKENG_PUACHUE_HMONG,
|
||||
HB_SCRIPT_WANCHO,
|
||||
};
|
||||
|
||||
static hb_unicode_combining_class_t
|
||||
|
|
|
@ -206,6 +206,17 @@ typedef unsigned __int64 uint64_t;
|
|||
#define UCDN_SCRIPT_NUSHU 139
|
||||
#define UCDN_SCRIPT_SOYOMBO 140
|
||||
#define UCDN_SCRIPT_ZANABAZAR_SQUARE 141
|
||||
#define UCDN_SCRIPT_DOGRA 142
|
||||
#define UCDN_SCRIPT_GUNJALA_GONDI 143
|
||||
#define UCDN_SCRIPT_HANIFI_ROHINGYA 144
|
||||
#define UCDN_SCRIPT_MAKASAR 145
|
||||
#define UCDN_SCRIPT_MEDEFAIDRIN 146
|
||||
#define UCDN_SCRIPT_OLD_SOGDIAN 147
|
||||
#define UCDN_SCRIPT_SOGDIAN 148
|
||||
#define UCDN_SCRIPT_ELYMAIC 149
|
||||
#define UCDN_SCRIPT_NANDINAGARI 150
|
||||
#define UCDN_SCRIPT_NYIAKENG_PUACHUE_HMONG 151
|
||||
#define UCDN_SCRIPT_WANCHO 152
|
||||
|
||||
#define UCDN_LINEBREAK_CLASS_OP 0
|
||||
#define UCDN_LINEBREAK_CLASS_CL 1
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -7,13 +7,13 @@
|
|||
* on file with this header:
|
||||
*
|
||||
* # emoji-data.txt
|
||||
* # Date: 2018-02-07, 07:55:18 GMT
|
||||
* # © 2018 Unicode®, Inc.
|
||||
* # Date: 2019-01-15, 12:10:05 GMT
|
||||
* # © 2019 Unicode®, Inc.
|
||||
* # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
|
||||
* # For terms of use, see http://www.unicode.org/terms_of_use.html
|
||||
* #
|
||||
* # Emoji Data for UTS #51
|
||||
* # Version: 11.0
|
||||
* # Version: 12.0
|
||||
* #
|
||||
* # For documentation and usage, see http://www.unicode.org/reports/tr51
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue