gunicode: Add new line-break types from Unicode 15.1.0

See https://unicode.org/reports/tr14/

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>

Helps: #3112
This commit is contained in:
Philip Withnall 2023-10-17 22:02:10 +01:00
parent 6ad6180b3c
commit 444a313b1f
3 changed files with 21 additions and 1 deletions

View File

@ -111,6 +111,9 @@ $FOLDING_MAPPING = 2;
(
'AI' => "G_UNICODE_BREAK_AMBIGUOUS",
'AL' => "G_UNICODE_BREAK_ALPHABETIC",
'AK' => "G_UNICODE_BREAK_AKSARA",
'AP' => "G_UNICODE_BREAK_AKSARA_PRE_BASE",
'AS' => "G_UNICODE_BREAK_AKSARA_START",
'B2' => "G_UNICODE_BREAK_BEFORE_AND_AFTER",
'BA' => "G_UNICODE_BREAK_AFTER",
'BB' => "G_UNICODE_BREAK_BEFORE",
@ -148,6 +151,8 @@ $FOLDING_MAPPING = 2;
'SG' => "G_UNICODE_BREAK_SURROGATE",
'SP' => "G_UNICODE_BREAK_SPACE",
'SY' => "G_UNICODE_BREAK_SYMBOL",
'VF' => "G_UNICODE_BREAK_VIRAMA_FINAL",
'VI' => "G_UNICODE_BREAK_VIRAMA",
'WJ' => "G_UNICODE_BREAK_WORD_JOINER",
'XX' => "G_UNICODE_BREAK_UNKNOWN",
'ZW' => "G_UNICODE_BREAK_ZERO_WIDTH_SPACE",

View File

@ -204,6 +204,11 @@ typedef enum
* @G_UNICODE_BREAK_EMOJI_BASE: Emoji Base (EB). Since: 2.50
* @G_UNICODE_BREAK_EMOJI_MODIFIER: Emoji Modifier (EM). Since: 2.50
* @G_UNICODE_BREAK_ZERO_WIDTH_JOINER: Zero Width Joiner (ZWJ). Since: 2.50
* @G_UNICODE_BREAK_AKSARA: Aksara (AK). Since: 2.80
* @G_UNICODE_BREAK_AKSARA_PRE_BASE (AP). Since: 2.80
* @G_UNICODE_BREAK_AKSARA_START (AS). Since: 2.80
* @G_UNICODE_BREAK_VIRAMA_FINAL (VF). Since: 2.80
* @G_UNICODE_BREAK_VIRAMA (VI). Since: 2.80
*
* These are the possible line break classifications.
*
@ -257,7 +262,12 @@ typedef enum
G_UNICODE_BREAK_REGIONAL_INDICATOR,
G_UNICODE_BREAK_EMOJI_BASE,
G_UNICODE_BREAK_EMOJI_MODIFIER,
G_UNICODE_BREAK_ZERO_WIDTH_JOINER
G_UNICODE_BREAK_ZERO_WIDTH_JOINER,
G_UNICODE_BREAK_AKSARA,
G_UNICODE_BREAK_AKSARA_PRE_BASE,
G_UNICODE_BREAK_AKSARA_START,
G_UNICODE_BREAK_VIRAMA_FINAL,
G_UNICODE_BREAK_VIRAMA
} GUnicodeBreakType;
/**

View File

@ -173,6 +173,11 @@ test_unichar_break_type (void)
{ G_UNICODE_BREAK_EMOJI_BASE, 0x1F466 },
{ G_UNICODE_BREAK_EMOJI_MODIFIER, 0x1F3FB },
{ G_UNICODE_BREAK_ZERO_WIDTH_JOINER, 0x200D },
{ G_UNICODE_BREAK_AKSARA, 0x1B45 },
{ G_UNICODE_BREAK_AKSARA_PRE_BASE, 0x1193F },
{ G_UNICODE_BREAK_AKSARA_START, 0x11F50 },
{ G_UNICODE_BREAK_VIRAMA_FINAL, 0x1BF3 },
{ G_UNICODE_BREAK_VIRAMA, 0xA9C0 },
};
for (i = 0; i < G_N_ELEMENTS (examples); i++)