From 07e191012d665cb19ddf474d5b66d1158a8f9d0c Mon Sep 17 00:00:00 2001 From: Philip Withnall Date: Fri, 18 Oct 2024 15:12:00 +0100 Subject: [PATCH] gunicode: Add new scripts for Unicode 16.0 Manually added from the data in https://www.unicode.org/Public/16.0.0/ucd/UCD.zip. The following commit will mechanically update the Unicode tables to use them. Signed-off-by: Philip Withnall Helps: #3470 --- glib/gunicode.h | 16 ++++++++++++++++ glib/guniprop.c | 9 +++++++++ glib/tests/unicode.c | 16 ++++++++++++++++ 3 files changed, 41 insertions(+) diff --git a/glib/gunicode.h b/glib/gunicode.h index 369603f37..29f0b5646 100644 --- a/glib/gunicode.h +++ b/glib/gunicode.h @@ -450,6 +450,13 @@ typedef enum * @G_UNICODE_SCRIPT_MATH: Mathematical notation. Since: 2.72 * @G_UNICODE_SCRIPT_KAWI: Kawi. Since 2.74 * @G_UNICODE_SCRIPT_NAG_MUNDARI: Nag Mundari. Since 2.74 + * @G_UNICODE_SCRIPT_TODHRI: Todhri. Since: 2.84 + * @G_UNICODE_SCRIPT_GARAY: Garay. Since: 2.84 + * @G_UNICODE_SCRIPT_TULU_TIGALARI: Tulu-Tigalari. Since: 2.84 + * @G_UNICODE_SCRIPT_SUNUWAR: Sunuwar. Since: 2.84 + * @G_UNICODE_SCRIPT_GURUNG_KHEMA: Gurung Khema. Since: 2.84 + * @G_UNICODE_SCRIPT_KIRAT_RAI: Kirat Rai. Since: 2.84 + * @G_UNICODE_SCRIPT_OL_ONAL: Ol Onal. Since: 2.84 * * The #GUnicodeScript enumeration identifies different writing * systems. The values correspond to the names as defined in the @@ -662,6 +669,15 @@ typedef enum /* Unicode 15.0 additions */ G_UNICODE_SCRIPT_KAWI GLIB_AVAILABLE_ENUMERATOR_IN_2_74, /* Kawi */ G_UNICODE_SCRIPT_NAG_MUNDARI GLIB_AVAILABLE_ENUMERATOR_IN_2_74, /* Nagm */ + + /* Unicode 16.0 additions */ + G_UNICODE_SCRIPT_TODHRI GLIB_AVAILABLE_ENUMERATOR_IN_2_84, /* Todr */ + G_UNICODE_SCRIPT_GARAY GLIB_AVAILABLE_ENUMERATOR_IN_2_84, /* Gara */ + G_UNICODE_SCRIPT_TULU_TIGALARI GLIB_AVAILABLE_ENUMERATOR_IN_2_84, /* Tutg */ + G_UNICODE_SCRIPT_SUNUWAR GLIB_AVAILABLE_ENUMERATOR_IN_2_84, /* Sunu */ + G_UNICODE_SCRIPT_GURUNG_KHEMA GLIB_AVAILABLE_ENUMERATOR_IN_2_84, /* Gukh */ + G_UNICODE_SCRIPT_KIRAT_RAI GLIB_AVAILABLE_ENUMERATOR_IN_2_84, /* Krai */ + G_UNICODE_SCRIPT_OL_ONAL GLIB_AVAILABLE_ENUMERATOR_IN_2_84, /* Onao */ } GUnicodeScript; GLIB_AVAILABLE_IN_ALL diff --git a/glib/guniprop.c b/glib/guniprop.c index e147829e2..fe0033fd6 100644 --- a/glib/guniprop.c +++ b/glib/guniprop.c @@ -1527,6 +1527,15 @@ static const guint32 iso15924_tags[] = PACK ('K', 'a', 'w', 'i'), /* G_UNICODE_SCRIPT_KAWI */ PACK ('N', 'a', 'g', 'm'), /* G_UNICODE_SCRIPT_NAG_MUNDARI */ + /* Unicode 16.0 additions */ + PACK ('T', 'o', 'd', 'r'), /* G_UNICODE_SCRIPT_TODHRI */ + PACK ('G', 'a', 'r', 'a'), /* G_UNICODE_SCRIPT_GARAY */ + PACK ('T', 'u', 't', 'g'), /* G_UNICODE_SCRIPT_TULU_TIGALARI */ + PACK ('S', 'u', 'n', 'u'), /* G_UNICODE_SCRIPT_SUNUWAR */ + PACK ('G', 'u', 'k', 'h'), /* G_UNICODE_SCRIPT_GURUNG_KHEMA */ + PACK ('K', 'r', 'a', 'i'), /* G_UNICODE_SCRIPT_KIRAT_RAI */ + PACK ('O', 'n', 'a', 'o'), /* G_UNICODE_SCRIPT_OL_ONAL */ + #undef PACK }; diff --git a/glib/tests/unicode.c b/glib/tests/unicode.c index cb74068a5..f471895e6 100644 --- a/glib/tests/unicode.c +++ b/glib/tests/unicode.c @@ -364,6 +364,13 @@ test_unichar_script (void) { G_UNICODE_SCRIPT_VITHKUQI, 0x10570 }, { G_UNICODE_SCRIPT_KAWI, 0x11F00 }, { G_UNICODE_SCRIPT_NAG_MUNDARI, 0x1E4D0 }, + { G_UNICODE_SCRIPT_TODHRI, 0x105C8 }, + { G_UNICODE_SCRIPT_GARAY, 0x10D40 }, + { G_UNICODE_SCRIPT_TULU_TIGALARI, 0x11387 }, + { G_UNICODE_SCRIPT_SUNUWAR, 0x11BC0 }, + { G_UNICODE_SCRIPT_GURUNG_KHEMA, 0x16139 }, + { G_UNICODE_SCRIPT_KIRAT_RAI, 0x16D40 }, + { G_UNICODE_SCRIPT_OL_ONAL, 0x1E5D0 }, }; for (i = 0; i < G_N_ELEMENTS (examples); i++) g_assert_cmpint (g_unichar_get_script (examples[i].c), ==, examples[i].script); @@ -1875,6 +1882,15 @@ test_iso15924 (void) /* Unicode 15.0 additions */ { G_UNICODE_SCRIPT_KAWI, "Kawi" }, { G_UNICODE_SCRIPT_NAG_MUNDARI, "Nagm" }, + + /* Unicode 16.0 additions */ + { G_UNICODE_SCRIPT_TODHRI, "Todr" }, + { G_UNICODE_SCRIPT_GARAY, "Gara" }, + { G_UNICODE_SCRIPT_TULU_TIGALARI, "Tutg" }, + { G_UNICODE_SCRIPT_SUNUWAR, "Sunu" }, + { G_UNICODE_SCRIPT_GURUNG_KHEMA, "Gukh" }, + { G_UNICODE_SCRIPT_KIRAT_RAI, "Krai" }, + { G_UNICODE_SCRIPT_OL_ONAL, "Onao" }, }; guint i;