From 06b702e94aac06c61ddb03e6367295d2f0b951af Mon Sep 17 00:00:00 2001 From: shadyar Date: Sat, 24 Jun 2017 11:43:47 +0430 Subject: [PATCH 01/17] debugging some rules --- dictsource/fa_rules | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dictsource/fa_rules b/dictsource/fa_rules index 4a0b42eb..76ddff8e 100644 --- a/dictsource/fa_rules +++ b/dictsource/fa_rules @@ -1,5 +1,5 @@ -// * Farsi Language fa (or Parsi or Persian) fa_rules Version 3.133 -// * This file writen by Shadyar Khodayari 05-10-2017 +// * Farsi Language fa (or Parsi or Persian) fa_rules Version 3.134 +// * This file writen by Shadyar Khodayari 06-24-2017 //********* // * This program is free software; you can redistribute it and/or modify * // * it under the terms of the GNU General Public License as published by * @@ -4843,7 +4843,7 @@ L09L04) السّادات (_Sm8 ossAdAt L09L09L09L09) م (L03L09L09L09_ ma // Prefixes م - _) م (L03L09L03_$noprefixP1@ ma + _) م (L03L04L03_$noprefixP1@ ma _) می (L03L09+$noprefixP2@ mi _) می (آL09L09$noprefixP2@ mi _) می (وL09L09$noprefixP2@ mi From 042d1bf79d4dff4e59832f0caac58451bc0de33d Mon Sep 17 00:00:00 2001 From: shadyar Date: Sat, 24 Jun 2017 12:15:21 +0430 Subject: [PATCH 02/17] reading Persian was debugged through editing exceptional words. --- dictsource/fa_list | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dictsource/fa_list b/dictsource/fa_list index eeddbaed..cbb9e051 100644 --- a/dictsource/fa_list +++ b/dictsource/fa_list @@ -1,5 +1,5 @@ -// * Farsi Language fa (or Parsi or Persian) fa_list Version 3.133 -// * This file writen by Shadyar Khodayari and Ehsan Esmaili who has managed collecting exceptional words. 05-10-2017 +// * Farsi Language fa (or Parsi or Persian) fa_list Version 3.134 +// * This file writen by Shadyar Khodayari and Ehsan Esmaili who has managed collecting exceptional words. 06-24-2017 //********* // * This program is free software; you can redistribute it and/or modify * // * it under the terms of the GNU General Public License as published by * @@ -554,6 +554,7 @@ _) paRAntezbaste: آموخت Amuxt آموزد Amuzad آموزش AmuzeS +آمپر AmpeR آمپرمتر AmpeRmetR آمپلیفایر AmpelifAjeR آمپیریسم AmpiRism @@ -5055,7 +5056,6 @@ _) paRAntezbaste: درایه deRAje درایو deRAjv درایور deRAjveR -درباره daR'bAReje: دربازکن daRbAzkon دربدر daRbedaR دربندکشیده daRbandkeSide @@ -6809,6 +6809,7 @@ _) paRAntezbaste: شدیدا Sadidan شدیداللحن Sadidollahn شدیم Sodim +شراادی SA:_d:jA:_R شرافت SeRAfat شراپنل SeRApnel شراکت SeRAkat @@ -6816,7 +6817,6 @@ _) paRAntezbaste: شربت SaRbat شرت 'SoRt شرتکات SoRtkAt -شراادی SA:_d:jA:_R شرشر SeRSeR شرطه SoRte: شرعا SaR?an From da3ed3aa9bdd33aef50dad098de675fb2f498903 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 09:37:51 +0100 Subject: [PATCH 03/17] Update the CHANGELOG to include the emoji-data properties. --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4cc0aae9..c59f9d22 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,10 +1,10 @@ # Change Log -## 9.0.0.1 - (In Progress) +## 10.0.0 - (In Progress) * Add `iswblank` and `iswxdigit` compatibility. * Improve ctype compatibility. -* PropList property lookup. +* PropList and emoji-data property lookup. ## 9.0.0 - 2016-12-28 From 6ff015f171e86a5a29e391baa6c7dbbff1ec87f5 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 10:03:51 +0100 Subject: [PATCH 04/17] Use curl's -o to save the data files. This will prevent writing the file if the command fails. --- Makefile.am | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Makefile.am b/Makefile.am index fd7f3ed0..1d9931d1 100644 --- a/Makefile.am +++ b/Makefile.am @@ -62,27 +62,27 @@ UCD_SRCDIR=http://www.unicode.org/Public data/emoji/emoji-data.txt: mkdir -pv data/emoji - curl ${UCD_SRCDIR}/emoji/${EMOJI_VERSION}/emoji-data.txt > $@ + curl ${UCD_SRCDIR}/emoji/${EMOJI_VERSION}/emoji-data.txt -o $@ data/ucd/PropList.txt: mkdir -pv data/ucd - curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/PropList.txt > $@ + curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/PropList.txt -o $@ data/ucd/DerivedCoreProperties.txt: mkdir -pv data/ucd - curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/DerivedCoreProperties.txt > $@ + curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/DerivedCoreProperties.txt -o $@ data/ucd/PropertyValueAliases.txt: mkdir -pv data/ucd - curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/PropertyValueAliases.txt > $@ + curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/PropertyValueAliases.txt -o $@ data/ucd/Scripts.txt: mkdir -pv data/ucd - curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/Scripts.txt > $@ + curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/Scripts.txt -o $@ data/ucd/UnicodeData.txt: mkdir -pv data/ucd - curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/UnicodeData.txt > $@ + curl ${UCD_SRCDIR}/${UCD_VERSION}/ucd/UnicodeData.txt -o $@ ############################# documentation ################################### From 0b56f2e5bcd66b7632bdca677c96380fc9c37375 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 11:45:36 +0100 Subject: [PATCH 05/17] Use C-style comments to support using a C89 compiler. --- CHANGELOG.md | 1 + src/case.c | 7 +- src/categories.c | 1245 ++++++++++++++++++++--------------------- src/ctype.c | 40 +- src/proplist.c | 88 +-- src/scripts.c | 1251 +++++++++++++++++++++--------------------- tests/printcdata.c | 48 +- tests/printucddata.c | 48 +- tools/case.py | 7 +- tools/categories.py | 15 +- tools/scripts.py | 15 +- 11 files changed, 1386 insertions(+), 1379 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c59f9d22..1ce304d7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ * Add `iswblank` and `iswxdigit` compatibility. * Improve ctype compatibility. * PropList and emoji-data property lookup. +* Support building with a C89 compiler. ## 9.0.0 - 2016-12-28 diff --git a/src/case.c b/src/case.c index 3e46a56d..14a5e9aa 100644 --- a/src/case.c +++ b/src/case.c @@ -18,14 +18,15 @@ * along with ucd-tools. If not, see . */ -// NOTE: This file is automatically generated from the UnicodeData.txt file in -// the Unicode Character database by the ucd-tools/tools/categories.py script. +/* NOTE: This file is automatically generated from the UnicodeData.txt file in + * the Unicode Character database by the ucd-tools/tools/categories.py script. + */ #include "ucd/ucd.h" #include -// Unicode Character Data 9.0.0 +/* Unicode Character Data 9.0.0 */ struct case_conversion_entry { diff --git a/src/categories.c b/src/categories.c index 964ac416..6ec02144 100644 --- a/src/categories.c +++ b/src/categories.c @@ -18,8 +18,9 @@ * along with ucd-tools. If not, see . */ -// NOTE: This file is automatically generated from the UnicodeData.txt file in -// the Unicode Character database by the ucd-tools/tools/categories.py script. +/* NOTE: This file is automatically generated from the UnicodeData.txt file in + * the Unicode Character database by the ucd-tools/tools/categories.py script. + */ #include "ucd/ucd.h" @@ -57,7 +58,7 @@ #define Zs UCD_CATEGORY_Zs #define Ii UCD_CATEGORY_Ii -// Unicode Character Data 9.0.0 +/* Unicode Character Data 9.0.0 */ static const uint8_t categories_Cn[256] = { @@ -2698,11 +2699,11 @@ static const uint8_t *categories_000000_00D7FF[] = categories_000E00, categories_000F00, categories_001000, - categories_Lo, // 001100 + categories_Lo, /* 001100 */ categories_001200, categories_001300, categories_001400, - categories_Lo, // 001500 + categories_Lo, /* 001500 */ categories_001600, categories_001700, categories_001800, @@ -2715,15 +2716,15 @@ static const uint8_t *categories_000000_00D7FF[] = categories_001F00, categories_002000, categories_002100, - categories_Sm, // 002200 + categories_Sm, /* 002200 */ categories_002300, categories_002400, categories_002500, categories_002600, categories_002700, - categories_So, // 002800 + categories_So, /* 002800 */ categories_002900, - categories_Sm, // 002A00 + categories_Sm, /* 002A00 */ categories_002B00, categories_002C00, categories_002D00, @@ -2732,180 +2733,180 @@ static const uint8_t *categories_000000_00D7FF[] = categories_003000, categories_003100, categories_003200, - categories_So, // 003300 - categories_Lo, // 003400 - categories_Lo, // 003500 - categories_Lo, // 003600 - categories_Lo, // 003700 - categories_Lo, // 003800 - categories_Lo, // 003900 - categories_Lo, // 003A00 - categories_Lo, // 003B00 - categories_Lo, // 003C00 - categories_Lo, // 003D00 - categories_Lo, // 003E00 - categories_Lo, // 003F00 - categories_Lo, // 004000 - categories_Lo, // 004100 - categories_Lo, // 004200 - categories_Lo, // 004300 - categories_Lo, // 004400 - categories_Lo, // 004500 - categories_Lo, // 004600 - categories_Lo, // 004700 - categories_Lo, // 004800 - categories_Lo, // 004900 - categories_Lo, // 004A00 - categories_Lo, // 004B00 - categories_Lo, // 004C00 + categories_So, /* 003300 */ + categories_Lo, /* 003400 */ + categories_Lo, /* 003500 */ + categories_Lo, /* 003600 */ + categories_Lo, /* 003700 */ + categories_Lo, /* 003800 */ + categories_Lo, /* 003900 */ + categories_Lo, /* 003A00 */ + categories_Lo, /* 003B00 */ + categories_Lo, /* 003C00 */ + categories_Lo, /* 003D00 */ + categories_Lo, /* 003E00 */ + categories_Lo, /* 003F00 */ + categories_Lo, /* 004000 */ + categories_Lo, /* 004100 */ + categories_Lo, /* 004200 */ + categories_Lo, /* 004300 */ + categories_Lo, /* 004400 */ + categories_Lo, /* 004500 */ + categories_Lo, /* 004600 */ + categories_Lo, /* 004700 */ + categories_Lo, /* 004800 */ + categories_Lo, /* 004900 */ + categories_Lo, /* 004A00 */ + categories_Lo, /* 004B00 */ + categories_Lo, /* 004C00 */ categories_004D00, - categories_Lo, // 004E00 - categories_Lo, // 004F00 - categories_Lo, // 005000 - categories_Lo, // 005100 - categories_Lo, // 005200 - categories_Lo, // 005300 - categories_Lo, // 005400 - categories_Lo, // 005500 - categories_Lo, // 005600 - categories_Lo, // 005700 - categories_Lo, // 005800 - categories_Lo, // 005900 - categories_Lo, // 005A00 - categories_Lo, // 005B00 - categories_Lo, // 005C00 - categories_Lo, // 005D00 - categories_Lo, // 005E00 - categories_Lo, // 005F00 - categories_Lo, // 006000 - categories_Lo, // 006100 - categories_Lo, // 006200 - categories_Lo, // 006300 - categories_Lo, // 006400 - categories_Lo, // 006500 - categories_Lo, // 006600 - categories_Lo, // 006700 - categories_Lo, // 006800 - categories_Lo, // 006900 - categories_Lo, // 006A00 - categories_Lo, // 006B00 - categories_Lo, // 006C00 - categories_Lo, // 006D00 - categories_Lo, // 006E00 - categories_Lo, // 006F00 - categories_Lo, // 007000 - categories_Lo, // 007100 - categories_Lo, // 007200 - categories_Lo, // 007300 - categories_Lo, // 007400 - categories_Lo, // 007500 - categories_Lo, // 007600 - categories_Lo, // 007700 - categories_Lo, // 007800 - categories_Lo, // 007900 - categories_Lo, // 007A00 - categories_Lo, // 007B00 - categories_Lo, // 007C00 - categories_Lo, // 007D00 - categories_Lo, // 007E00 - categories_Lo, // 007F00 - categories_Lo, // 008000 - categories_Lo, // 008100 - categories_Lo, // 008200 - categories_Lo, // 008300 - categories_Lo, // 008400 - categories_Lo, // 008500 - categories_Lo, // 008600 - categories_Lo, // 008700 - categories_Lo, // 008800 - categories_Lo, // 008900 - categories_Lo, // 008A00 - categories_Lo, // 008B00 - categories_Lo, // 008C00 - categories_Lo, // 008D00 - categories_Lo, // 008E00 - categories_Lo, // 008F00 - categories_Lo, // 009000 - categories_Lo, // 009100 - categories_Lo, // 009200 - categories_Lo, // 009300 - categories_Lo, // 009400 - categories_Lo, // 009500 - categories_Lo, // 009600 - categories_Lo, // 009700 - categories_Lo, // 009800 - categories_Lo, // 009900 - categories_Lo, // 009A00 - categories_Lo, // 009B00 - categories_Lo, // 009C00 - categories_Lo, // 009D00 - categories_Lo, // 009E00 + categories_Lo, /* 004E00 */ + categories_Lo, /* 004F00 */ + categories_Lo, /* 005000 */ + categories_Lo, /* 005100 */ + categories_Lo, /* 005200 */ + categories_Lo, /* 005300 */ + categories_Lo, /* 005400 */ + categories_Lo, /* 005500 */ + categories_Lo, /* 005600 */ + categories_Lo, /* 005700 */ + categories_Lo, /* 005800 */ + categories_Lo, /* 005900 */ + categories_Lo, /* 005A00 */ + categories_Lo, /* 005B00 */ + categories_Lo, /* 005C00 */ + categories_Lo, /* 005D00 */ + categories_Lo, /* 005E00 */ + categories_Lo, /* 005F00 */ + categories_Lo, /* 006000 */ + categories_Lo, /* 006100 */ + categories_Lo, /* 006200 */ + categories_Lo, /* 006300 */ + categories_Lo, /* 006400 */ + categories_Lo, /* 006500 */ + categories_Lo, /* 006600 */ + categories_Lo, /* 006700 */ + categories_Lo, /* 006800 */ + categories_Lo, /* 006900 */ + categories_Lo, /* 006A00 */ + categories_Lo, /* 006B00 */ + categories_Lo, /* 006C00 */ + categories_Lo, /* 006D00 */ + categories_Lo, /* 006E00 */ + categories_Lo, /* 006F00 */ + categories_Lo, /* 007000 */ + categories_Lo, /* 007100 */ + categories_Lo, /* 007200 */ + categories_Lo, /* 007300 */ + categories_Lo, /* 007400 */ + categories_Lo, /* 007500 */ + categories_Lo, /* 007600 */ + categories_Lo, /* 007700 */ + categories_Lo, /* 007800 */ + categories_Lo, /* 007900 */ + categories_Lo, /* 007A00 */ + categories_Lo, /* 007B00 */ + categories_Lo, /* 007C00 */ + categories_Lo, /* 007D00 */ + categories_Lo, /* 007E00 */ + categories_Lo, /* 007F00 */ + categories_Lo, /* 008000 */ + categories_Lo, /* 008100 */ + categories_Lo, /* 008200 */ + categories_Lo, /* 008300 */ + categories_Lo, /* 008400 */ + categories_Lo, /* 008500 */ + categories_Lo, /* 008600 */ + categories_Lo, /* 008700 */ + categories_Lo, /* 008800 */ + categories_Lo, /* 008900 */ + categories_Lo, /* 008A00 */ + categories_Lo, /* 008B00 */ + categories_Lo, /* 008C00 */ + categories_Lo, /* 008D00 */ + categories_Lo, /* 008E00 */ + categories_Lo, /* 008F00 */ + categories_Lo, /* 009000 */ + categories_Lo, /* 009100 */ + categories_Lo, /* 009200 */ + categories_Lo, /* 009300 */ + categories_Lo, /* 009400 */ + categories_Lo, /* 009500 */ + categories_Lo, /* 009600 */ + categories_Lo, /* 009700 */ + categories_Lo, /* 009800 */ + categories_Lo, /* 009900 */ + categories_Lo, /* 009A00 */ + categories_Lo, /* 009B00 */ + categories_Lo, /* 009C00 */ + categories_Lo, /* 009D00 */ + categories_Lo, /* 009E00 */ categories_009F00, categories_00A000, - categories_Lo, // 00A100 - categories_Lo, // 00A200 - categories_Lo, // 00A300 + categories_Lo, /* 00A100 */ + categories_Lo, /* 00A200 */ + categories_Lo, /* 00A300 */ categories_00A400, - categories_Lo, // 00A500 + categories_Lo, /* 00A500 */ categories_00A600, categories_00A700, categories_00A800, categories_00A900, categories_00AA00, categories_00AB00, - categories_Lo, // 00AC00 - categories_Lo, // 00AD00 - categories_Lo, // 00AE00 - categories_Lo, // 00AF00 - categories_Lo, // 00B000 - categories_Lo, // 00B100 - categories_Lo, // 00B200 - categories_Lo, // 00B300 - categories_Lo, // 00B400 - categories_Lo, // 00B500 - categories_Lo, // 00B600 - categories_Lo, // 00B700 - categories_Lo, // 00B800 - categories_Lo, // 00B900 - categories_Lo, // 00BA00 - categories_Lo, // 00BB00 - categories_Lo, // 00BC00 - categories_Lo, // 00BD00 - categories_Lo, // 00BE00 - categories_Lo, // 00BF00 - categories_Lo, // 00C000 - categories_Lo, // 00C100 - categories_Lo, // 00C200 - categories_Lo, // 00C300 - categories_Lo, // 00C400 - categories_Lo, // 00C500 - categories_Lo, // 00C600 - categories_Lo, // 00C700 - categories_Lo, // 00C800 - categories_Lo, // 00C900 - categories_Lo, // 00CA00 - categories_Lo, // 00CB00 - categories_Lo, // 00CC00 - categories_Lo, // 00CD00 - categories_Lo, // 00CE00 - categories_Lo, // 00CF00 - categories_Lo, // 00D000 - categories_Lo, // 00D100 - categories_Lo, // 00D200 - categories_Lo, // 00D300 - categories_Lo, // 00D400 - categories_Lo, // 00D500 - categories_Lo, // 00D600 + categories_Lo, /* 00AC00 */ + categories_Lo, /* 00AD00 */ + categories_Lo, /* 00AE00 */ + categories_Lo, /* 00AF00 */ + categories_Lo, /* 00B000 */ + categories_Lo, /* 00B100 */ + categories_Lo, /* 00B200 */ + categories_Lo, /* 00B300 */ + categories_Lo, /* 00B400 */ + categories_Lo, /* 00B500 */ + categories_Lo, /* 00B600 */ + categories_Lo, /* 00B700 */ + categories_Lo, /* 00B800 */ + categories_Lo, /* 00B900 */ + categories_Lo, /* 00BA00 */ + categories_Lo, /* 00BB00 */ + categories_Lo, /* 00BC00 */ + categories_Lo, /* 00BD00 */ + categories_Lo, /* 00BE00 */ + categories_Lo, /* 00BF00 */ + categories_Lo, /* 00C000 */ + categories_Lo, /* 00C100 */ + categories_Lo, /* 00C200 */ + categories_Lo, /* 00C300 */ + categories_Lo, /* 00C400 */ + categories_Lo, /* 00C500 */ + categories_Lo, /* 00C600 */ + categories_Lo, /* 00C700 */ + categories_Lo, /* 00C800 */ + categories_Lo, /* 00C900 */ + categories_Lo, /* 00CA00 */ + categories_Lo, /* 00CB00 */ + categories_Lo, /* 00CC00 */ + categories_Lo, /* 00CD00 */ + categories_Lo, /* 00CE00 */ + categories_Lo, /* 00CF00 */ + categories_Lo, /* 00D000 */ + categories_Lo, /* 00D100 */ + categories_Lo, /* 00D200 */ + categories_Lo, /* 00D300 */ + categories_Lo, /* 00D400 */ + categories_Lo, /* 00D500 */ + categories_Lo, /* 00D600 */ categories_00D700, }; static const uint8_t *categories_00F800_02FAFF[] = { - categories_Co, // 00F800 - categories_Lo, // 00F900 + categories_Co, /* 00F800 */ + categories_Lo, /* 00F900 */ categories_00FA00, categories_00FB00, - categories_Lo, // 00FC00 + categories_Lo, /* 00FC00 */ categories_00FD00, categories_00FE00, categories_00FF00, @@ -2915,16 +2916,16 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_010300, categories_010400, categories_010500, - categories_Lo, // 010600 + categories_Lo, /* 010600 */ categories_010700, categories_010800, categories_010900, categories_010A00, categories_010B00, categories_010C00, - categories_Cn, // 010D00 + categories_Cn, /* 010D00 */ categories_010E00, - categories_Cn, // 010F00 + categories_Cn, /* 010F00 */ categories_011000, categories_011100, categories_011200, @@ -2934,189 +2935,189 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_011600, categories_011700, categories_011800, - categories_Cn, // 011900 + categories_Cn, /* 011900 */ categories_011A00, - categories_Cn, // 011B00 + categories_Cn, /* 011B00 */ categories_011C00, - categories_Cn, // 011D00 - categories_Cn, // 011E00 - categories_Cn, // 011F00 - categories_Lo, // 012000 - categories_Lo, // 012100 - categories_Lo, // 012200 + categories_Cn, /* 011D00 */ + categories_Cn, /* 011E00 */ + categories_Cn, /* 011F00 */ + categories_Lo, /* 012000 */ + categories_Lo, /* 012100 */ + categories_Lo, /* 012200 */ categories_012300, categories_012400, categories_012500, - categories_Cn, // 012600 - categories_Cn, // 012700 - categories_Cn, // 012800 - categories_Cn, // 012900 - categories_Cn, // 012A00 - categories_Cn, // 012B00 - categories_Cn, // 012C00 - categories_Cn, // 012D00 - categories_Cn, // 012E00 - categories_Cn, // 012F00 - categories_Lo, // 013000 - categories_Lo, // 013100 - categories_Lo, // 013200 - categories_Lo, // 013300 + categories_Cn, /* 012600 */ + categories_Cn, /* 012700 */ + categories_Cn, /* 012800 */ + categories_Cn, /* 012900 */ + categories_Cn, /* 012A00 */ + categories_Cn, /* 012B00 */ + categories_Cn, /* 012C00 */ + categories_Cn, /* 012D00 */ + categories_Cn, /* 012E00 */ + categories_Cn, /* 012F00 */ + categories_Lo, /* 013000 */ + categories_Lo, /* 013100 */ + categories_Lo, /* 013200 */ + categories_Lo, /* 013300 */ categories_013400, - categories_Cn, // 013500 - categories_Cn, // 013600 - categories_Cn, // 013700 - categories_Cn, // 013800 - categories_Cn, // 013900 - categories_Cn, // 013A00 - categories_Cn, // 013B00 - categories_Cn, // 013C00 - categories_Cn, // 013D00 - categories_Cn, // 013E00 - categories_Cn, // 013F00 - categories_Cn, // 014000 - categories_Cn, // 014100 - categories_Cn, // 014200 - categories_Cn, // 014300 - categories_Lo, // 014400 - categories_Lo, // 014500 + categories_Cn, /* 013500 */ + categories_Cn, /* 013600 */ + categories_Cn, /* 013700 */ + categories_Cn, /* 013800 */ + categories_Cn, /* 013900 */ + categories_Cn, /* 013A00 */ + categories_Cn, /* 013B00 */ + categories_Cn, /* 013C00 */ + categories_Cn, /* 013D00 */ + categories_Cn, /* 013E00 */ + categories_Cn, /* 013F00 */ + categories_Cn, /* 014000 */ + categories_Cn, /* 014100 */ + categories_Cn, /* 014200 */ + categories_Cn, /* 014300 */ + categories_Lo, /* 014400 */ + categories_Lo, /* 014500 */ categories_014600, - categories_Cn, // 014700 - categories_Cn, // 014800 - categories_Cn, // 014900 - categories_Cn, // 014A00 - categories_Cn, // 014B00 - categories_Cn, // 014C00 - categories_Cn, // 014D00 - categories_Cn, // 014E00 - categories_Cn, // 014F00 - categories_Cn, // 015000 - categories_Cn, // 015100 - categories_Cn, // 015200 - categories_Cn, // 015300 - categories_Cn, // 015400 - categories_Cn, // 015500 - categories_Cn, // 015600 - categories_Cn, // 015700 - categories_Cn, // 015800 - categories_Cn, // 015900 - categories_Cn, // 015A00 - categories_Cn, // 015B00 - categories_Cn, // 015C00 - categories_Cn, // 015D00 - categories_Cn, // 015E00 - categories_Cn, // 015F00 - categories_Cn, // 016000 - categories_Cn, // 016100 - categories_Cn, // 016200 - categories_Cn, // 016300 - categories_Cn, // 016400 - categories_Cn, // 016500 - categories_Cn, // 016600 - categories_Cn, // 016700 - categories_Lo, // 016800 - categories_Lo, // 016900 + categories_Cn, /* 014700 */ + categories_Cn, /* 014800 */ + categories_Cn, /* 014900 */ + categories_Cn, /* 014A00 */ + categories_Cn, /* 014B00 */ + categories_Cn, /* 014C00 */ + categories_Cn, /* 014D00 */ + categories_Cn, /* 014E00 */ + categories_Cn, /* 014F00 */ + categories_Cn, /* 015000 */ + categories_Cn, /* 015100 */ + categories_Cn, /* 015200 */ + categories_Cn, /* 015300 */ + categories_Cn, /* 015400 */ + categories_Cn, /* 015500 */ + categories_Cn, /* 015600 */ + categories_Cn, /* 015700 */ + categories_Cn, /* 015800 */ + categories_Cn, /* 015900 */ + categories_Cn, /* 015A00 */ + categories_Cn, /* 015B00 */ + categories_Cn, /* 015C00 */ + categories_Cn, /* 015D00 */ + categories_Cn, /* 015E00 */ + categories_Cn, /* 015F00 */ + categories_Cn, /* 016000 */ + categories_Cn, /* 016100 */ + categories_Cn, /* 016200 */ + categories_Cn, /* 016300 */ + categories_Cn, /* 016400 */ + categories_Cn, /* 016500 */ + categories_Cn, /* 016600 */ + categories_Cn, /* 016700 */ + categories_Lo, /* 016800 */ + categories_Lo, /* 016900 */ categories_016A00, categories_016B00, - categories_Cn, // 016C00 - categories_Cn, // 016D00 - categories_Cn, // 016E00 + categories_Cn, /* 016C00 */ + categories_Cn, /* 016D00 */ + categories_Cn, /* 016E00 */ categories_016F00, - categories_Lo, // 017000 - categories_Lo, // 017100 - categories_Lo, // 017200 - categories_Lo, // 017300 - categories_Lo, // 017400 - categories_Lo, // 017500 - categories_Lo, // 017600 - categories_Lo, // 017700 - categories_Lo, // 017800 - categories_Lo, // 017900 - categories_Lo, // 017A00 - categories_Lo, // 017B00 - categories_Lo, // 017C00 - categories_Lo, // 017D00 - categories_Lo, // 017E00 - categories_Lo, // 017F00 - categories_Lo, // 018000 - categories_Lo, // 018100 - categories_Lo, // 018200 - categories_Lo, // 018300 - categories_Lo, // 018400 - categories_Lo, // 018500 - categories_Lo, // 018600 + categories_Lo, /* 017000 */ + categories_Lo, /* 017100 */ + categories_Lo, /* 017200 */ + categories_Lo, /* 017300 */ + categories_Lo, /* 017400 */ + categories_Lo, /* 017500 */ + categories_Lo, /* 017600 */ + categories_Lo, /* 017700 */ + categories_Lo, /* 017800 */ + categories_Lo, /* 017900 */ + categories_Lo, /* 017A00 */ + categories_Lo, /* 017B00 */ + categories_Lo, /* 017C00 */ + categories_Lo, /* 017D00 */ + categories_Lo, /* 017E00 */ + categories_Lo, /* 017F00 */ + categories_Lo, /* 018000 */ + categories_Lo, /* 018100 */ + categories_Lo, /* 018200 */ + categories_Lo, /* 018300 */ + categories_Lo, /* 018400 */ + categories_Lo, /* 018500 */ + categories_Lo, /* 018600 */ categories_018700, - categories_Lo, // 018800 - categories_Lo, // 018900 + categories_Lo, /* 018800 */ + categories_Lo, /* 018900 */ categories_018A00, - categories_Cn, // 018B00 - categories_Cn, // 018C00 - categories_Cn, // 018D00 - categories_Cn, // 018E00 - categories_Cn, // 018F00 - categories_Cn, // 019000 - categories_Cn, // 019100 - categories_Cn, // 019200 - categories_Cn, // 019300 - categories_Cn, // 019400 - categories_Cn, // 019500 - categories_Cn, // 019600 - categories_Cn, // 019700 - categories_Cn, // 019800 - categories_Cn, // 019900 - categories_Cn, // 019A00 - categories_Cn, // 019B00 - categories_Cn, // 019C00 - categories_Cn, // 019D00 - categories_Cn, // 019E00 - categories_Cn, // 019F00 - categories_Cn, // 01A000 - categories_Cn, // 01A100 - categories_Cn, // 01A200 - categories_Cn, // 01A300 - categories_Cn, // 01A400 - categories_Cn, // 01A500 - categories_Cn, // 01A600 - categories_Cn, // 01A700 - categories_Cn, // 01A800 - categories_Cn, // 01A900 - categories_Cn, // 01AA00 - categories_Cn, // 01AB00 - categories_Cn, // 01AC00 - categories_Cn, // 01AD00 - categories_Cn, // 01AE00 - categories_Cn, // 01AF00 + categories_Cn, /* 018B00 */ + categories_Cn, /* 018C00 */ + categories_Cn, /* 018D00 */ + categories_Cn, /* 018E00 */ + categories_Cn, /* 018F00 */ + categories_Cn, /* 019000 */ + categories_Cn, /* 019100 */ + categories_Cn, /* 019200 */ + categories_Cn, /* 019300 */ + categories_Cn, /* 019400 */ + categories_Cn, /* 019500 */ + categories_Cn, /* 019600 */ + categories_Cn, /* 019700 */ + categories_Cn, /* 019800 */ + categories_Cn, /* 019900 */ + categories_Cn, /* 019A00 */ + categories_Cn, /* 019B00 */ + categories_Cn, /* 019C00 */ + categories_Cn, /* 019D00 */ + categories_Cn, /* 019E00 */ + categories_Cn, /* 019F00 */ + categories_Cn, /* 01A000 */ + categories_Cn, /* 01A100 */ + categories_Cn, /* 01A200 */ + categories_Cn, /* 01A300 */ + categories_Cn, /* 01A400 */ + categories_Cn, /* 01A500 */ + categories_Cn, /* 01A600 */ + categories_Cn, /* 01A700 */ + categories_Cn, /* 01A800 */ + categories_Cn, /* 01A900 */ + categories_Cn, /* 01AA00 */ + categories_Cn, /* 01AB00 */ + categories_Cn, /* 01AC00 */ + categories_Cn, /* 01AD00 */ + categories_Cn, /* 01AE00 */ + categories_Cn, /* 01AF00 */ categories_01B000, - categories_Cn, // 01B100 - categories_Cn, // 01B200 - categories_Cn, // 01B300 - categories_Cn, // 01B400 - categories_Cn, // 01B500 - categories_Cn, // 01B600 - categories_Cn, // 01B700 - categories_Cn, // 01B800 - categories_Cn, // 01B900 - categories_Cn, // 01BA00 - categories_Cn, // 01BB00 + categories_Cn, /* 01B100 */ + categories_Cn, /* 01B200 */ + categories_Cn, /* 01B300 */ + categories_Cn, /* 01B400 */ + categories_Cn, /* 01B500 */ + categories_Cn, /* 01B600 */ + categories_Cn, /* 01B700 */ + categories_Cn, /* 01B800 */ + categories_Cn, /* 01B900 */ + categories_Cn, /* 01BA00 */ + categories_Cn, /* 01BB00 */ categories_01BC00, - categories_Cn, // 01BD00 - categories_Cn, // 01BE00 - categories_Cn, // 01BF00 - categories_Cn, // 01C000 - categories_Cn, // 01C100 - categories_Cn, // 01C200 - categories_Cn, // 01C300 - categories_Cn, // 01C400 - categories_Cn, // 01C500 - categories_Cn, // 01C600 - categories_Cn, // 01C700 - categories_Cn, // 01C800 - categories_Cn, // 01C900 - categories_Cn, // 01CA00 - categories_Cn, // 01CB00 - categories_Cn, // 01CC00 - categories_Cn, // 01CD00 - categories_Cn, // 01CE00 - categories_Cn, // 01CF00 + categories_Cn, /* 01BD00 */ + categories_Cn, /* 01BE00 */ + categories_Cn, /* 01BF00 */ + categories_Cn, /* 01C000 */ + categories_Cn, /* 01C100 */ + categories_Cn, /* 01C200 */ + categories_Cn, /* 01C300 */ + categories_Cn, /* 01C400 */ + categories_Cn, /* 01C500 */ + categories_Cn, /* 01C600 */ + categories_Cn, /* 01C700 */ + categories_Cn, /* 01C800 */ + categories_Cn, /* 01C900 */ + categories_Cn, /* 01CA00 */ + categories_Cn, /* 01CB00 */ + categories_Cn, /* 01CC00 */ + categories_Cn, /* 01CD00 */ + categories_Cn, /* 01CE00 */ + categories_Cn, /* 01CF00 */ categories_01D000, categories_01D100, categories_01D200, @@ -3125,296 +3126,296 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_01D500, categories_01D600, categories_01D700, - categories_So, // 01D800 - categories_So, // 01D900 + categories_So, /* 01D800 */ + categories_So, /* 01D900 */ categories_01DA00, - categories_Cn, // 01DB00 - categories_Cn, // 01DC00 - categories_Cn, // 01DD00 - categories_Cn, // 01DE00 - categories_Cn, // 01DF00 + categories_Cn, /* 01DB00 */ + categories_Cn, /* 01DC00 */ + categories_Cn, /* 01DD00 */ + categories_Cn, /* 01DE00 */ + categories_Cn, /* 01DF00 */ categories_01E000, - categories_Cn, // 01E100 - categories_Cn, // 01E200 - categories_Cn, // 01E300 - categories_Cn, // 01E400 - categories_Cn, // 01E500 - categories_Cn, // 01E600 - categories_Cn, // 01E700 + categories_Cn, /* 01E100 */ + categories_Cn, /* 01E200 */ + categories_Cn, /* 01E300 */ + categories_Cn, /* 01E400 */ + categories_Cn, /* 01E500 */ + categories_Cn, /* 01E600 */ + categories_Cn, /* 01E700 */ categories_01E800, categories_01E900, - categories_Cn, // 01EA00 - categories_Cn, // 01EB00 - categories_Cn, // 01EC00 - categories_Cn, // 01ED00 + categories_Cn, /* 01EA00 */ + categories_Cn, /* 01EB00 */ + categories_Cn, /* 01EC00 */ + categories_Cn, /* 01ED00 */ categories_01EE00, - categories_Cn, // 01EF00 + categories_Cn, /* 01EF00 */ categories_01F000, categories_01F100, categories_01F200, categories_01F300, - categories_So, // 01F400 - categories_So, // 01F500 + categories_So, /* 01F400 */ + categories_So, /* 01F500 */ categories_01F600, categories_01F700, categories_01F800, categories_01F900, - categories_Cn, // 01FA00 - categories_Cn, // 01FB00 - categories_Cn, // 01FC00 - categories_Cn, // 01FD00 - categories_Cn, // 01FE00 - categories_Cn, // 01FF00 - categories_Lo, // 020000 - categories_Lo, // 020100 - categories_Lo, // 020200 - categories_Lo, // 020300 - categories_Lo, // 020400 - categories_Lo, // 020500 - categories_Lo, // 020600 - categories_Lo, // 020700 - categories_Lo, // 020800 - categories_Lo, // 020900 - categories_Lo, // 020A00 - categories_Lo, // 020B00 - categories_Lo, // 020C00 - categories_Lo, // 020D00 - categories_Lo, // 020E00 - categories_Lo, // 020F00 - categories_Lo, // 021000 - categories_Lo, // 021100 - categories_Lo, // 021200 - categories_Lo, // 021300 - categories_Lo, // 021400 - categories_Lo, // 021500 - categories_Lo, // 021600 - categories_Lo, // 021700 - categories_Lo, // 021800 - categories_Lo, // 021900 - categories_Lo, // 021A00 - categories_Lo, // 021B00 - categories_Lo, // 021C00 - categories_Lo, // 021D00 - categories_Lo, // 021E00 - categories_Lo, // 021F00 - categories_Lo, // 022000 - categories_Lo, // 022100 - categories_Lo, // 022200 - categories_Lo, // 022300 - categories_Lo, // 022400 - categories_Lo, // 022500 - categories_Lo, // 022600 - categories_Lo, // 022700 - categories_Lo, // 022800 - categories_Lo, // 022900 - categories_Lo, // 022A00 - categories_Lo, // 022B00 - categories_Lo, // 022C00 - categories_Lo, // 022D00 - categories_Lo, // 022E00 - categories_Lo, // 022F00 - categories_Lo, // 023000 - categories_Lo, // 023100 - categories_Lo, // 023200 - categories_Lo, // 023300 - categories_Lo, // 023400 - categories_Lo, // 023500 - categories_Lo, // 023600 - categories_Lo, // 023700 - categories_Lo, // 023800 - categories_Lo, // 023900 - categories_Lo, // 023A00 - categories_Lo, // 023B00 - categories_Lo, // 023C00 - categories_Lo, // 023D00 - categories_Lo, // 023E00 - categories_Lo, // 023F00 - categories_Lo, // 024000 - categories_Lo, // 024100 - categories_Lo, // 024200 - categories_Lo, // 024300 - categories_Lo, // 024400 - categories_Lo, // 024500 - categories_Lo, // 024600 - categories_Lo, // 024700 - categories_Lo, // 024800 - categories_Lo, // 024900 - categories_Lo, // 024A00 - categories_Lo, // 024B00 - categories_Lo, // 024C00 - categories_Lo, // 024D00 - categories_Lo, // 024E00 - categories_Lo, // 024F00 - categories_Lo, // 025000 - categories_Lo, // 025100 - categories_Lo, // 025200 - categories_Lo, // 025300 - categories_Lo, // 025400 - categories_Lo, // 025500 - categories_Lo, // 025600 - categories_Lo, // 025700 - categories_Lo, // 025800 - categories_Lo, // 025900 - categories_Lo, // 025A00 - categories_Lo, // 025B00 - categories_Lo, // 025C00 - categories_Lo, // 025D00 - categories_Lo, // 025E00 - categories_Lo, // 025F00 - categories_Lo, // 026000 - categories_Lo, // 026100 - categories_Lo, // 026200 - categories_Lo, // 026300 - categories_Lo, // 026400 - categories_Lo, // 026500 - categories_Lo, // 026600 - categories_Lo, // 026700 - categories_Lo, // 026800 - categories_Lo, // 026900 - categories_Lo, // 026A00 - categories_Lo, // 026B00 - categories_Lo, // 026C00 - categories_Lo, // 026D00 - categories_Lo, // 026E00 - categories_Lo, // 026F00 - categories_Lo, // 027000 - categories_Lo, // 027100 - categories_Lo, // 027200 - categories_Lo, // 027300 - categories_Lo, // 027400 - categories_Lo, // 027500 - categories_Lo, // 027600 - categories_Lo, // 027700 - categories_Lo, // 027800 - categories_Lo, // 027900 - categories_Lo, // 027A00 - categories_Lo, // 027B00 - categories_Lo, // 027C00 - categories_Lo, // 027D00 - categories_Lo, // 027E00 - categories_Lo, // 027F00 - categories_Lo, // 028000 - categories_Lo, // 028100 - categories_Lo, // 028200 - categories_Lo, // 028300 - categories_Lo, // 028400 - categories_Lo, // 028500 - categories_Lo, // 028600 - categories_Lo, // 028700 - categories_Lo, // 028800 - categories_Lo, // 028900 - categories_Lo, // 028A00 - categories_Lo, // 028B00 - categories_Lo, // 028C00 - categories_Lo, // 028D00 - categories_Lo, // 028E00 - categories_Lo, // 028F00 - categories_Lo, // 029000 - categories_Lo, // 029100 - categories_Lo, // 029200 - categories_Lo, // 029300 - categories_Lo, // 029400 - categories_Lo, // 029500 - categories_Lo, // 029600 - categories_Lo, // 029700 - categories_Lo, // 029800 - categories_Lo, // 029900 - categories_Lo, // 029A00 - categories_Lo, // 029B00 - categories_Lo, // 029C00 - categories_Lo, // 029D00 - categories_Lo, // 029E00 - categories_Lo, // 029F00 - categories_Lo, // 02A000 - categories_Lo, // 02A100 - categories_Lo, // 02A200 - categories_Lo, // 02A300 - categories_Lo, // 02A400 - categories_Lo, // 02A500 + categories_Cn, /* 01FA00 */ + categories_Cn, /* 01FB00 */ + categories_Cn, /* 01FC00 */ + categories_Cn, /* 01FD00 */ + categories_Cn, /* 01FE00 */ + categories_Cn, /* 01FF00 */ + categories_Lo, /* 020000 */ + categories_Lo, /* 020100 */ + categories_Lo, /* 020200 */ + categories_Lo, /* 020300 */ + categories_Lo, /* 020400 */ + categories_Lo, /* 020500 */ + categories_Lo, /* 020600 */ + categories_Lo, /* 020700 */ + categories_Lo, /* 020800 */ + categories_Lo, /* 020900 */ + categories_Lo, /* 020A00 */ + categories_Lo, /* 020B00 */ + categories_Lo, /* 020C00 */ + categories_Lo, /* 020D00 */ + categories_Lo, /* 020E00 */ + categories_Lo, /* 020F00 */ + categories_Lo, /* 021000 */ + categories_Lo, /* 021100 */ + categories_Lo, /* 021200 */ + categories_Lo, /* 021300 */ + categories_Lo, /* 021400 */ + categories_Lo, /* 021500 */ + categories_Lo, /* 021600 */ + categories_Lo, /* 021700 */ + categories_Lo, /* 021800 */ + categories_Lo, /* 021900 */ + categories_Lo, /* 021A00 */ + categories_Lo, /* 021B00 */ + categories_Lo, /* 021C00 */ + categories_Lo, /* 021D00 */ + categories_Lo, /* 021E00 */ + categories_Lo, /* 021F00 */ + categories_Lo, /* 022000 */ + categories_Lo, /* 022100 */ + categories_Lo, /* 022200 */ + categories_Lo, /* 022300 */ + categories_Lo, /* 022400 */ + categories_Lo, /* 022500 */ + categories_Lo, /* 022600 */ + categories_Lo, /* 022700 */ + categories_Lo, /* 022800 */ + categories_Lo, /* 022900 */ + categories_Lo, /* 022A00 */ + categories_Lo, /* 022B00 */ + categories_Lo, /* 022C00 */ + categories_Lo, /* 022D00 */ + categories_Lo, /* 022E00 */ + categories_Lo, /* 022F00 */ + categories_Lo, /* 023000 */ + categories_Lo, /* 023100 */ + categories_Lo, /* 023200 */ + categories_Lo, /* 023300 */ + categories_Lo, /* 023400 */ + categories_Lo, /* 023500 */ + categories_Lo, /* 023600 */ + categories_Lo, /* 023700 */ + categories_Lo, /* 023800 */ + categories_Lo, /* 023900 */ + categories_Lo, /* 023A00 */ + categories_Lo, /* 023B00 */ + categories_Lo, /* 023C00 */ + categories_Lo, /* 023D00 */ + categories_Lo, /* 023E00 */ + categories_Lo, /* 023F00 */ + categories_Lo, /* 024000 */ + categories_Lo, /* 024100 */ + categories_Lo, /* 024200 */ + categories_Lo, /* 024300 */ + categories_Lo, /* 024400 */ + categories_Lo, /* 024500 */ + categories_Lo, /* 024600 */ + categories_Lo, /* 024700 */ + categories_Lo, /* 024800 */ + categories_Lo, /* 024900 */ + categories_Lo, /* 024A00 */ + categories_Lo, /* 024B00 */ + categories_Lo, /* 024C00 */ + categories_Lo, /* 024D00 */ + categories_Lo, /* 024E00 */ + categories_Lo, /* 024F00 */ + categories_Lo, /* 025000 */ + categories_Lo, /* 025100 */ + categories_Lo, /* 025200 */ + categories_Lo, /* 025300 */ + categories_Lo, /* 025400 */ + categories_Lo, /* 025500 */ + categories_Lo, /* 025600 */ + categories_Lo, /* 025700 */ + categories_Lo, /* 025800 */ + categories_Lo, /* 025900 */ + categories_Lo, /* 025A00 */ + categories_Lo, /* 025B00 */ + categories_Lo, /* 025C00 */ + categories_Lo, /* 025D00 */ + categories_Lo, /* 025E00 */ + categories_Lo, /* 025F00 */ + categories_Lo, /* 026000 */ + categories_Lo, /* 026100 */ + categories_Lo, /* 026200 */ + categories_Lo, /* 026300 */ + categories_Lo, /* 026400 */ + categories_Lo, /* 026500 */ + categories_Lo, /* 026600 */ + categories_Lo, /* 026700 */ + categories_Lo, /* 026800 */ + categories_Lo, /* 026900 */ + categories_Lo, /* 026A00 */ + categories_Lo, /* 026B00 */ + categories_Lo, /* 026C00 */ + categories_Lo, /* 026D00 */ + categories_Lo, /* 026E00 */ + categories_Lo, /* 026F00 */ + categories_Lo, /* 027000 */ + categories_Lo, /* 027100 */ + categories_Lo, /* 027200 */ + categories_Lo, /* 027300 */ + categories_Lo, /* 027400 */ + categories_Lo, /* 027500 */ + categories_Lo, /* 027600 */ + categories_Lo, /* 027700 */ + categories_Lo, /* 027800 */ + categories_Lo, /* 027900 */ + categories_Lo, /* 027A00 */ + categories_Lo, /* 027B00 */ + categories_Lo, /* 027C00 */ + categories_Lo, /* 027D00 */ + categories_Lo, /* 027E00 */ + categories_Lo, /* 027F00 */ + categories_Lo, /* 028000 */ + categories_Lo, /* 028100 */ + categories_Lo, /* 028200 */ + categories_Lo, /* 028300 */ + categories_Lo, /* 028400 */ + categories_Lo, /* 028500 */ + categories_Lo, /* 028600 */ + categories_Lo, /* 028700 */ + categories_Lo, /* 028800 */ + categories_Lo, /* 028900 */ + categories_Lo, /* 028A00 */ + categories_Lo, /* 028B00 */ + categories_Lo, /* 028C00 */ + categories_Lo, /* 028D00 */ + categories_Lo, /* 028E00 */ + categories_Lo, /* 028F00 */ + categories_Lo, /* 029000 */ + categories_Lo, /* 029100 */ + categories_Lo, /* 029200 */ + categories_Lo, /* 029300 */ + categories_Lo, /* 029400 */ + categories_Lo, /* 029500 */ + categories_Lo, /* 029600 */ + categories_Lo, /* 029700 */ + categories_Lo, /* 029800 */ + categories_Lo, /* 029900 */ + categories_Lo, /* 029A00 */ + categories_Lo, /* 029B00 */ + categories_Lo, /* 029C00 */ + categories_Lo, /* 029D00 */ + categories_Lo, /* 029E00 */ + categories_Lo, /* 029F00 */ + categories_Lo, /* 02A000 */ + categories_Lo, /* 02A100 */ + categories_Lo, /* 02A200 */ + categories_Lo, /* 02A300 */ + categories_Lo, /* 02A400 */ + categories_Lo, /* 02A500 */ categories_02A600, - categories_Lo, // 02A700 - categories_Lo, // 02A800 - categories_Lo, // 02A900 - categories_Lo, // 02AA00 - categories_Lo, // 02AB00 - categories_Lo, // 02AC00 - categories_Lo, // 02AD00 - categories_Lo, // 02AE00 - categories_Lo, // 02AF00 - categories_Lo, // 02B000 - categories_Lo, // 02B100 - categories_Lo, // 02B200 - categories_Lo, // 02B300 - categories_Lo, // 02B400 - categories_Lo, // 02B500 - categories_Lo, // 02B600 + categories_Lo, /* 02A700 */ + categories_Lo, /* 02A800 */ + categories_Lo, /* 02A900 */ + categories_Lo, /* 02AA00 */ + categories_Lo, /* 02AB00 */ + categories_Lo, /* 02AC00 */ + categories_Lo, /* 02AD00 */ + categories_Lo, /* 02AE00 */ + categories_Lo, /* 02AF00 */ + categories_Lo, /* 02B000 */ + categories_Lo, /* 02B100 */ + categories_Lo, /* 02B200 */ + categories_Lo, /* 02B300 */ + categories_Lo, /* 02B400 */ + categories_Lo, /* 02B500 */ + categories_Lo, /* 02B600 */ categories_02B700, categories_02B800, - categories_Lo, // 02B900 - categories_Lo, // 02BA00 - categories_Lo, // 02BB00 - categories_Lo, // 02BC00 - categories_Lo, // 02BD00 - categories_Lo, // 02BE00 - categories_Lo, // 02BF00 - categories_Lo, // 02C000 - categories_Lo, // 02C100 - categories_Lo, // 02C200 - categories_Lo, // 02C300 - categories_Lo, // 02C400 - categories_Lo, // 02C500 - categories_Lo, // 02C600 - categories_Lo, // 02C700 - categories_Lo, // 02C800 - categories_Lo, // 02C900 - categories_Lo, // 02CA00 - categories_Lo, // 02CB00 - categories_Lo, // 02CC00 - categories_Lo, // 02CD00 + categories_Lo, /* 02B900 */ + categories_Lo, /* 02BA00 */ + categories_Lo, /* 02BB00 */ + categories_Lo, /* 02BC00 */ + categories_Lo, /* 02BD00 */ + categories_Lo, /* 02BE00 */ + categories_Lo, /* 02BF00 */ + categories_Lo, /* 02C000 */ + categories_Lo, /* 02C100 */ + categories_Lo, /* 02C200 */ + categories_Lo, /* 02C300 */ + categories_Lo, /* 02C400 */ + categories_Lo, /* 02C500 */ + categories_Lo, /* 02C600 */ + categories_Lo, /* 02C700 */ + categories_Lo, /* 02C800 */ + categories_Lo, /* 02C900 */ + categories_Lo, /* 02CA00 */ + categories_Lo, /* 02CB00 */ + categories_Lo, /* 02CC00 */ + categories_Lo, /* 02CD00 */ categories_02CE00, - categories_Cn, // 02CF00 - categories_Cn, // 02D000 - categories_Cn, // 02D100 - categories_Cn, // 02D200 - categories_Cn, // 02D300 - categories_Cn, // 02D400 - categories_Cn, // 02D500 - categories_Cn, // 02D600 - categories_Cn, // 02D700 - categories_Cn, // 02D800 - categories_Cn, // 02D900 - categories_Cn, // 02DA00 - categories_Cn, // 02DB00 - categories_Cn, // 02DC00 - categories_Cn, // 02DD00 - categories_Cn, // 02DE00 - categories_Cn, // 02DF00 - categories_Cn, // 02E000 - categories_Cn, // 02E100 - categories_Cn, // 02E200 - categories_Cn, // 02E300 - categories_Cn, // 02E400 - categories_Cn, // 02E500 - categories_Cn, // 02E600 - categories_Cn, // 02E700 - categories_Cn, // 02E800 - categories_Cn, // 02E900 - categories_Cn, // 02EA00 - categories_Cn, // 02EB00 - categories_Cn, // 02EC00 - categories_Cn, // 02ED00 - categories_Cn, // 02EE00 - categories_Cn, // 02EF00 - categories_Cn, // 02F000 - categories_Cn, // 02F100 - categories_Cn, // 02F200 - categories_Cn, // 02F300 - categories_Cn, // 02F400 - categories_Cn, // 02F500 - categories_Cn, // 02F600 - categories_Cn, // 02F700 - categories_Lo, // 02F800 - categories_Lo, // 02F900 + categories_Cn, /* 02CF00 */ + categories_Cn, /* 02D000 */ + categories_Cn, /* 02D100 */ + categories_Cn, /* 02D200 */ + categories_Cn, /* 02D300 */ + categories_Cn, /* 02D400 */ + categories_Cn, /* 02D500 */ + categories_Cn, /* 02D600 */ + categories_Cn, /* 02D700 */ + categories_Cn, /* 02D800 */ + categories_Cn, /* 02D900 */ + categories_Cn, /* 02DA00 */ + categories_Cn, /* 02DB00 */ + categories_Cn, /* 02DC00 */ + categories_Cn, /* 02DD00 */ + categories_Cn, /* 02DE00 */ + categories_Cn, /* 02DF00 */ + categories_Cn, /* 02E000 */ + categories_Cn, /* 02E100 */ + categories_Cn, /* 02E200 */ + categories_Cn, /* 02E300 */ + categories_Cn, /* 02E400 */ + categories_Cn, /* 02E500 */ + categories_Cn, /* 02E600 */ + categories_Cn, /* 02E700 */ + categories_Cn, /* 02E800 */ + categories_Cn, /* 02E900 */ + categories_Cn, /* 02EA00 */ + categories_Cn, /* 02EB00 */ + categories_Cn, /* 02EC00 */ + categories_Cn, /* 02ED00 */ + categories_Cn, /* 02EE00 */ + categories_Cn, /* 02EF00 */ + categories_Cn, /* 02F000 */ + categories_Cn, /* 02F100 */ + categories_Cn, /* 02F200 */ + categories_Cn, /* 02F300 */ + categories_Cn, /* 02F400 */ + categories_Cn, /* 02F500 */ + categories_Cn, /* 02F600 */ + categories_Cn, /* 02F700 */ + categories_Lo, /* 02F800 */ + categories_Lo, /* 02F900 */ categories_02FA00, }; @@ -3426,30 +3427,30 @@ static const uint8_t *categories_0E0000_0E01FF[] = ucd_category ucd_lookup_category(codepoint_t c) { - if (c <= 0x00D7FF) // 000000..00D7FF + if (c <= 0x00D7FF) /* 000000..00D7FF */ { const uint8_t *table = categories_000000_00D7FF[(c - 0x000000) / 256]; return (ucd_category)table[c % 256]; } - if (c <= 0x00DFFF) return Cs; // 00D800..00DFFF : Surrogates - if (c <= 0x00F7FF) return Co; // 00E000..00F7FF : Private Use Area - if (c <= 0x02FAFF) // 00F800..02FAFF + if (c <= 0x00DFFF) return Cs; /* 00D800..00DFFF : Surrogates */ + if (c <= 0x00F7FF) return Co; /* 00E000..00F7FF : Private Use Area */ + if (c <= 0x02FAFF) /* 00F800..02FAFF */ { const uint8_t *table = categories_00F800_02FAFF[(c - 0x00F800) / 256]; return (ucd_category)table[c % 256]; } - if (c <= 0x0DFFFF) return Cn; // 02FB00..0DFFFF : Unassigned - if (c <= 0x0E01FF) // 0E0000..0E01FF + if (c <= 0x0DFFFF) return Cn; /* 02FB00..0DFFFF : Unassigned */ + if (c <= 0x0E01FF) /* 0E0000..0E01FF */ { const uint8_t *table = categories_0E0000_0E01FF[(c - 0x0E0000) / 256]; return (ucd_category)table[c % 256]; } - if (c <= 0x0EFFFF) return Cn; // 0E0200..0EFFFF : Unassigned - if (c <= 0x0FFFFD) return Co; // 0F0000..0FFFFD : Plane 15 Private Use - if (c <= 0x0FFFFF) return Cn; // 0FFFFE..0FFFFF : Plane 15 Private Use - if (c <= 0x10FFFD) return Co; // 100000..10FFFD : Plane 16 Private Use - if (c <= 0x10FFFF) return Cn; // 10FFFE..10FFFF : Plane 16 Private Use - return Ii; // Invalid Unicode Codepoint + if (c <= 0x0EFFFF) return Cn; /* 0E0200..0EFFFF : Unassigned */ + if (c <= 0x0FFFFD) return Co; /* 0F0000..0FFFFD : Plane 15 Private Use */ + if (c <= 0x0FFFFF) return Cn; /* 0FFFFE..0FFFFF : Plane 15 Private Use */ + if (c <= 0x10FFFD) return Co; /* 100000..10FFFD : Plane 16 Private Use */ + if (c <= 0x10FFFF) return Cn; /* 10FFFE..10FFFF : Plane 16 Private Use */ + return Ii; /* Invalid Unicode Codepoint */ } ucd_category_group ucd_get_category_group_for_category(ucd_category c) diff --git a/src/ctype.c b/src/ctype.c index 5c8b025c..42bb9f58 100644 --- a/src/ctype.c +++ b/src/ctype.c @@ -69,16 +69,16 @@ int ucd_isblank(codepoint_t c) switch (ucd_lookup_category(c)) { case UCD_CATEGORY_Zs: - switch (c) // Exclude characters with the DispositionType + switch (c) /* Exclude characters with the DispositionType */ { - case 0x00A0: // U+00A0 : NO-BREAK SPACE - case 0x2007: // U+2007 : FIGURE SPACE - case 0x202F: // U+202F : NARROW NO-BREAK SPACE + case 0x00A0: /* U+00A0 : NO-BREAK SPACE */ + case 0x2007: /* U+2007 : FIGURE SPACE */ + case 0x202F: /* U+202F : NARROW NO-BREAK SPACE */ return 0; } return 1; case UCD_CATEGORY_Cc: - return c == 0x09; // U+0009 : CHARACTER TABULATION + return c == 0x09; /* U+0009 : CHARACTER TABULATION */ default: return 0; } @@ -91,7 +91,7 @@ int ucd_iscntrl(codepoint_t c) int ucd_isdigit(codepoint_t c) { - return (c >= 0x30 && c <= 0x39); // [0-9] + return (c >= 0x30 && c <= 0x39); /* [0-9] */ } int ucd_isgraph(codepoint_t c) @@ -174,23 +174,23 @@ int ucd_isspace(codepoint_t c) case UCD_CATEGORY_Zp: return 1; case UCD_CATEGORY_Zs: - switch (c) // Exclude characters with the DispositionType + switch (c) /* Exclude characters with the DispositionType */ { - case 0x00A0: // U+00A0 : NO-BREAK SPACE - case 0x2007: // U+2007 : FIGURE SPACE - case 0x202F: // U+202F : NARROW NO-BREAK SPACE + case 0x00A0: /* U+00A0 : NO-BREAK SPACE */ + case 0x2007: /* U+2007 : FIGURE SPACE */ + case 0x202F: /* U+202F : NARROW NO-BREAK SPACE */ return 0; } return 1; case UCD_CATEGORY_Cc: - switch (c) // Include control characters marked as White_Space + switch (c) /* Include control characters marked as White_Space */ { - case 0x09: // U+0009 : CHARACTER TABULATION - case 0x0A: // U+000A : LINE FEED - case 0x0B: // U+000B : LINE TABULATION - case 0x0C: // U+000C : FORM FEED - case 0x0D: // U+000D : CARRIAGE RETURN - case 0x85: // U+0085 : NEXT LINE + case 0x09: /* U+0009 : CHARACTER TABULATION */ + case 0x0A: /* U+000A : LINE FEED */ + case 0x0B: /* U+000B : LINE TABULATION */ + case 0x0C: /* U+000C : FORM FEED */ + case 0x0D: /* U+000D : CARRIAGE RETURN */ + case 0x85: /* U+0085 : NEXT LINE */ return 1; } default: @@ -217,7 +217,7 @@ int ucd_isupper(codepoint_t c) int ucd_isxdigit(codepoint_t c) { - return (c >= 0x30 && c <= 0x39) // [0-9] - || (c >= 0x41 && c <= 0x46) // [A-Z] - || (c >= 0x61 && c <= 0x66); // [a-z] + return (c >= 0x30 && c <= 0x39) /* [0-9] */ + || (c >= 0x41 && c <= 0x46) /* [A-Z] */ + || (c >= 0x61 && c <= 0x66); /* [a-z] */ } diff --git a/src/proplist.c b/src/proplist.c index 97a6f076..c0229512 100644 --- a/src/proplist.c +++ b/src/proplist.c @@ -142,11 +142,11 @@ static ucd_property properties_Ll(codepoint_t c) if (c == 0x029D) return UCD_PROPERTY_SOFT_DOTTED; break; case 0x0300: - if (c >= 0x03D0 && c <= 0x03D2) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x03D0 && c <= 0x03D2) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c == 0x03D5) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x03F0 && c <= 0x03F1) return UCD_PROPERTY_OTHER_MATH; if (c == 0x03F3) return UCD_PROPERTY_SOFT_DOTTED; - if (c >= 0x03F4 && c <= 0x03F5) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x03F4 && c <= 0x03F5) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; case 0x0400: if (c == 0x0456) return UCD_PROPERTY_SOFT_DOTTED; @@ -160,12 +160,12 @@ static ucd_property properties_Ll(codepoint_t c) if (c == 0x1ECB) return UCD_PROPERTY_SOFT_DOTTED; break; case 0x2100: - if (c >= 0x210A && c <= 0x2113) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x212F && c <= 0x2131) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x2133 && c <= 0x2134) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x210A && c <= 0x2113) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x212F && c <= 0x2131) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x2133 && c <= 0x2134) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c == 0x2139) return UCD_PROPERTY_EMOJI; - if (c >= 0x213C && c <= 0x213F) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x2145 && c <= 0x2147) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x213C && c <= 0x213F) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x2145 && c <= 0x2147) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x2148 && c <= 0x2149) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; break; case 0xFF00: @@ -173,45 +173,45 @@ static ucd_property properties_Ll(codepoint_t c) break; case 0x01D400: if (c >= 0x01D422 && c <= 0x01D423) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; - if (c >= 0x01D400 && c <= 0x01D454) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D400 && c <= 0x01D454) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D456 && c <= 0x01D457) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; if (c >= 0x01D48A && c <= 0x01D48B) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; - if (c >= 0x01D458 && c <= 0x01D49C) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x01D4AE && c <= 0x01D4B9) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D458 && c <= 0x01D49C) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x01D4AE && c <= 0x01D4B9) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c == 0x01D4BB) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x01D4BE && c <= 0x01D4BF) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; if (c >= 0x01D4BD && c <= 0x01D4C3) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x01D4F2 && c <= 0x01D4F3) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; - if (c >= 0x01D4C5) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D4C5) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; case 0x01D500: - if (c <= 0x01D505) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c <= 0x01D505) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D526 && c <= 0x01D527) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; - if (c >= 0x01D51E && c <= 0x01D539) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D51E && c <= 0x01D539) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D55A && c <= 0x01D55B) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; if (c >= 0x01D58E && c <= 0x01D58F) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; if (c >= 0x01D5C2 && c <= 0x01D5C3) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; if (c >= 0x01D5F6 && c <= 0x01D5F7) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; - if (c >= 0x01D552) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D552) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; case 0x01D600: if (c >= 0x01D62A && c <= 0x01D62B) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; if (c >= 0x01D65E && c <= 0x01D65F) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; if (c >= 0x01D692 && c <= 0x01D693) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_SOFT_DOTTED; - if (c <= 0x01D6A5) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c <= 0x01D6A5) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D6C2 && c <= 0x01D6DA) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D6DC && c <= 0x01D6FA) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D6DC && c <= 0x01D6FA) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D6FC) return UCD_PROPERTY_OTHER_MATH; break; case 0x01D700: if (c <= 0x01D714) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D716 && c <= 0x01D734) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D716 && c <= 0x01D734) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D736 && c <= 0x01D74E) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D750 && c <= 0x01D76E) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D750 && c <= 0x01D76E) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D770 && c <= 0x01D788) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D78A && c <= 0x01D7A8) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D78A && c <= 0x01D7A8) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D7AA && c <= 0x01D7C2) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D7C4 && c <= 0x01D7CB) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D7C4 && c <= 0x01D7CB) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; } return 0; @@ -427,8 +427,8 @@ static ucd_property properties_Lu(codepoint_t c) if (c >= 0x0041 && c <= 0x0046) return UCD_PROPERTY_HEX_DIGIT | UCD_PROPERTY_ASCII_HEX_DIGIT; break; case 0x0300: - if (c >= 0x03D0 && c <= 0x03D2) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x03F4 && c <= 0x03F5) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x03D0 && c <= 0x03D2) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x03F4 && c <= 0x03F5) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; case 0xFF00: if (c >= 0xFF21 && c <= 0xFF26) return UCD_PROPERTY_HEX_DIGIT; @@ -436,49 +436,49 @@ static ucd_property properties_Lu(codepoint_t c) case 0x2100: if (c == 0x2102) return UCD_PROPERTY_OTHER_MATH; if (c == 0x2107) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x210A && c <= 0x2113) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x210A && c <= 0x2113) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c == 0x2115) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x2119 && c <= 0x211D) return UCD_PROPERTY_OTHER_MATH; if (c == 0x2124) return UCD_PROPERTY_OTHER_MATH; if (c == 0x2128) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x212C && c <= 0x212D) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x212F && c <= 0x2131) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x2133 && c <= 0x2134) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x213C && c <= 0x213F) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x2145 && c <= 0x2149) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x212F && c <= 0x2131) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x2133 && c <= 0x2134) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x213C && c <= 0x213F) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x2145 && c <= 0x2149) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; case 0x01D400: - if (c >= 0x01D400 && c <= 0x01D454) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x01D456 && c <= 0x01D49C) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D400 && c <= 0x01D454) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x01D456 && c <= 0x01D49C) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D49E && c <= 0x01D49F) return UCD_PROPERTY_OTHER_MATH; if (c == 0x01D4A2) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x01D4A5 && c <= 0x01D4A6) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x01D4A9 && c <= 0x01D4AC) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D4AE && c <= 0x01D4B9) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x01D4C5) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D4AE && c <= 0x01D4B9) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x01D4C5) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; case 0x01D500: - if (c <= 0x01D505) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c <= 0x01D505) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D507 && c <= 0x01D50A) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x01D50D && c <= 0x01D514) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x01D516 && c <= 0x01D51C) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D51E && c <= 0x01D539) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D51E && c <= 0x01D539) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D53B && c <= 0x01D53E) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x01D540 && c <= 0x01D544) return UCD_PROPERTY_OTHER_MATH; if (c == 0x01D546) return UCD_PROPERTY_OTHER_MATH; if (c >= 0x01D54A && c <= 0x01D550) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D552) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D552) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; case 0x01D600: - if (c <= 0x01D6A5) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c <= 0x01D6A5) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ if (c >= 0x01D6A8 && c <= 0x01D6C0) return UCD_PROPERTY_OTHER_MATH; - if (c >= 0x01D6DC && c <= 0x01D6FA) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D6DC && c <= 0x01D6FA) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; case 0x01D700: - if (c >= 0x01D716 && c <= 0x01D734) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x01D750 && c <= 0x01D76E) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x01D78A && c <= 0x01D7A8) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu - if (c >= 0x01D7C4 && c <= 0x01D7CB) return UCD_PROPERTY_OTHER_MATH; // Ll|Lu + if (c >= 0x01D716 && c <= 0x01D734) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x01D750 && c <= 0x01D76E) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x01D78A && c <= 0x01D7A8) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ + if (c >= 0x01D7C4 && c <= 0x01D7CB) return UCD_PROPERTY_OTHER_MATH; /* Ll|Lu */ break; } return 0; @@ -1262,10 +1262,10 @@ static ucd_property properties_Pe(codepoint_t c) break; case 0x2700: if (c == 0x27C6) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; - if (c >= 0x27E6 && c <= 0x27EF) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; // Pe|Ps + if (c >= 0x27E6 && c <= 0x27EF) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; /* Pe|Ps */ return UCD_PROPERTY_PATTERN_SYNTAX; case 0x2900: - return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; // Pe|Ps + return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; /* Pe|Ps */ case 0x2E00: return UCD_PROPERTY_PATTERN_SYNTAX; case 0x3000: @@ -1585,7 +1585,7 @@ static ucd_property properties_Ps(codepoint_t c) break; case 0x2700: if (c == 0x27C5) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; - if (c >= 0x27E6 && c <= 0x27EF) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; // Pe|Ps + if (c >= 0x27E6 && c <= 0x27EF) return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; /* Pe|Ps */ return UCD_PROPERTY_PATTERN_SYNTAX; case 0x2900: return UCD_PROPERTY_OTHER_MATH | UCD_PROPERTY_PATTERN_SYNTAX; @@ -2048,6 +2048,6 @@ ucd_property ucd_properties(codepoint_t c, ucd_category category) case UCD_CATEGORY_Zl: return UCD_PROPERTY_WHITE_SPACE | UCD_PROPERTY_PATTERN_WHITE_SPACE; case UCD_CATEGORY_Zp: return UCD_PROPERTY_WHITE_SPACE | UCD_PROPERTY_PATTERN_WHITE_SPACE; case UCD_CATEGORY_Zs: return properties_Zs(c); - default: return 0; // Co Cs Ii Lt Me + default: return 0; /* Co Cs Ii Lt Me */ }; } diff --git a/src/scripts.c b/src/scripts.c index 17254607..f5883d12 100644 --- a/src/scripts.c +++ b/src/scripts.c @@ -18,8 +18,9 @@ * along with ucd-tools. If not, see . */ -// NOTE: This file is automatically generated from the Scripts.txt file in -// the Unicode Character database by the ucd-tools/tools/scripts.py script. +/* NOTE: This file is automatically generated from the Scripts.txt file in + * the Unicode Character database by the ucd-tools/tools/scripts.py script. + */ #include "ucd/ucd.h" @@ -199,7 +200,7 @@ #define Zyyy UCD_SCRIPT_Zyyy #define Zzzz UCD_SCRIPT_Zzzz -// Unicode Character Data 9.0.0 +/* Unicode Character Data 9.0.0 */ static const uint8_t scripts_Latn[256] = { @@ -2904,7 +2905,7 @@ static const uint8_t scripts_0E0100[256] = static const uint8_t *scripts_000000_00D7FF[] = { scripts_000000, - scripts_Latn, // 000100 + scripts_Latn, /* 000100 */ scripts_000200, scripts_000300, scripts_000400, @@ -2920,11 +2921,11 @@ static const uint8_t *scripts_000000_00D7FF[] = scripts_000E00, scripts_000F00, scripts_001000, - scripts_Hang, // 001100 + scripts_Hang, /* 001100 */ scripts_001200, scripts_001300, - scripts_Cans, // 001400 - scripts_Cans, // 001500 + scripts_Cans, /* 001400 */ + scripts_Cans, /* 001500 */ scripts_001600, scripts_001700, scripts_001800, @@ -2933,19 +2934,19 @@ static const uint8_t *scripts_000000_00D7FF[] = scripts_001B00, scripts_001C00, scripts_001D00, - scripts_Latn, // 001E00 + scripts_Latn, /* 001E00 */ scripts_001F00, scripts_002000, scripts_002100, - scripts_Zyyy, // 002200 + scripts_Zyyy, /* 002200 */ scripts_002300, scripts_002400, - scripts_Zyyy, // 002500 - scripts_Zyyy, // 002600 - scripts_Zyyy, // 002700 - scripts_Brai, // 002800 - scripts_Zyyy, // 002900 - scripts_Zyyy, // 002A00 + scripts_Zyyy, /* 002500 */ + scripts_Zyyy, /* 002600 */ + scripts_Zyyy, /* 002700 */ + scripts_Brai, /* 002800 */ + scripts_Zyyy, /* 002900 */ + scripts_Zyyy, /* 002A00 */ scripts_002B00, scripts_002C00, scripts_002D00, @@ -2955,179 +2956,179 @@ static const uint8_t *scripts_000000_00D7FF[] = scripts_003100, scripts_003200, scripts_003300, - scripts_Hani, // 003400 - scripts_Hani, // 003500 - scripts_Hani, // 003600 - scripts_Hani, // 003700 - scripts_Hani, // 003800 - scripts_Hani, // 003900 - scripts_Hani, // 003A00 - scripts_Hani, // 003B00 - scripts_Hani, // 003C00 - scripts_Hani, // 003D00 - scripts_Hani, // 003E00 - scripts_Hani, // 003F00 - scripts_Hani, // 004000 - scripts_Hani, // 004100 - scripts_Hani, // 004200 - scripts_Hani, // 004300 - scripts_Hani, // 004400 - scripts_Hani, // 004500 - scripts_Hani, // 004600 - scripts_Hani, // 004700 - scripts_Hani, // 004800 - scripts_Hani, // 004900 - scripts_Hani, // 004A00 - scripts_Hani, // 004B00 - scripts_Hani, // 004C00 + scripts_Hani, /* 003400 */ + scripts_Hani, /* 003500 */ + scripts_Hani, /* 003600 */ + scripts_Hani, /* 003700 */ + scripts_Hani, /* 003800 */ + scripts_Hani, /* 003900 */ + scripts_Hani, /* 003A00 */ + scripts_Hani, /* 003B00 */ + scripts_Hani, /* 003C00 */ + scripts_Hani, /* 003D00 */ + scripts_Hani, /* 003E00 */ + scripts_Hani, /* 003F00 */ + scripts_Hani, /* 004000 */ + scripts_Hani, /* 004100 */ + scripts_Hani, /* 004200 */ + scripts_Hani, /* 004300 */ + scripts_Hani, /* 004400 */ + scripts_Hani, /* 004500 */ + scripts_Hani, /* 004600 */ + scripts_Hani, /* 004700 */ + scripts_Hani, /* 004800 */ + scripts_Hani, /* 004900 */ + scripts_Hani, /* 004A00 */ + scripts_Hani, /* 004B00 */ + scripts_Hani, /* 004C00 */ scripts_004D00, - scripts_Hani, // 004E00 - scripts_Hani, // 004F00 - scripts_Hani, // 005000 - scripts_Hani, // 005100 - scripts_Hani, // 005200 - scripts_Hani, // 005300 - scripts_Hani, // 005400 - scripts_Hani, // 005500 - scripts_Hani, // 005600 - scripts_Hani, // 005700 - scripts_Hani, // 005800 - scripts_Hani, // 005900 - scripts_Hani, // 005A00 - scripts_Hani, // 005B00 - scripts_Hani, // 005C00 - scripts_Hani, // 005D00 - scripts_Hani, // 005E00 - scripts_Hani, // 005F00 - scripts_Hani, // 006000 - scripts_Hani, // 006100 - scripts_Hani, // 006200 - scripts_Hani, // 006300 - scripts_Hani, // 006400 - scripts_Hani, // 006500 - scripts_Hani, // 006600 - scripts_Hani, // 006700 - scripts_Hani, // 006800 - scripts_Hani, // 006900 - scripts_Hani, // 006A00 - scripts_Hani, // 006B00 - scripts_Hani, // 006C00 - scripts_Hani, // 006D00 - scripts_Hani, // 006E00 - scripts_Hani, // 006F00 - scripts_Hani, // 007000 - scripts_Hani, // 007100 - scripts_Hani, // 007200 - scripts_Hani, // 007300 - scripts_Hani, // 007400 - scripts_Hani, // 007500 - scripts_Hani, // 007600 - scripts_Hani, // 007700 - scripts_Hani, // 007800 - scripts_Hani, // 007900 - scripts_Hani, // 007A00 - scripts_Hani, // 007B00 - scripts_Hani, // 007C00 - scripts_Hani, // 007D00 - scripts_Hani, // 007E00 - scripts_Hani, // 007F00 - scripts_Hani, // 008000 - scripts_Hani, // 008100 - scripts_Hani, // 008200 - scripts_Hani, // 008300 - scripts_Hani, // 008400 - scripts_Hani, // 008500 - scripts_Hani, // 008600 - scripts_Hani, // 008700 - scripts_Hani, // 008800 - scripts_Hani, // 008900 - scripts_Hani, // 008A00 - scripts_Hani, // 008B00 - scripts_Hani, // 008C00 - scripts_Hani, // 008D00 - scripts_Hani, // 008E00 - scripts_Hani, // 008F00 - scripts_Hani, // 009000 - scripts_Hani, // 009100 - scripts_Hani, // 009200 - scripts_Hani, // 009300 - scripts_Hani, // 009400 - scripts_Hani, // 009500 - scripts_Hani, // 009600 - scripts_Hani, // 009700 - scripts_Hani, // 009800 - scripts_Hani, // 009900 - scripts_Hani, // 009A00 - scripts_Hani, // 009B00 - scripts_Hani, // 009C00 - scripts_Hani, // 009D00 - scripts_Hani, // 009E00 + scripts_Hani, /* 004E00 */ + scripts_Hani, /* 004F00 */ + scripts_Hani, /* 005000 */ + scripts_Hani, /* 005100 */ + scripts_Hani, /* 005200 */ + scripts_Hani, /* 005300 */ + scripts_Hani, /* 005400 */ + scripts_Hani, /* 005500 */ + scripts_Hani, /* 005600 */ + scripts_Hani, /* 005700 */ + scripts_Hani, /* 005800 */ + scripts_Hani, /* 005900 */ + scripts_Hani, /* 005A00 */ + scripts_Hani, /* 005B00 */ + scripts_Hani, /* 005C00 */ + scripts_Hani, /* 005D00 */ + scripts_Hani, /* 005E00 */ + scripts_Hani, /* 005F00 */ + scripts_Hani, /* 006000 */ + scripts_Hani, /* 006100 */ + scripts_Hani, /* 006200 */ + scripts_Hani, /* 006300 */ + scripts_Hani, /* 006400 */ + scripts_Hani, /* 006500 */ + scripts_Hani, /* 006600 */ + scripts_Hani, /* 006700 */ + scripts_Hani, /* 006800 */ + scripts_Hani, /* 006900 */ + scripts_Hani, /* 006A00 */ + scripts_Hani, /* 006B00 */ + scripts_Hani, /* 006C00 */ + scripts_Hani, /* 006D00 */ + scripts_Hani, /* 006E00 */ + scripts_Hani, /* 006F00 */ + scripts_Hani, /* 007000 */ + scripts_Hani, /* 007100 */ + scripts_Hani, /* 007200 */ + scripts_Hani, /* 007300 */ + scripts_Hani, /* 007400 */ + scripts_Hani, /* 007500 */ + scripts_Hani, /* 007600 */ + scripts_Hani, /* 007700 */ + scripts_Hani, /* 007800 */ + scripts_Hani, /* 007900 */ + scripts_Hani, /* 007A00 */ + scripts_Hani, /* 007B00 */ + scripts_Hani, /* 007C00 */ + scripts_Hani, /* 007D00 */ + scripts_Hani, /* 007E00 */ + scripts_Hani, /* 007F00 */ + scripts_Hani, /* 008000 */ + scripts_Hani, /* 008100 */ + scripts_Hani, /* 008200 */ + scripts_Hani, /* 008300 */ + scripts_Hani, /* 008400 */ + scripts_Hani, /* 008500 */ + scripts_Hani, /* 008600 */ + scripts_Hani, /* 008700 */ + scripts_Hani, /* 008800 */ + scripts_Hani, /* 008900 */ + scripts_Hani, /* 008A00 */ + scripts_Hani, /* 008B00 */ + scripts_Hani, /* 008C00 */ + scripts_Hani, /* 008D00 */ + scripts_Hani, /* 008E00 */ + scripts_Hani, /* 008F00 */ + scripts_Hani, /* 009000 */ + scripts_Hani, /* 009100 */ + scripts_Hani, /* 009200 */ + scripts_Hani, /* 009300 */ + scripts_Hani, /* 009400 */ + scripts_Hani, /* 009500 */ + scripts_Hani, /* 009600 */ + scripts_Hani, /* 009700 */ + scripts_Hani, /* 009800 */ + scripts_Hani, /* 009900 */ + scripts_Hani, /* 009A00 */ + scripts_Hani, /* 009B00 */ + scripts_Hani, /* 009C00 */ + scripts_Hani, /* 009D00 */ + scripts_Hani, /* 009E00 */ scripts_009F00, - scripts_Yiii, // 00A000 - scripts_Yiii, // 00A100 - scripts_Yiii, // 00A200 - scripts_Yiii, // 00A300 + scripts_Yiii, /* 00A000 */ + scripts_Yiii, /* 00A100 */ + scripts_Yiii, /* 00A200 */ + scripts_Yiii, /* 00A300 */ scripts_00A400, - scripts_Vaii, // 00A500 + scripts_Vaii, /* 00A500 */ scripts_00A600, scripts_00A700, scripts_00A800, scripts_00A900, scripts_00AA00, scripts_00AB00, - scripts_Hang, // 00AC00 - scripts_Hang, // 00AD00 - scripts_Hang, // 00AE00 - scripts_Hang, // 00AF00 - scripts_Hang, // 00B000 - scripts_Hang, // 00B100 - scripts_Hang, // 00B200 - scripts_Hang, // 00B300 - scripts_Hang, // 00B400 - scripts_Hang, // 00B500 - scripts_Hang, // 00B600 - scripts_Hang, // 00B700 - scripts_Hang, // 00B800 - scripts_Hang, // 00B900 - scripts_Hang, // 00BA00 - scripts_Hang, // 00BB00 - scripts_Hang, // 00BC00 - scripts_Hang, // 00BD00 - scripts_Hang, // 00BE00 - scripts_Hang, // 00BF00 - scripts_Hang, // 00C000 - scripts_Hang, // 00C100 - scripts_Hang, // 00C200 - scripts_Hang, // 00C300 - scripts_Hang, // 00C400 - scripts_Hang, // 00C500 - scripts_Hang, // 00C600 - scripts_Hang, // 00C700 - scripts_Hang, // 00C800 - scripts_Hang, // 00C900 - scripts_Hang, // 00CA00 - scripts_Hang, // 00CB00 - scripts_Hang, // 00CC00 - scripts_Hang, // 00CD00 - scripts_Hang, // 00CE00 - scripts_Hang, // 00CF00 - scripts_Hang, // 00D000 - scripts_Hang, // 00D100 - scripts_Hang, // 00D200 - scripts_Hang, // 00D300 - scripts_Hang, // 00D400 - scripts_Hang, // 00D500 - scripts_Hang, // 00D600 + scripts_Hang, /* 00AC00 */ + scripts_Hang, /* 00AD00 */ + scripts_Hang, /* 00AE00 */ + scripts_Hang, /* 00AF00 */ + scripts_Hang, /* 00B000 */ + scripts_Hang, /* 00B100 */ + scripts_Hang, /* 00B200 */ + scripts_Hang, /* 00B300 */ + scripts_Hang, /* 00B400 */ + scripts_Hang, /* 00B500 */ + scripts_Hang, /* 00B600 */ + scripts_Hang, /* 00B700 */ + scripts_Hang, /* 00B800 */ + scripts_Hang, /* 00B900 */ + scripts_Hang, /* 00BA00 */ + scripts_Hang, /* 00BB00 */ + scripts_Hang, /* 00BC00 */ + scripts_Hang, /* 00BD00 */ + scripts_Hang, /* 00BE00 */ + scripts_Hang, /* 00BF00 */ + scripts_Hang, /* 00C000 */ + scripts_Hang, /* 00C100 */ + scripts_Hang, /* 00C200 */ + scripts_Hang, /* 00C300 */ + scripts_Hang, /* 00C400 */ + scripts_Hang, /* 00C500 */ + scripts_Hang, /* 00C600 */ + scripts_Hang, /* 00C700 */ + scripts_Hang, /* 00C800 */ + scripts_Hang, /* 00C900 */ + scripts_Hang, /* 00CA00 */ + scripts_Hang, /* 00CB00 */ + scripts_Hang, /* 00CC00 */ + scripts_Hang, /* 00CD00 */ + scripts_Hang, /* 00CE00 */ + scripts_Hang, /* 00CF00 */ + scripts_Hang, /* 00D000 */ + scripts_Hang, /* 00D100 */ + scripts_Hang, /* 00D200 */ + scripts_Hang, /* 00D300 */ + scripts_Hang, /* 00D400 */ + scripts_Hang, /* 00D500 */ + scripts_Hang, /* 00D600 */ scripts_00D700, }; static const uint8_t *scripts_00F800_02FAFF[] = { - scripts_Zzzz, // 00F800 - scripts_Hani, // 00F900 + scripts_Zzzz, /* 00F800 */ + scripts_Hani, /* 00F900 */ scripts_00FA00, scripts_00FB00, - scripts_Arab, // 00FC00 + scripts_Arab, /* 00FC00 */ scripts_00FD00, scripts_00FE00, scripts_00FF00, @@ -3137,16 +3138,16 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_010300, scripts_010400, scripts_010500, - scripts_Lina, // 010600 + scripts_Lina, /* 010600 */ scripts_010700, scripts_010800, scripts_010900, scripts_010A00, scripts_010B00, scripts_010C00, - scripts_Zzzz, // 010D00 + scripts_Zzzz, /* 010D00 */ scripts_010E00, - scripts_Zzzz, // 010F00 + scripts_Zzzz, /* 010F00 */ scripts_011000, scripts_011100, scripts_011200, @@ -3156,189 +3157,189 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_011600, scripts_011700, scripts_011800, - scripts_Zzzz, // 011900 + scripts_Zzzz, /* 011900 */ scripts_011A00, - scripts_Zzzz, // 011B00 + scripts_Zzzz, /* 011B00 */ scripts_011C00, - scripts_Zzzz, // 011D00 - scripts_Zzzz, // 011E00 - scripts_Zzzz, // 011F00 - scripts_Xsux, // 012000 - scripts_Xsux, // 012100 - scripts_Xsux, // 012200 + scripts_Zzzz, /* 011D00 */ + scripts_Zzzz, /* 011E00 */ + scripts_Zzzz, /* 011F00 */ + scripts_Xsux, /* 012000 */ + scripts_Xsux, /* 012100 */ + scripts_Xsux, /* 012200 */ scripts_012300, scripts_012400, scripts_012500, - scripts_Zzzz, // 012600 - scripts_Zzzz, // 012700 - scripts_Zzzz, // 012800 - scripts_Zzzz, // 012900 - scripts_Zzzz, // 012A00 - scripts_Zzzz, // 012B00 - scripts_Zzzz, // 012C00 - scripts_Zzzz, // 012D00 - scripts_Zzzz, // 012E00 - scripts_Zzzz, // 012F00 - scripts_Egyp, // 013000 - scripts_Egyp, // 013100 - scripts_Egyp, // 013200 - scripts_Egyp, // 013300 + scripts_Zzzz, /* 012600 */ + scripts_Zzzz, /* 012700 */ + scripts_Zzzz, /* 012800 */ + scripts_Zzzz, /* 012900 */ + scripts_Zzzz, /* 012A00 */ + scripts_Zzzz, /* 012B00 */ + scripts_Zzzz, /* 012C00 */ + scripts_Zzzz, /* 012D00 */ + scripts_Zzzz, /* 012E00 */ + scripts_Zzzz, /* 012F00 */ + scripts_Egyp, /* 013000 */ + scripts_Egyp, /* 013100 */ + scripts_Egyp, /* 013200 */ + scripts_Egyp, /* 013300 */ scripts_013400, - scripts_Zzzz, // 013500 - scripts_Zzzz, // 013600 - scripts_Zzzz, // 013700 - scripts_Zzzz, // 013800 - scripts_Zzzz, // 013900 - scripts_Zzzz, // 013A00 - scripts_Zzzz, // 013B00 - scripts_Zzzz, // 013C00 - scripts_Zzzz, // 013D00 - scripts_Zzzz, // 013E00 - scripts_Zzzz, // 013F00 - scripts_Zzzz, // 014000 - scripts_Zzzz, // 014100 - scripts_Zzzz, // 014200 - scripts_Zzzz, // 014300 - scripts_Hluw, // 014400 - scripts_Hluw, // 014500 + scripts_Zzzz, /* 013500 */ + scripts_Zzzz, /* 013600 */ + scripts_Zzzz, /* 013700 */ + scripts_Zzzz, /* 013800 */ + scripts_Zzzz, /* 013900 */ + scripts_Zzzz, /* 013A00 */ + scripts_Zzzz, /* 013B00 */ + scripts_Zzzz, /* 013C00 */ + scripts_Zzzz, /* 013D00 */ + scripts_Zzzz, /* 013E00 */ + scripts_Zzzz, /* 013F00 */ + scripts_Zzzz, /* 014000 */ + scripts_Zzzz, /* 014100 */ + scripts_Zzzz, /* 014200 */ + scripts_Zzzz, /* 014300 */ + scripts_Hluw, /* 014400 */ + scripts_Hluw, /* 014500 */ scripts_014600, - scripts_Zzzz, // 014700 - scripts_Zzzz, // 014800 - scripts_Zzzz, // 014900 - scripts_Zzzz, // 014A00 - scripts_Zzzz, // 014B00 - scripts_Zzzz, // 014C00 - scripts_Zzzz, // 014D00 - scripts_Zzzz, // 014E00 - scripts_Zzzz, // 014F00 - scripts_Zzzz, // 015000 - scripts_Zzzz, // 015100 - scripts_Zzzz, // 015200 - scripts_Zzzz, // 015300 - scripts_Zzzz, // 015400 - scripts_Zzzz, // 015500 - scripts_Zzzz, // 015600 - scripts_Zzzz, // 015700 - scripts_Zzzz, // 015800 - scripts_Zzzz, // 015900 - scripts_Zzzz, // 015A00 - scripts_Zzzz, // 015B00 - scripts_Zzzz, // 015C00 - scripts_Zzzz, // 015D00 - scripts_Zzzz, // 015E00 - scripts_Zzzz, // 015F00 - scripts_Zzzz, // 016000 - scripts_Zzzz, // 016100 - scripts_Zzzz, // 016200 - scripts_Zzzz, // 016300 - scripts_Zzzz, // 016400 - scripts_Zzzz, // 016500 - scripts_Zzzz, // 016600 - scripts_Zzzz, // 016700 - scripts_Bamu, // 016800 - scripts_Bamu, // 016900 + scripts_Zzzz, /* 014700 */ + scripts_Zzzz, /* 014800 */ + scripts_Zzzz, /* 014900 */ + scripts_Zzzz, /* 014A00 */ + scripts_Zzzz, /* 014B00 */ + scripts_Zzzz, /* 014C00 */ + scripts_Zzzz, /* 014D00 */ + scripts_Zzzz, /* 014E00 */ + scripts_Zzzz, /* 014F00 */ + scripts_Zzzz, /* 015000 */ + scripts_Zzzz, /* 015100 */ + scripts_Zzzz, /* 015200 */ + scripts_Zzzz, /* 015300 */ + scripts_Zzzz, /* 015400 */ + scripts_Zzzz, /* 015500 */ + scripts_Zzzz, /* 015600 */ + scripts_Zzzz, /* 015700 */ + scripts_Zzzz, /* 015800 */ + scripts_Zzzz, /* 015900 */ + scripts_Zzzz, /* 015A00 */ + scripts_Zzzz, /* 015B00 */ + scripts_Zzzz, /* 015C00 */ + scripts_Zzzz, /* 015D00 */ + scripts_Zzzz, /* 015E00 */ + scripts_Zzzz, /* 015F00 */ + scripts_Zzzz, /* 016000 */ + scripts_Zzzz, /* 016100 */ + scripts_Zzzz, /* 016200 */ + scripts_Zzzz, /* 016300 */ + scripts_Zzzz, /* 016400 */ + scripts_Zzzz, /* 016500 */ + scripts_Zzzz, /* 016600 */ + scripts_Zzzz, /* 016700 */ + scripts_Bamu, /* 016800 */ + scripts_Bamu, /* 016900 */ scripts_016A00, scripts_016B00, - scripts_Zzzz, // 016C00 - scripts_Zzzz, // 016D00 - scripts_Zzzz, // 016E00 + scripts_Zzzz, /* 016C00 */ + scripts_Zzzz, /* 016D00 */ + scripts_Zzzz, /* 016E00 */ scripts_016F00, - scripts_Tang, // 017000 - scripts_Tang, // 017100 - scripts_Tang, // 017200 - scripts_Tang, // 017300 - scripts_Tang, // 017400 - scripts_Tang, // 017500 - scripts_Tang, // 017600 - scripts_Tang, // 017700 - scripts_Tang, // 017800 - scripts_Tang, // 017900 - scripts_Tang, // 017A00 - scripts_Tang, // 017B00 - scripts_Tang, // 017C00 - scripts_Tang, // 017D00 - scripts_Tang, // 017E00 - scripts_Tang, // 017F00 - scripts_Tang, // 018000 - scripts_Tang, // 018100 - scripts_Tang, // 018200 - scripts_Tang, // 018300 - scripts_Tang, // 018400 - scripts_Tang, // 018500 - scripts_Tang, // 018600 + scripts_Tang, /* 017000 */ + scripts_Tang, /* 017100 */ + scripts_Tang, /* 017200 */ + scripts_Tang, /* 017300 */ + scripts_Tang, /* 017400 */ + scripts_Tang, /* 017500 */ + scripts_Tang, /* 017600 */ + scripts_Tang, /* 017700 */ + scripts_Tang, /* 017800 */ + scripts_Tang, /* 017900 */ + scripts_Tang, /* 017A00 */ + scripts_Tang, /* 017B00 */ + scripts_Tang, /* 017C00 */ + scripts_Tang, /* 017D00 */ + scripts_Tang, /* 017E00 */ + scripts_Tang, /* 017F00 */ + scripts_Tang, /* 018000 */ + scripts_Tang, /* 018100 */ + scripts_Tang, /* 018200 */ + scripts_Tang, /* 018300 */ + scripts_Tang, /* 018400 */ + scripts_Tang, /* 018500 */ + scripts_Tang, /* 018600 */ scripts_018700, - scripts_Tang, // 018800 - scripts_Tang, // 018900 + scripts_Tang, /* 018800 */ + scripts_Tang, /* 018900 */ scripts_018A00, - scripts_Zzzz, // 018B00 - scripts_Zzzz, // 018C00 - scripts_Zzzz, // 018D00 - scripts_Zzzz, // 018E00 - scripts_Zzzz, // 018F00 - scripts_Zzzz, // 019000 - scripts_Zzzz, // 019100 - scripts_Zzzz, // 019200 - scripts_Zzzz, // 019300 - scripts_Zzzz, // 019400 - scripts_Zzzz, // 019500 - scripts_Zzzz, // 019600 - scripts_Zzzz, // 019700 - scripts_Zzzz, // 019800 - scripts_Zzzz, // 019900 - scripts_Zzzz, // 019A00 - scripts_Zzzz, // 019B00 - scripts_Zzzz, // 019C00 - scripts_Zzzz, // 019D00 - scripts_Zzzz, // 019E00 - scripts_Zzzz, // 019F00 - scripts_Zzzz, // 01A000 - scripts_Zzzz, // 01A100 - scripts_Zzzz, // 01A200 - scripts_Zzzz, // 01A300 - scripts_Zzzz, // 01A400 - scripts_Zzzz, // 01A500 - scripts_Zzzz, // 01A600 - scripts_Zzzz, // 01A700 - scripts_Zzzz, // 01A800 - scripts_Zzzz, // 01A900 - scripts_Zzzz, // 01AA00 - scripts_Zzzz, // 01AB00 - scripts_Zzzz, // 01AC00 - scripts_Zzzz, // 01AD00 - scripts_Zzzz, // 01AE00 - scripts_Zzzz, // 01AF00 + scripts_Zzzz, /* 018B00 */ + scripts_Zzzz, /* 018C00 */ + scripts_Zzzz, /* 018D00 */ + scripts_Zzzz, /* 018E00 */ + scripts_Zzzz, /* 018F00 */ + scripts_Zzzz, /* 019000 */ + scripts_Zzzz, /* 019100 */ + scripts_Zzzz, /* 019200 */ + scripts_Zzzz, /* 019300 */ + scripts_Zzzz, /* 019400 */ + scripts_Zzzz, /* 019500 */ + scripts_Zzzz, /* 019600 */ + scripts_Zzzz, /* 019700 */ + scripts_Zzzz, /* 019800 */ + scripts_Zzzz, /* 019900 */ + scripts_Zzzz, /* 019A00 */ + scripts_Zzzz, /* 019B00 */ + scripts_Zzzz, /* 019C00 */ + scripts_Zzzz, /* 019D00 */ + scripts_Zzzz, /* 019E00 */ + scripts_Zzzz, /* 019F00 */ + scripts_Zzzz, /* 01A000 */ + scripts_Zzzz, /* 01A100 */ + scripts_Zzzz, /* 01A200 */ + scripts_Zzzz, /* 01A300 */ + scripts_Zzzz, /* 01A400 */ + scripts_Zzzz, /* 01A500 */ + scripts_Zzzz, /* 01A600 */ + scripts_Zzzz, /* 01A700 */ + scripts_Zzzz, /* 01A800 */ + scripts_Zzzz, /* 01A900 */ + scripts_Zzzz, /* 01AA00 */ + scripts_Zzzz, /* 01AB00 */ + scripts_Zzzz, /* 01AC00 */ + scripts_Zzzz, /* 01AD00 */ + scripts_Zzzz, /* 01AE00 */ + scripts_Zzzz, /* 01AF00 */ scripts_01B000, - scripts_Zzzz, // 01B100 - scripts_Zzzz, // 01B200 - scripts_Zzzz, // 01B300 - scripts_Zzzz, // 01B400 - scripts_Zzzz, // 01B500 - scripts_Zzzz, // 01B600 - scripts_Zzzz, // 01B700 - scripts_Zzzz, // 01B800 - scripts_Zzzz, // 01B900 - scripts_Zzzz, // 01BA00 - scripts_Zzzz, // 01BB00 + scripts_Zzzz, /* 01B100 */ + scripts_Zzzz, /* 01B200 */ + scripts_Zzzz, /* 01B300 */ + scripts_Zzzz, /* 01B400 */ + scripts_Zzzz, /* 01B500 */ + scripts_Zzzz, /* 01B600 */ + scripts_Zzzz, /* 01B700 */ + scripts_Zzzz, /* 01B800 */ + scripts_Zzzz, /* 01B900 */ + scripts_Zzzz, /* 01BA00 */ + scripts_Zzzz, /* 01BB00 */ scripts_01BC00, - scripts_Zzzz, // 01BD00 - scripts_Zzzz, // 01BE00 - scripts_Zzzz, // 01BF00 - scripts_Zzzz, // 01C000 - scripts_Zzzz, // 01C100 - scripts_Zzzz, // 01C200 - scripts_Zzzz, // 01C300 - scripts_Zzzz, // 01C400 - scripts_Zzzz, // 01C500 - scripts_Zzzz, // 01C600 - scripts_Zzzz, // 01C700 - scripts_Zzzz, // 01C800 - scripts_Zzzz, // 01C900 - scripts_Zzzz, // 01CA00 - scripts_Zzzz, // 01CB00 - scripts_Zzzz, // 01CC00 - scripts_Zzzz, // 01CD00 - scripts_Zzzz, // 01CE00 - scripts_Zzzz, // 01CF00 + scripts_Zzzz, /* 01BD00 */ + scripts_Zzzz, /* 01BE00 */ + scripts_Zzzz, /* 01BF00 */ + scripts_Zzzz, /* 01C000 */ + scripts_Zzzz, /* 01C100 */ + scripts_Zzzz, /* 01C200 */ + scripts_Zzzz, /* 01C300 */ + scripts_Zzzz, /* 01C400 */ + scripts_Zzzz, /* 01C500 */ + scripts_Zzzz, /* 01C600 */ + scripts_Zzzz, /* 01C700 */ + scripts_Zzzz, /* 01C800 */ + scripts_Zzzz, /* 01C900 */ + scripts_Zzzz, /* 01CA00 */ + scripts_Zzzz, /* 01CB00 */ + scripts_Zzzz, /* 01CC00 */ + scripts_Zzzz, /* 01CD00 */ + scripts_Zzzz, /* 01CE00 */ + scripts_Zzzz, /* 01CF00 */ scripts_01D000, scripts_01D100, scripts_01D200, @@ -3347,296 +3348,296 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_01D500, scripts_01D600, scripts_01D700, - scripts_Sgnw, // 01D800 - scripts_Sgnw, // 01D900 + scripts_Sgnw, /* 01D800 */ + scripts_Sgnw, /* 01D900 */ scripts_01DA00, - scripts_Zzzz, // 01DB00 - scripts_Zzzz, // 01DC00 - scripts_Zzzz, // 01DD00 - scripts_Zzzz, // 01DE00 - scripts_Zzzz, // 01DF00 + scripts_Zzzz, /* 01DB00 */ + scripts_Zzzz, /* 01DC00 */ + scripts_Zzzz, /* 01DD00 */ + scripts_Zzzz, /* 01DE00 */ + scripts_Zzzz, /* 01DF00 */ scripts_01E000, - scripts_Zzzz, // 01E100 - scripts_Zzzz, // 01E200 - scripts_Zzzz, // 01E300 - scripts_Zzzz, // 01E400 - scripts_Zzzz, // 01E500 - scripts_Zzzz, // 01E600 - scripts_Zzzz, // 01E700 + scripts_Zzzz, /* 01E100 */ + scripts_Zzzz, /* 01E200 */ + scripts_Zzzz, /* 01E300 */ + scripts_Zzzz, /* 01E400 */ + scripts_Zzzz, /* 01E500 */ + scripts_Zzzz, /* 01E600 */ + scripts_Zzzz, /* 01E700 */ scripts_01E800, scripts_01E900, - scripts_Zzzz, // 01EA00 - scripts_Zzzz, // 01EB00 - scripts_Zzzz, // 01EC00 - scripts_Zzzz, // 01ED00 + scripts_Zzzz, /* 01EA00 */ + scripts_Zzzz, /* 01EB00 */ + scripts_Zzzz, /* 01EC00 */ + scripts_Zzzz, /* 01ED00 */ scripts_01EE00, - scripts_Zzzz, // 01EF00 + scripts_Zzzz, /* 01EF00 */ scripts_01F000, scripts_01F100, scripts_01F200, - scripts_Zyyy, // 01F300 - scripts_Zyyy, // 01F400 - scripts_Zyyy, // 01F500 + scripts_Zyyy, /* 01F300 */ + scripts_Zyyy, /* 01F400 */ + scripts_Zyyy, /* 01F500 */ scripts_01F600, scripts_01F700, scripts_01F800, scripts_01F900, - scripts_Zzzz, // 01FA00 - scripts_Zzzz, // 01FB00 - scripts_Zzzz, // 01FC00 - scripts_Zzzz, // 01FD00 - scripts_Zzzz, // 01FE00 - scripts_Zzzz, // 01FF00 - scripts_Hani, // 020000 - scripts_Hani, // 020100 - scripts_Hani, // 020200 - scripts_Hani, // 020300 - scripts_Hani, // 020400 - scripts_Hani, // 020500 - scripts_Hani, // 020600 - scripts_Hani, // 020700 - scripts_Hani, // 020800 - scripts_Hani, // 020900 - scripts_Hani, // 020A00 - scripts_Hani, // 020B00 - scripts_Hani, // 020C00 - scripts_Hani, // 020D00 - scripts_Hani, // 020E00 - scripts_Hani, // 020F00 - scripts_Hani, // 021000 - scripts_Hani, // 021100 - scripts_Hani, // 021200 - scripts_Hani, // 021300 - scripts_Hani, // 021400 - scripts_Hani, // 021500 - scripts_Hani, // 021600 - scripts_Hani, // 021700 - scripts_Hani, // 021800 - scripts_Hani, // 021900 - scripts_Hani, // 021A00 - scripts_Hani, // 021B00 - scripts_Hani, // 021C00 - scripts_Hani, // 021D00 - scripts_Hani, // 021E00 - scripts_Hani, // 021F00 - scripts_Hani, // 022000 - scripts_Hani, // 022100 - scripts_Hani, // 022200 - scripts_Hani, // 022300 - scripts_Hani, // 022400 - scripts_Hani, // 022500 - scripts_Hani, // 022600 - scripts_Hani, // 022700 - scripts_Hani, // 022800 - scripts_Hani, // 022900 - scripts_Hani, // 022A00 - scripts_Hani, // 022B00 - scripts_Hani, // 022C00 - scripts_Hani, // 022D00 - scripts_Hani, // 022E00 - scripts_Hani, // 022F00 - scripts_Hani, // 023000 - scripts_Hani, // 023100 - scripts_Hani, // 023200 - scripts_Hani, // 023300 - scripts_Hani, // 023400 - scripts_Hani, // 023500 - scripts_Hani, // 023600 - scripts_Hani, // 023700 - scripts_Hani, // 023800 - scripts_Hani, // 023900 - scripts_Hani, // 023A00 - scripts_Hani, // 023B00 - scripts_Hani, // 023C00 - scripts_Hani, // 023D00 - scripts_Hani, // 023E00 - scripts_Hani, // 023F00 - scripts_Hani, // 024000 - scripts_Hani, // 024100 - scripts_Hani, // 024200 - scripts_Hani, // 024300 - scripts_Hani, // 024400 - scripts_Hani, // 024500 - scripts_Hani, // 024600 - scripts_Hani, // 024700 - scripts_Hani, // 024800 - scripts_Hani, // 024900 - scripts_Hani, // 024A00 - scripts_Hani, // 024B00 - scripts_Hani, // 024C00 - scripts_Hani, // 024D00 - scripts_Hani, // 024E00 - scripts_Hani, // 024F00 - scripts_Hani, // 025000 - scripts_Hani, // 025100 - scripts_Hani, // 025200 - scripts_Hani, // 025300 - scripts_Hani, // 025400 - scripts_Hani, // 025500 - scripts_Hani, // 025600 - scripts_Hani, // 025700 - scripts_Hani, // 025800 - scripts_Hani, // 025900 - scripts_Hani, // 025A00 - scripts_Hani, // 025B00 - scripts_Hani, // 025C00 - scripts_Hani, // 025D00 - scripts_Hani, // 025E00 - scripts_Hani, // 025F00 - scripts_Hani, // 026000 - scripts_Hani, // 026100 - scripts_Hani, // 026200 - scripts_Hani, // 026300 - scripts_Hani, // 026400 - scripts_Hani, // 026500 - scripts_Hani, // 026600 - scripts_Hani, // 026700 - scripts_Hani, // 026800 - scripts_Hani, // 026900 - scripts_Hani, // 026A00 - scripts_Hani, // 026B00 - scripts_Hani, // 026C00 - scripts_Hani, // 026D00 - scripts_Hani, // 026E00 - scripts_Hani, // 026F00 - scripts_Hani, // 027000 - scripts_Hani, // 027100 - scripts_Hani, // 027200 - scripts_Hani, // 027300 - scripts_Hani, // 027400 - scripts_Hani, // 027500 - scripts_Hani, // 027600 - scripts_Hani, // 027700 - scripts_Hani, // 027800 - scripts_Hani, // 027900 - scripts_Hani, // 027A00 - scripts_Hani, // 027B00 - scripts_Hani, // 027C00 - scripts_Hani, // 027D00 - scripts_Hani, // 027E00 - scripts_Hani, // 027F00 - scripts_Hani, // 028000 - scripts_Hani, // 028100 - scripts_Hani, // 028200 - scripts_Hani, // 028300 - scripts_Hani, // 028400 - scripts_Hani, // 028500 - scripts_Hani, // 028600 - scripts_Hani, // 028700 - scripts_Hani, // 028800 - scripts_Hani, // 028900 - scripts_Hani, // 028A00 - scripts_Hani, // 028B00 - scripts_Hani, // 028C00 - scripts_Hani, // 028D00 - scripts_Hani, // 028E00 - scripts_Hani, // 028F00 - scripts_Hani, // 029000 - scripts_Hani, // 029100 - scripts_Hani, // 029200 - scripts_Hani, // 029300 - scripts_Hani, // 029400 - scripts_Hani, // 029500 - scripts_Hani, // 029600 - scripts_Hani, // 029700 - scripts_Hani, // 029800 - scripts_Hani, // 029900 - scripts_Hani, // 029A00 - scripts_Hani, // 029B00 - scripts_Hani, // 029C00 - scripts_Hani, // 029D00 - scripts_Hani, // 029E00 - scripts_Hani, // 029F00 - scripts_Hani, // 02A000 - scripts_Hani, // 02A100 - scripts_Hani, // 02A200 - scripts_Hani, // 02A300 - scripts_Hani, // 02A400 - scripts_Hani, // 02A500 + scripts_Zzzz, /* 01FA00 */ + scripts_Zzzz, /* 01FB00 */ + scripts_Zzzz, /* 01FC00 */ + scripts_Zzzz, /* 01FD00 */ + scripts_Zzzz, /* 01FE00 */ + scripts_Zzzz, /* 01FF00 */ + scripts_Hani, /* 020000 */ + scripts_Hani, /* 020100 */ + scripts_Hani, /* 020200 */ + scripts_Hani, /* 020300 */ + scripts_Hani, /* 020400 */ + scripts_Hani, /* 020500 */ + scripts_Hani, /* 020600 */ + scripts_Hani, /* 020700 */ + scripts_Hani, /* 020800 */ + scripts_Hani, /* 020900 */ + scripts_Hani, /* 020A00 */ + scripts_Hani, /* 020B00 */ + scripts_Hani, /* 020C00 */ + scripts_Hani, /* 020D00 */ + scripts_Hani, /* 020E00 */ + scripts_Hani, /* 020F00 */ + scripts_Hani, /* 021000 */ + scripts_Hani, /* 021100 */ + scripts_Hani, /* 021200 */ + scripts_Hani, /* 021300 */ + scripts_Hani, /* 021400 */ + scripts_Hani, /* 021500 */ + scripts_Hani, /* 021600 */ + scripts_Hani, /* 021700 */ + scripts_Hani, /* 021800 */ + scripts_Hani, /* 021900 */ + scripts_Hani, /* 021A00 */ + scripts_Hani, /* 021B00 */ + scripts_Hani, /* 021C00 */ + scripts_Hani, /* 021D00 */ + scripts_Hani, /* 021E00 */ + scripts_Hani, /* 021F00 */ + scripts_Hani, /* 022000 */ + scripts_Hani, /* 022100 */ + scripts_Hani, /* 022200 */ + scripts_Hani, /* 022300 */ + scripts_Hani, /* 022400 */ + scripts_Hani, /* 022500 */ + scripts_Hani, /* 022600 */ + scripts_Hani, /* 022700 */ + scripts_Hani, /* 022800 */ + scripts_Hani, /* 022900 */ + scripts_Hani, /* 022A00 */ + scripts_Hani, /* 022B00 */ + scripts_Hani, /* 022C00 */ + scripts_Hani, /* 022D00 */ + scripts_Hani, /* 022E00 */ + scripts_Hani, /* 022F00 */ + scripts_Hani, /* 023000 */ + scripts_Hani, /* 023100 */ + scripts_Hani, /* 023200 */ + scripts_Hani, /* 023300 */ + scripts_Hani, /* 023400 */ + scripts_Hani, /* 023500 */ + scripts_Hani, /* 023600 */ + scripts_Hani, /* 023700 */ + scripts_Hani, /* 023800 */ + scripts_Hani, /* 023900 */ + scripts_Hani, /* 023A00 */ + scripts_Hani, /* 023B00 */ + scripts_Hani, /* 023C00 */ + scripts_Hani, /* 023D00 */ + scripts_Hani, /* 023E00 */ + scripts_Hani, /* 023F00 */ + scripts_Hani, /* 024000 */ + scripts_Hani, /* 024100 */ + scripts_Hani, /* 024200 */ + scripts_Hani, /* 024300 */ + scripts_Hani, /* 024400 */ + scripts_Hani, /* 024500 */ + scripts_Hani, /* 024600 */ + scripts_Hani, /* 024700 */ + scripts_Hani, /* 024800 */ + scripts_Hani, /* 024900 */ + scripts_Hani, /* 024A00 */ + scripts_Hani, /* 024B00 */ + scripts_Hani, /* 024C00 */ + scripts_Hani, /* 024D00 */ + scripts_Hani, /* 024E00 */ + scripts_Hani, /* 024F00 */ + scripts_Hani, /* 025000 */ + scripts_Hani, /* 025100 */ + scripts_Hani, /* 025200 */ + scripts_Hani, /* 025300 */ + scripts_Hani, /* 025400 */ + scripts_Hani, /* 025500 */ + scripts_Hani, /* 025600 */ + scripts_Hani, /* 025700 */ + scripts_Hani, /* 025800 */ + scripts_Hani, /* 025900 */ + scripts_Hani, /* 025A00 */ + scripts_Hani, /* 025B00 */ + scripts_Hani, /* 025C00 */ + scripts_Hani, /* 025D00 */ + scripts_Hani, /* 025E00 */ + scripts_Hani, /* 025F00 */ + scripts_Hani, /* 026000 */ + scripts_Hani, /* 026100 */ + scripts_Hani, /* 026200 */ + scripts_Hani, /* 026300 */ + scripts_Hani, /* 026400 */ + scripts_Hani, /* 026500 */ + scripts_Hani, /* 026600 */ + scripts_Hani, /* 026700 */ + scripts_Hani, /* 026800 */ + scripts_Hani, /* 026900 */ + scripts_Hani, /* 026A00 */ + scripts_Hani, /* 026B00 */ + scripts_Hani, /* 026C00 */ + scripts_Hani, /* 026D00 */ + scripts_Hani, /* 026E00 */ + scripts_Hani, /* 026F00 */ + scripts_Hani, /* 027000 */ + scripts_Hani, /* 027100 */ + scripts_Hani, /* 027200 */ + scripts_Hani, /* 027300 */ + scripts_Hani, /* 027400 */ + scripts_Hani, /* 027500 */ + scripts_Hani, /* 027600 */ + scripts_Hani, /* 027700 */ + scripts_Hani, /* 027800 */ + scripts_Hani, /* 027900 */ + scripts_Hani, /* 027A00 */ + scripts_Hani, /* 027B00 */ + scripts_Hani, /* 027C00 */ + scripts_Hani, /* 027D00 */ + scripts_Hani, /* 027E00 */ + scripts_Hani, /* 027F00 */ + scripts_Hani, /* 028000 */ + scripts_Hani, /* 028100 */ + scripts_Hani, /* 028200 */ + scripts_Hani, /* 028300 */ + scripts_Hani, /* 028400 */ + scripts_Hani, /* 028500 */ + scripts_Hani, /* 028600 */ + scripts_Hani, /* 028700 */ + scripts_Hani, /* 028800 */ + scripts_Hani, /* 028900 */ + scripts_Hani, /* 028A00 */ + scripts_Hani, /* 028B00 */ + scripts_Hani, /* 028C00 */ + scripts_Hani, /* 028D00 */ + scripts_Hani, /* 028E00 */ + scripts_Hani, /* 028F00 */ + scripts_Hani, /* 029000 */ + scripts_Hani, /* 029100 */ + scripts_Hani, /* 029200 */ + scripts_Hani, /* 029300 */ + scripts_Hani, /* 029400 */ + scripts_Hani, /* 029500 */ + scripts_Hani, /* 029600 */ + scripts_Hani, /* 029700 */ + scripts_Hani, /* 029800 */ + scripts_Hani, /* 029900 */ + scripts_Hani, /* 029A00 */ + scripts_Hani, /* 029B00 */ + scripts_Hani, /* 029C00 */ + scripts_Hani, /* 029D00 */ + scripts_Hani, /* 029E00 */ + scripts_Hani, /* 029F00 */ + scripts_Hani, /* 02A000 */ + scripts_Hani, /* 02A100 */ + scripts_Hani, /* 02A200 */ + scripts_Hani, /* 02A300 */ + scripts_Hani, /* 02A400 */ + scripts_Hani, /* 02A500 */ scripts_02A600, - scripts_Hani, // 02A700 - scripts_Hani, // 02A800 - scripts_Hani, // 02A900 - scripts_Hani, // 02AA00 - scripts_Hani, // 02AB00 - scripts_Hani, // 02AC00 - scripts_Hani, // 02AD00 - scripts_Hani, // 02AE00 - scripts_Hani, // 02AF00 - scripts_Hani, // 02B000 - scripts_Hani, // 02B100 - scripts_Hani, // 02B200 - scripts_Hani, // 02B300 - scripts_Hani, // 02B400 - scripts_Hani, // 02B500 - scripts_Hani, // 02B600 + scripts_Hani, /* 02A700 */ + scripts_Hani, /* 02A800 */ + scripts_Hani, /* 02A900 */ + scripts_Hani, /* 02AA00 */ + scripts_Hani, /* 02AB00 */ + scripts_Hani, /* 02AC00 */ + scripts_Hani, /* 02AD00 */ + scripts_Hani, /* 02AE00 */ + scripts_Hani, /* 02AF00 */ + scripts_Hani, /* 02B000 */ + scripts_Hani, /* 02B100 */ + scripts_Hani, /* 02B200 */ + scripts_Hani, /* 02B300 */ + scripts_Hani, /* 02B400 */ + scripts_Hani, /* 02B500 */ + scripts_Hani, /* 02B600 */ scripts_02B700, scripts_02B800, - scripts_Hani, // 02B900 - scripts_Hani, // 02BA00 - scripts_Hani, // 02BB00 - scripts_Hani, // 02BC00 - scripts_Hani, // 02BD00 - scripts_Hani, // 02BE00 - scripts_Hani, // 02BF00 - scripts_Hani, // 02C000 - scripts_Hani, // 02C100 - scripts_Hani, // 02C200 - scripts_Hani, // 02C300 - scripts_Hani, // 02C400 - scripts_Hani, // 02C500 - scripts_Hani, // 02C600 - scripts_Hani, // 02C700 - scripts_Hani, // 02C800 - scripts_Hani, // 02C900 - scripts_Hani, // 02CA00 - scripts_Hani, // 02CB00 - scripts_Hani, // 02CC00 - scripts_Hani, // 02CD00 + scripts_Hani, /* 02B900 */ + scripts_Hani, /* 02BA00 */ + scripts_Hani, /* 02BB00 */ + scripts_Hani, /* 02BC00 */ + scripts_Hani, /* 02BD00 */ + scripts_Hani, /* 02BE00 */ + scripts_Hani, /* 02BF00 */ + scripts_Hani, /* 02C000 */ + scripts_Hani, /* 02C100 */ + scripts_Hani, /* 02C200 */ + scripts_Hani, /* 02C300 */ + scripts_Hani, /* 02C400 */ + scripts_Hani, /* 02C500 */ + scripts_Hani, /* 02C600 */ + scripts_Hani, /* 02C700 */ + scripts_Hani, /* 02C800 */ + scripts_Hani, /* 02C900 */ + scripts_Hani, /* 02CA00 */ + scripts_Hani, /* 02CB00 */ + scripts_Hani, /* 02CC00 */ + scripts_Hani, /* 02CD00 */ scripts_02CE00, - scripts_Zzzz, // 02CF00 - scripts_Zzzz, // 02D000 - scripts_Zzzz, // 02D100 - scripts_Zzzz, // 02D200 - scripts_Zzzz, // 02D300 - scripts_Zzzz, // 02D400 - scripts_Zzzz, // 02D500 - scripts_Zzzz, // 02D600 - scripts_Zzzz, // 02D700 - scripts_Zzzz, // 02D800 - scripts_Zzzz, // 02D900 - scripts_Zzzz, // 02DA00 - scripts_Zzzz, // 02DB00 - scripts_Zzzz, // 02DC00 - scripts_Zzzz, // 02DD00 - scripts_Zzzz, // 02DE00 - scripts_Zzzz, // 02DF00 - scripts_Zzzz, // 02E000 - scripts_Zzzz, // 02E100 - scripts_Zzzz, // 02E200 - scripts_Zzzz, // 02E300 - scripts_Zzzz, // 02E400 - scripts_Zzzz, // 02E500 - scripts_Zzzz, // 02E600 - scripts_Zzzz, // 02E700 - scripts_Zzzz, // 02E800 - scripts_Zzzz, // 02E900 - scripts_Zzzz, // 02EA00 - scripts_Zzzz, // 02EB00 - scripts_Zzzz, // 02EC00 - scripts_Zzzz, // 02ED00 - scripts_Zzzz, // 02EE00 - scripts_Zzzz, // 02EF00 - scripts_Zzzz, // 02F000 - scripts_Zzzz, // 02F100 - scripts_Zzzz, // 02F200 - scripts_Zzzz, // 02F300 - scripts_Zzzz, // 02F400 - scripts_Zzzz, // 02F500 - scripts_Zzzz, // 02F600 - scripts_Zzzz, // 02F700 - scripts_Hani, // 02F800 - scripts_Hani, // 02F900 + scripts_Zzzz, /* 02CF00 */ + scripts_Zzzz, /* 02D000 */ + scripts_Zzzz, /* 02D100 */ + scripts_Zzzz, /* 02D200 */ + scripts_Zzzz, /* 02D300 */ + scripts_Zzzz, /* 02D400 */ + scripts_Zzzz, /* 02D500 */ + scripts_Zzzz, /* 02D600 */ + scripts_Zzzz, /* 02D700 */ + scripts_Zzzz, /* 02D800 */ + scripts_Zzzz, /* 02D900 */ + scripts_Zzzz, /* 02DA00 */ + scripts_Zzzz, /* 02DB00 */ + scripts_Zzzz, /* 02DC00 */ + scripts_Zzzz, /* 02DD00 */ + scripts_Zzzz, /* 02DE00 */ + scripts_Zzzz, /* 02DF00 */ + scripts_Zzzz, /* 02E000 */ + scripts_Zzzz, /* 02E100 */ + scripts_Zzzz, /* 02E200 */ + scripts_Zzzz, /* 02E300 */ + scripts_Zzzz, /* 02E400 */ + scripts_Zzzz, /* 02E500 */ + scripts_Zzzz, /* 02E600 */ + scripts_Zzzz, /* 02E700 */ + scripts_Zzzz, /* 02E800 */ + scripts_Zzzz, /* 02E900 */ + scripts_Zzzz, /* 02EA00 */ + scripts_Zzzz, /* 02EB00 */ + scripts_Zzzz, /* 02EC00 */ + scripts_Zzzz, /* 02ED00 */ + scripts_Zzzz, /* 02EE00 */ + scripts_Zzzz, /* 02EF00 */ + scripts_Zzzz, /* 02F000 */ + scripts_Zzzz, /* 02F100 */ + scripts_Zzzz, /* 02F200 */ + scripts_Zzzz, /* 02F300 */ + scripts_Zzzz, /* 02F400 */ + scripts_Zzzz, /* 02F500 */ + scripts_Zzzz, /* 02F600 */ + scripts_Zzzz, /* 02F700 */ + scripts_Hani, /* 02F800 */ + scripts_Hani, /* 02F900 */ scripts_02FA00, }; @@ -3648,23 +3649,23 @@ static const uint8_t *scripts_0E0000_0E01FF[] = ucd_script ucd_lookup_script(codepoint_t c) { - if (c <= 0x00D7FF) // 000000..00D7FF + if (c <= 0x00D7FF) /* 000000..00D7FF */ { const uint8_t *table = scripts_000000_00D7FF[(c - 0x000000) / 256]; return (ucd_script)table[c % 256]; } - if (c <= 0x00F7FF) return Zzzz; // 00D800..00F7FF : Surrogates / Private Use Area - if (c <= 0x02FAFF) // 00F800..02FAFF + if (c <= 0x00F7FF) return Zzzz; /* 00D800..00F7FF : Surrogates / Private Use Area */ + if (c <= 0x02FAFF) /* 00F800..02FAFF */ { const uint8_t *table = scripts_00F800_02FAFF[(c - 0x00F800) / 256]; return (ucd_script)table[c % 256]; } - if (c <= 0x0DFFFF) return Zzzz; // 02FB00..0DFFFF : Unassigned - if (c <= 0x0E01FF) // 0E0000..0E01FF + if (c <= 0x0DFFFF) return Zzzz; /* 02FB00..0DFFFF : Unassigned */ + if (c <= 0x0E01FF) /* 0E0000..0E01FF */ { const uint8_t *table = scripts_0E0000_0E01FF[(c - 0x0E0000) / 256]; return (ucd_script)table[c % 256]; } - if (c <= 0x10FFFF) return Zzzz; // 0E0200..10FFFF : Unassigned - return Zzzz; // Invalid Unicode Codepoint + if (c <= 0x10FFFF) return Zzzz; /* 0E0200..10FFFF : Unassigned */ + return Zzzz; /* Invalid Unicode Codepoint */ } diff --git a/tests/printcdata.c b/tests/printcdata.c index 686ef44a..ec3ca6d7 100644 --- a/tests/printcdata.c +++ b/tests/printcdata.c @@ -86,7 +86,7 @@ void uprintf_codepoint(FILE *out, codepoint_t c, char mode) { switch (mode) { - case 'c': // character + case 'c': /* character */ switch (c) { case '\t': fputs("\\t", out); break; @@ -95,10 +95,10 @@ void uprintf_codepoint(FILE *out, codepoint_t c, char mode) default: fput_utf8c(out, c); break; } break; - case 'h': // hexadecimal (lower) + case 'h': /* hexadecimal (lower) */ fprintf(out, "%06x", c); break; - case 'H': // hexadecimal (upper) + case 'H': /* hexadecimal (upper) */ fprintf(out, "%06X", c); break; } @@ -108,40 +108,40 @@ void uprintf_is(FILE *out, codepoint_t c, char mode) { switch (mode) { - case 'A': // alpha-numeric + case 'A': /* alpha-numeric */ fputc(iswalnum(c) ? '1' : '0', out); break; - case 'a': // alpha + case 'a': /* alpha */ fputc(iswalpha(c) ? '1' : '0', out); break; - case 'b': // blank + case 'b': /* blank */ fputc(iswblank(c) ? '1' : '0', out); break; - case 'c': // control + case 'c': /* control */ fputc(iswcntrl(c) ? '1' : '0', out); break; - case 'd': // numeric + case 'd': /* numeric */ fputc(iswdigit(c) ? '1' : '0', out); break; - case 'g': // glyph + case 'g': /* glyph */ fputc(iswgraph(c) ? '1' : '0', out); break; - case 'l': // lower case + case 'l': /* lower case */ fputc(iswlower(c) ? '1' : '0', out); break; - case 'P': // printable + case 'P': /* printable */ fputc(iswprint(c) ? '1' : '0', out); break; - case 'p': // punctuation + case 'p': /* punctuation */ fputc(iswpunct(c) ? '1' : '0', out); break; - case 's': // whitespace + case 's': /* whitespace */ fputc(iswspace(c) ? '1' : '0', out); break; - case 'u': // upper case + case 'u': /* upper case */ fputc(iswupper(c) ? '1' : '0', out); break; - case 'x': // xdigit + case 'x': /* xdigit */ fputc(iswxdigit(c) ? '1' : '0', out); break; } @@ -154,31 +154,31 @@ void uprintf(FILE *out, codepoint_t c, const char *format) case '%': switch (*++format) { - case 'c': // category + case 'c': /* category */ fputs(ucd_get_category_string(ucd_lookup_category(c)), out); break; - case 'C': // category group + case 'C': /* category group */ fputs(ucd_get_category_group_string(ucd_lookup_category_group(c)), out); break; - case 'p': // codepoint + case 'p': /* codepoint */ uprintf_codepoint(out, c, *++format); break; - case 'P': // properties + case 'P': /* properties */ fprintf(out, "%016llx", ucd_properties(c, ucd_lookup_category(c))); break; - case 'i': // is* + case 'i': /* is* */ uprintf_is(out, c, *++format); break; - case 'L': // lowercase + case 'L': /* lowercase */ uprintf_codepoint(out, towlower(c), *++format); break; - case 's': // script + case 's': /* script */ fputs(ucd_get_script_string(ucd_lookup_script(c)), out); break; - case 'T': // titlecase + case 'T': /* titlecase */ uprintf_codepoint(out, ucd_totitle(c), *++format); break; - case 'U': // uppercase + case 'U': /* uppercase */ uprintf_codepoint(out, towupper(c), *++format); break; } diff --git a/tests/printucddata.c b/tests/printucddata.c index bdcb783f..ad7bbc28 100644 --- a/tests/printucddata.c +++ b/tests/printucddata.c @@ -83,7 +83,7 @@ void uprintf_codepoint(FILE *out, codepoint_t c, char mode) { switch (mode) { - case 'c': // character + case 'c': /* character */ switch (c) { case '\t': fputs("\\t", out); break; @@ -92,10 +92,10 @@ void uprintf_codepoint(FILE *out, codepoint_t c, char mode) default: fput_utf8c(out, c); break; } break; - case 'h': // hexadecimal (lower) + case 'h': /* hexadecimal (lower) */ fprintf(out, "%06x", c); break; - case 'H': // hexadecimal (upper) + case 'H': /* hexadecimal (upper) */ fprintf(out, "%06X", c); break; } @@ -105,40 +105,40 @@ void uprintf_is(FILE *out, codepoint_t c, char mode) { switch (mode) { - case 'A': // alpha-numeric + case 'A': /* alpha-numeric */ fputc(ucd_isalnum(c) ? '1' : '0', out); break; - case 'a': // alpha + case 'a': /* alpha */ fputc(ucd_isalpha(c) ? '1' : '0', out); break; - case 'b': // blank + case 'b': /* blank */ fputc(ucd_isblank(c) ? '1' : '0', out); break; - case 'c': // control + case 'c': /* control */ fputc(ucd_iscntrl(c) ? '1' : '0', out); break; - case 'd': // numeric + case 'd': /* numeric */ fputc(ucd_isdigit(c) ? '1' : '0', out); break; - case 'g': // glyph + case 'g': /* glyph */ fputc(ucd_isgraph(c) ? '1' : '0', out); break; - case 'l': // lower case + case 'l': /* lower case */ fputc(ucd_islower(c) ? '1' : '0', out); break; - case 'P': // printable + case 'P': /* printable */ fputc(ucd_isprint(c) ? '1' : '0', out); break; - case 'p': // punctuation + case 'p': /* punctuation */ fputc(ucd_ispunct(c) ? '1' : '0', out); break; - case 's': // whitespace + case 's': /* whitespace */ fputc(ucd_isspace(c) ? '1' : '0', out); break; - case 'u': // upper case + case 'u': /* upper case */ fputc(ucd_isupper(c) ? '1' : '0', out); break; - case 'x': // xdigit + case 'x': /* xdigit */ fputc(ucd_isxdigit(c) ? '1' : '0', out); break; } @@ -151,31 +151,31 @@ void uprintf(FILE *out, codepoint_t c, const char *format) case '%': switch (*++format) { - case 'c': // category + case 'c': /* category */ fputs(ucd_get_category_string(ucd_lookup_category(c)), out); break; - case 'C': // category group + case 'C': /* category group */ fputs(ucd_get_category_group_string(ucd_lookup_category_group(c)), out); break; - case 'p': // codepoint + case 'p': /* codepoint */ uprintf_codepoint(out, c, *++format); break; - case 'P': // properties + case 'P': /* properties */ fprintf(out, "%016llx", ucd_properties(c, ucd_lookup_category(c))); break; - case 'i': // is* + case 'i': /* is* */ uprintf_is(out, c, *++format); break; - case 'L': // lowercase + case 'L': /* lowercase */ uprintf_codepoint(out, ucd_tolower(c), *++format); break; - case 's': // script + case 's': /* script */ fputs(ucd_get_script_string(ucd_lookup_script(c)), out); break; - case 'T': // titlecase + case 'T': /* titlecase */ uprintf_codepoint(out, ucd_totitle(c), *++format); break; - case 'U': // uppercase + case 'U': /* uppercase */ uprintf_codepoint(out, ucd_toupper(c), *++format); break; } diff --git a/tools/case.py b/tools/case.py index 7af5d55c..3c237a47 100755 --- a/tools/case.py +++ b/tools/case.py @@ -51,14 +51,15 @@ if __name__ == '__main__': * along with ucd-tools. If not, see . */ -// NOTE: This file is automatically generated from the UnicodeData.txt file in -// the Unicode Character database by the ucd-tools/tools/categories.py script. +/* NOTE: This file is automatically generated from the UnicodeData.txt file in + * the Unicode Character database by the ucd-tools/tools/categories.py script. + */ #include "ucd/ucd.h" #include -// Unicode Character Data %s +/* Unicode Character Data %s */ struct case_conversion_entry { diff --git a/tools/categories.py b/tools/categories.py index 35dca2bf..43b46eb0 100755 --- a/tools/categories.py +++ b/tools/categories.py @@ -110,8 +110,9 @@ if __name__ == '__main__': * along with ucd-tools. If not, see . */ -// NOTE: This file is automatically generated from the UnicodeData.txt file in -// the Unicode Character database by the ucd-tools/tools/categories.py script. +/* NOTE: This file is automatically generated from the UnicodeData.txt file in + * the Unicode Character database by the ucd-tools/tools/categories.py script. + */ #include "ucd/ucd.h" @@ -149,7 +150,7 @@ if __name__ == '__main__': #define Zs UCD_CATEGORY_Zs #define Ii UCD_CATEGORY_Ii -// Unicode Character Data %s +/* Unicode Character Data %s */ """ % ucd_version) for category in special_categories: @@ -187,7 +188,7 @@ if __name__ == '__main__': sys.stdout.write('{\n') for codepoint, table in sorted(category_tables[table_index].items()): if isinstance(table, str): - sys.stdout.write('\tcategories_%s, // %s\n' % (table, codepoint)) + sys.stdout.write('\tcategories_%s, /* %s */\n' % (table, codepoint)) else: sys.stdout.write('\tcategories_%s,\n' % codepoint) sys.stdout.write('};\n') @@ -197,14 +198,14 @@ if __name__ == '__main__': sys.stdout.write('{\n') for codepoints, category, comment in category_sets: if category: - sys.stdout.write('\tif (c <= 0x%s) return %s; // %s : %s\n' % (codepoints.last, category, codepoints, comment)) + sys.stdout.write('\tif (c <= 0x%s) return %s; /* %s : %s */\n' % (codepoints.last, category, codepoints, comment)) else: - sys.stdout.write('\tif (c <= 0x%s) // %s\n' % (codepoints.last, codepoints)) + sys.stdout.write('\tif (c <= 0x%s) /* %s */\n' % (codepoints.last, codepoints)) sys.stdout.write('\t{\n') sys.stdout.write('\t\tconst uint8_t *table = categories_%s_%s[(c - 0x%s) / 256];\n' % (codepoints.first, codepoints.last, codepoints.first)) sys.stdout.write('\t\treturn (ucd_category)table[c % 256];\n') sys.stdout.write('\t}\n') - sys.stdout.write('\treturn Ii; // Invalid Unicode Codepoint\n') + sys.stdout.write('\treturn Ii; /* Invalid Unicode Codepoint */\n') sys.stdout.write('}\n') sys.stdout.write(""" diff --git a/tools/scripts.py b/tools/scripts.py index 54fcfc6a..ba125f6d 100755 --- a/tools/scripts.py +++ b/tools/scripts.py @@ -104,8 +104,9 @@ if __name__ == '__main__': * along with ucd-tools. If not, see . */ -// NOTE: This file is automatically generated from the Scripts.txt file in -// the Unicode Character database by the ucd-tools/tools/scripts.py script. +/* NOTE: This file is automatically generated from the Scripts.txt file in + * the Unicode Character database by the ucd-tools/tools/scripts.py script. + */ #include "ucd/ucd.h" @@ -285,7 +286,7 @@ if __name__ == '__main__': #define Zyyy UCD_SCRIPT_Zyyy #define Zzzz UCD_SCRIPT_Zzzz -// Unicode Character Data %s +/* Unicode Character Data %s */ """ % ucd_version) for script in special_scripts: @@ -323,7 +324,7 @@ if __name__ == '__main__': sys.stdout.write('{\n') for codepoint, table in sorted(script_tables[table_index].items()): if isinstance(table, str): - sys.stdout.write('\tscripts_%s, // %s\n' % (table, codepoint)) + sys.stdout.write('\tscripts_%s, /* %s */\n' % (table, codepoint)) else: sys.stdout.write('\tscripts_%s,\n' % codepoint) sys.stdout.write('};\n') @@ -333,12 +334,12 @@ if __name__ == '__main__': sys.stdout.write('{\n') for codepoints, script, comment in script_sets: if script: - sys.stdout.write('\tif (c <= 0x%s) return %s; // %s : %s\n' % (codepoints.last, script, codepoints, comment)) + sys.stdout.write('\tif (c <= 0x%s) return %s; /* %s : %s */\n' % (codepoints.last, script, codepoints, comment)) else: - sys.stdout.write('\tif (c <= 0x%s) // %s\n' % (codepoints.last, codepoints)) + sys.stdout.write('\tif (c <= 0x%s) /* %s */\n' % (codepoints.last, codepoints)) sys.stdout.write('\t{\n') sys.stdout.write('\t\tconst uint8_t *table = scripts_%s_%s[(c - 0x%s) / 256];\n' % (codepoints.first, codepoints.last, codepoints.first)) sys.stdout.write('\t\treturn (ucd_script)table[c % 256];\n') sys.stdout.write('\t}\n') - sys.stdout.write('\treturn Zzzz; // Invalid Unicode Codepoint\n') + sys.stdout.write('\treturn Zzzz; /* Invalid Unicode Codepoint */\n') sys.stdout.write('}\n') From 223d14bec8f3dee7a9c866248fccef2113dda92f Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 12:25:26 +0100 Subject: [PATCH 06/17] Move the type declaration out of the for loops to support building with a C89 compiler. --- tests/printcdata.c | 6 ++++-- tests/printucddata.c | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/tests/printcdata.c b/tests/printcdata.c index ec3ca6d7..09eaf1cd 100644 --- a/tests/printcdata.c +++ b/tests/printcdata.c @@ -224,7 +224,8 @@ int main(int argc, char **argv) { FILE *in = NULL; const char *format = NULL; - for (int argn = 1; argn != argc; ++argn) + int argn; + for (argn = 1; argn != argc; ++argn) { const char *arg = argv[argn]; if (!strcmp(arg, "--stdin") || !strcmp(arg, "-")) @@ -250,7 +251,8 @@ int main(int argc, char **argv) } else { - for (codepoint_t c = 0; c <= 0x10FFFF; ++c) + codepoint_t c; + for (c = 0; c <= 0x10FFFF; ++c) uprintf(stdout, c, format ? format : "%pH %s %C %c %UH %LH %TH %id %ix %ic %is %ib %ip %iP %ig %iA %ia %iu %il %P\n"); } diff --git a/tests/printucddata.c b/tests/printucddata.c index ad7bbc28..b592f820 100644 --- a/tests/printucddata.c +++ b/tests/printucddata.c @@ -221,7 +221,8 @@ int main(int argc, char **argv) { FILE *in = NULL; const char *format = NULL; - for (int argn = 1; argn != argc; ++argn) + int argn; + for (argn = 1; argn != argc; ++argn) { const char *arg = argv[argn]; if (!strcmp(arg, "--stdin") || !strcmp(arg, "-")) @@ -245,7 +246,8 @@ int main(int argc, char **argv) } else { - for (codepoint_t c = 0; c <= 0x10FFFF; ++c) + codepoint_t c; + for (c = 0; c <= 0x10FFFF; ++c) uprintf(stdout, c, format ? format : "%pH %s %C %c %UH %LH %TH %id %ix %ic %is %ib %ip %iP %ig %iA %ia %iu %il %P\n"); } From bdc255835ecd2a188ad4f20f8bed618a07204dc7 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 12:39:13 +0100 Subject: [PATCH 07/17] Provide a compatibility implementation of iswblank for C89 compilers. --- .gitignore | 1 + configure.ac | 1 + tests/printcdata.c | 8 ++++++++ 3 files changed, 10 insertions(+) diff --git a/.gitignore b/.gitignore index fdfc86f9..532cd277 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ .*.swp +*~ # intermediate files: diff --git a/configure.ac b/configure.ac index c99d67ce..0a7e6665 100644 --- a/configure.ac +++ b/configure.ac @@ -24,6 +24,7 @@ dnl library checks. dnl ================================================================ AC_CHECK_HEADERS([stddef.h]) dnl C89 +AC_CHECK_FUNCS([iswblank]) dnl C99 AC_TYPE_UINT8_T AC_TYPE_UINT32_T diff --git a/tests/printcdata.c b/tests/printcdata.c index 09eaf1cd..6992bb94 100644 --- a/tests/printcdata.c +++ b/tests/printcdata.c @@ -17,6 +17,7 @@ * along with ucd-tools. If not, see . */ +#include "config.h" #include "ucd/ucd.h" #include @@ -25,6 +26,13 @@ #include #include +#ifndef HAVE_ISWBLANK +static int iswblank(wint_t c) +{ + return iswspace(c) && !(c >= 0x0A && c <= 0x0D); +} +#endif + void fput_utf8c(FILE *out, codepoint_t c) { if (c < 0x80) From 4c1ff765f1dd9a5951ce01650bab03fe3308204c Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 15:13:08 +0100 Subject: [PATCH 08/17] Unicode Character Data 10.0.0 --- CHANGELOG.md | 1 + src/categories.c | 238 +++++++++++++++++++++-------------- src/include/ucd/ucd.h | 6 + src/proplist.c | 57 +++++++-- src/scripts.c | 279 ++++++++++++++++++++++++++---------------- src/tostring.c | 3 + tools/scripts.py | 3 + 7 files changed, 381 insertions(+), 206 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ce304d7..3dbb62f6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ * Improve ctype compatibility. * PropList and emoji-data property lookup. * Support building with a C89 compiler. +* Update to Unicode Character Data 10.0.0. ## 9.0.0 - 2016-12-28 diff --git a/src/categories.c b/src/categories.c index 6ec02144..4eade2eb 100644 --- a/src/categories.c +++ b/src/categories.c @@ -328,7 +328,7 @@ static const uint8_t categories_000800[256] = /* 30 */ Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Cn, /* 40 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 50 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Mn, Mn, Mn, Cn, Cn, Po, Cn, - /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -357,7 +357,7 @@ static const uint8_t categories_000900[256] = /* C0 */ Mc, Mn, Mn, Mn, Mn, Cn, Cn, Mc, Mc, Cn, Cn, Mc, Mc, Mn, Lo, Cn, /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Mc, Cn, Cn, Cn, Cn, Lo, Lo, Cn, Lo, /* E0 */ Lo, Lo, Mn, Mn, Cn, Cn, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, - /* F0 */ Lo, Lo, Sc, Sc, No, No, No, No, No, No, So, Sc, Cn, Cn, Cn, Cn, + /* F0 */ Lo, Lo, Sc, Sc, No, No, No, No, No, No, So, Sc, Lo, Po, Cn, Cn, }; static const uint8_t categories_000A00[256] = @@ -377,7 +377,7 @@ static const uint8_t categories_000A00[256] = /* C0 */ Mc, Mn, Mn, Mn, Mn, Mn, Cn, Mn, Mn, Mc, Cn, Mc, Mc, Mn, Cn, Cn, /* D0 */ Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* E0 */ Lo, Lo, Mn, Mn, Cn, Cn, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, - /* F0 */ Po, Sc, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Lo, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Po, Sc, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Lo, Mn, Mn, Mn, Mn, Mn, Mn, }; static const uint8_t categories_000B00[256] = @@ -422,10 +422,10 @@ static const uint8_t categories_000C00[256] = static const uint8_t categories_000D00[256] = { - /* 00 */ Cn, Mn, Mc, Mc, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, + /* 00 */ Mn, Mn, Mc, Mc, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, /* 10 */ Lo, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* 30 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Lo, Mc, Mc, + /* 30 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Mn, Mn, Lo, Mc, Mc, /* 40 */ Mc, Mn, Mn, Mn, Mn, Cn, Mc, Mc, Mc, Cn, Mc, Mc, Mc, Mn, Lo, So, /* 50 */ Cn, Cn, Cn, Cn, Lo, Lo, Lo, Mc, No, No, No, No, No, No, No, Lo, /* 60 */ Lo, Lo, Mn, Mn, Cn, Cn, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, @@ -697,7 +697,7 @@ static const uint8_t categories_001C00[256] = /* C0 */ Po, Po, Po, Po, Po, Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* D0 */ Mn, Mn, Mn, Po, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* E0 */ Mn, Mc, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Lo, Lo, Lo, Lo, Mn, Lo, Lo, - /* F0 */ Lo, Lo, Mc, Mc, Mn, Lo, Lo, Cn, Mn, Mn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Lo, Lo, Mc, Mc, Mn, Lo, Lo, Mc, Mn, Mn, Cn, Cn, Cn, Cn, Cn, Cn, }; static const uint8_t categories_001D00[256] = @@ -717,7 +717,7 @@ static const uint8_t categories_001D00[256] = /* C0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* D0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, /* E0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, - /* F0 */ Mn, Mn, Mn, Mn, Mn, Mn, Cn, Cn, Cn, Cn, Cn, Mn, Mn, Mn, Mn, Mn, + /* F0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Cn, Mn, Mn, Mn, Mn, Mn, }; static const uint8_t categories_001E00[256] = @@ -773,7 +773,7 @@ static const uint8_t categories_002000[256] = /* 80 */ No, No, No, No, No, No, No, No, No, No, Sm, Sm, Sm, Ps, Pe, Cn, /* 90 */ Lm, Lm, Lm, Lm, Lm, Lm, Lm, Lm, Lm, Lm, Lm, Lm, Lm, Cn, Cn, Cn, /* A0 */ Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, - /* B0 */ Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Cn, + /* B0 */ Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, Sc, /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* D0 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Me, Me, Me, /* E0 */ Me, Mn, Me, Me, Me, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mn, @@ -817,7 +817,7 @@ static const uint8_t categories_002300[256] = /* C0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* D0 */ So, So, So, So, So, So, So, So, So, So, So, So, Sm, Sm, Sm, Sm, /* E0 */ Sm, Sm, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* F0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, + /* F0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, }; static const uint8_t categories_002400[256] = @@ -935,7 +935,7 @@ static const uint8_t categories_002B00[256] = /* A0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* B0 */ So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, So, So, So, /* C0 */ So, So, So, So, So, So, So, So, So, Cn, So, So, So, So, So, So, - /* D0 */ So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, So, So, So, So, /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -986,7 +986,7 @@ static const uint8_t categories_002E00[256] = /* 10 */ Po, Po, Po, Po, Po, Po, Po, Pd, Po, Po, Pd, Po, Pi, Pf, Po, Po, /* 20 */ Pi, Pf, Ps, Pe, Ps, Pe, Ps, Pe, Ps, Pe, Po, Po, Po, Po, Po, Lm, /* 30 */ Po, Po, Po, Po, Po, Po, Po, Po, Po, Po, Pd, Pd, Po, Po, Po, Po, - /* 40 */ Pd, Po, Ps, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 40 */ Pd, Po, Ps, Po, Po, Po, Po, Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -1044,7 +1044,7 @@ static const uint8_t categories_003100[256] = { /* 00 */ Cn, Cn, Cn, Cn, Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, + /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, /* 30 */ Cn, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 40 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 50 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -1115,8 +1115,8 @@ static const uint8_t categories_009F00[256] = /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* B0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -1464,7 +1464,7 @@ static const uint8_t categories_010300[256] = { /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, - /* 20 */ No, No, No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 20 */ No, No, No, No, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Lo, Lo, Lo, /* 30 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 40 */ Lo, Nl, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Nl, Cn, Cn, Cn, Cn, Cn, /* 50 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -1842,17 +1842,17 @@ static const uint8_t categories_011800[256] = static const uint8_t categories_011A00[256] = { - /* 00 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 10 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 20 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 30 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 40 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 00 */ Lo, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Mc, Mn, Mn, Lo, Lo, Lo, Lo, Lo, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 30 */ Lo, Lo, Lo, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Lo, Mn, Mn, Mn, Mn, Po, + /* 40 */ Po, Po, Po, Po, Po, Po, Po, Mn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 50 */ Lo, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Mc, Mn, Mn, Mn, Lo, Lo, Lo, Lo, + /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 80 */ Lo, Lo, Lo, Lo, Cn, Cn, Lo, Lo, Lo, Lo, Mn, Mn, Mn, Mn, Mn, Mn, + /* 90 */ Mn, Mn, Mn, Mn, Mn, Mn, Mn, Mc, Mn, Mn, Po, Po, Po, Cn, Po, Po, + /* A0 */ Po, Po, Po, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -1880,6 +1880,26 @@ static const uint8_t categories_011C00[256] = /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; +static const uint8_t categories_011D00[256] = +{ + /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Lo, Lo, Cn, Lo, Lo, Lo, Lo, Lo, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 30 */ Lo, Mn, Mn, Mn, Mn, Mn, Mn, Cn, Cn, Cn, Mn, Cn, Mn, Mn, Cn, Mn, + /* 40 */ Mn, Mn, Mn, Mn, Mn, Mn, Lo, Mn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 50 */ Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Nd, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, +}; + static const uint8_t categories_012300[256] = { /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, @@ -2036,7 +2056,7 @@ static const uint8_t categories_016F00[256] = /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* E0 */ Lm, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* E0 */ Lm, Lm, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -2080,24 +2100,44 @@ static const uint8_t categories_018A00[256] = /* F0 */ Lo, Lo, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; -static const uint8_t categories_01B000[256] = +static const uint8_t categories_01B100[256] = { - /* 00 */ Lo, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 10 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, /* 20 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 30 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 40 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 50 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 80 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 90 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* B0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* F0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, +}; + +static const uint8_t categories_01B200[256] = +{ + /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 30 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 40 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 50 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 80 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 90 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* B0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* F0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Cn, Cn, Cn, Cn, }; static const uint8_t categories_01BC00[256] = @@ -2428,7 +2468,7 @@ static const uint8_t categories_01F200[256] = /* 30 */ So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, /* 40 */ So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 50 */ So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 60 */ So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 80 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 90 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, @@ -2475,9 +2515,9 @@ static const uint8_t categories_01F600[256] = /* A0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* B0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, /* C0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* D0 */ So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* E0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, - /* F0 */ So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* F0 */ So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; static const uint8_t categories_01F700[256] = @@ -2522,21 +2562,21 @@ static const uint8_t categories_01F800[256] = static const uint8_t categories_01F900[256] = { - /* 00 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 10 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, - /* 20 */ So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* 30 */ So, Cn, Cn, So, So, So, So, So, So, So, So, So, So, So, So, Cn, - /* 40 */ So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, - /* 50 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, - /* 60 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 00 */ So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, + /* 10 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* 20 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* 30 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, + /* 40 */ So, So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, + /* 50 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* 60 */ So, So, So, So, So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, /* 70 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* 80 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, - /* 90 */ So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* 90 */ So, So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* A0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* C0 */ So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* D0 */ So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, So, + /* E0 */ So, So, So, So, So, So, So, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -2613,10 +2653,30 @@ static const uint8_t categories_02CE00[256] = /* 80 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* 90 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, /* A0 */ Lo, Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* B0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* C0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* D0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, - /* E0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, + /* B0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* E0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* F0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, +}; + +static const uint8_t categories_02EB00[256] = +{ + /* 00 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 10 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 20 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 30 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 40 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 50 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 60 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 70 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 80 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* 90 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* A0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* B0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* C0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* D0 */ Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, Lo, + /* E0 */ Lo, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, /* F0 */ Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, Cn, }; @@ -2939,7 +2999,7 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_011A00, categories_Cn, /* 011B00 */ categories_011C00, - categories_Cn, /* 011D00 */ + categories_011D00, categories_Cn, /* 011E00 */ categories_Cn, /* 011F00 */ categories_Lo, /* 012000 */ @@ -3086,9 +3146,9 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_Cn, /* 01AD00 */ categories_Cn, /* 01AE00 */ categories_Cn, /* 01AF00 */ - categories_01B000, - categories_Cn, /* 01B100 */ - categories_Cn, /* 01B200 */ + categories_Lo, /* 01B000 */ + categories_01B100, + categories_01B200, categories_Cn, /* 01B300 */ categories_Cn, /* 01B400 */ categories_Cn, /* 01B500 */ @@ -3373,35 +3433,35 @@ static const uint8_t *categories_00F800_02FAFF[] = categories_Lo, /* 02CC00 */ categories_Lo, /* 02CD00 */ categories_02CE00, - categories_Cn, /* 02CF00 */ - categories_Cn, /* 02D000 */ - categories_Cn, /* 02D100 */ - categories_Cn, /* 02D200 */ - categories_Cn, /* 02D300 */ - categories_Cn, /* 02D400 */ - categories_Cn, /* 02D500 */ - categories_Cn, /* 02D600 */ - categories_Cn, /* 02D700 */ - categories_Cn, /* 02D800 */ - categories_Cn, /* 02D900 */ - categories_Cn, /* 02DA00 */ - categories_Cn, /* 02DB00 */ - categories_Cn, /* 02DC00 */ - categories_Cn, /* 02DD00 */ - categories_Cn, /* 02DE00 */ - categories_Cn, /* 02DF00 */ - categories_Cn, /* 02E000 */ - categories_Cn, /* 02E100 */ - categories_Cn, /* 02E200 */ - categories_Cn, /* 02E300 */ - categories_Cn, /* 02E400 */ - categories_Cn, /* 02E500 */ - categories_Cn, /* 02E600 */ - categories_Cn, /* 02E700 */ - categories_Cn, /* 02E800 */ - categories_Cn, /* 02E900 */ - categories_Cn, /* 02EA00 */ - categories_Cn, /* 02EB00 */ + categories_Lo, /* 02CF00 */ + categories_Lo, /* 02D000 */ + categories_Lo, /* 02D100 */ + categories_Lo, /* 02D200 */ + categories_Lo, /* 02D300 */ + categories_Lo, /* 02D400 */ + categories_Lo, /* 02D500 */ + categories_Lo, /* 02D600 */ + categories_Lo, /* 02D700 */ + categories_Lo, /* 02D800 */ + categories_Lo, /* 02D900 */ + categories_Lo, /* 02DA00 */ + categories_Lo, /* 02DB00 */ + categories_Lo, /* 02DC00 */ + categories_Lo, /* 02DD00 */ + categories_Lo, /* 02DE00 */ + categories_Lo, /* 02DF00 */ + categories_Lo, /* 02E000 */ + categories_Lo, /* 02E100 */ + categories_Lo, /* 02E200 */ + categories_Lo, /* 02E300 */ + categories_Lo, /* 02E400 */ + categories_Lo, /* 02E500 */ + categories_Lo, /* 02E600 */ + categories_Lo, /* 02E700 */ + categories_Lo, /* 02E800 */ + categories_Lo, /* 02E900 */ + categories_Lo, /* 02EA00 */ + categories_02EB00, categories_Cn, /* 02EC00 */ categories_Cn, /* 02ED00 */ categories_Cn, /* 02EE00 */ diff --git a/src/include/ucd/ucd.h b/src/include/ucd/ucd.h index ddabe65a..33133c5f 100644 --- a/src/include/ucd/ucd.h +++ b/src/include/ucd/ucd.h @@ -176,6 +176,7 @@ typedef enum ucd_script_ UCD_SCRIPT_Geok, /**< @brief Khutsuri Script */ UCD_SCRIPT_Geor, /**< @brief Geirgian Script */ UCD_SCRIPT_Glag, /**< @brief Glagolitic Script */ + UCD_SCRIPT_Gonm, /**< @brief Masaram Gondi */ UCD_SCRIPT_Goth, /**< @brief Gothic Script */ UCD_SCRIPT_Gran, /**< @brief Grantha Script */ UCD_SCRIPT_Grek, /**< @brief Greek Script */ @@ -273,6 +274,7 @@ typedef enum ucd_script_ UCD_SCRIPT_Sind, /**< @brief Sindhi Script */ UCD_SCRIPT_Sinh, /**< @brief Sinhala Script */ UCD_SCRIPT_Sora, /**< @brief Sora Sompeng Script */ + UCD_SCRIPT_Soyo, /**< @brief Soyombo */ UCD_SCRIPT_Sund, /**< @brief Sundanese Script */ UCD_SCRIPT_Sylo, /**< @brief Syloti Nagri Script */ UCD_SCRIPT_Syrc, /**< @brief Syriac Script */ @@ -302,6 +304,7 @@ typedef enum ucd_script_ UCD_SCRIPT_Xpeo, /**< @brief Old Persian Script */ UCD_SCRIPT_Xsux, /**< @brief Cuneiform Script */ UCD_SCRIPT_Yiii, /**< @brief Yi Script */ + UCD_SCRIPT_Zanb, /**< @brief Zanabazar Square */ UCD_SCRIPT_Zinh, /**< @brief Inherited Script */ UCD_SCRIPT_Zmth, /**< @brief Mathematical Notation */ UCD_SCRIPT_Zsym, /**< @brief Symbols */ @@ -665,6 +668,7 @@ namespace ucd Geok = UCD_SCRIPT_Geok, /**< @brief Khutsuri Script */ Geor = UCD_SCRIPT_Geor, /**< @brief Geirgian Script */ Glag = UCD_SCRIPT_Glag, /**< @brief Glagolitic Script */ + Gonm = UCD_SCRIPT_Gonm, /**< @brief Masaram Gondi */ Goth = UCD_SCRIPT_Goth, /**< @brief Gothic Script */ Gran = UCD_SCRIPT_Gran, /**< @brief Grantha Script */ Grek = UCD_SCRIPT_Grek, /**< @brief Greek Script */ @@ -762,6 +766,7 @@ namespace ucd Sind = UCD_SCRIPT_Sind, /**< @brief Sindhi Script */ Sinh = UCD_SCRIPT_Sinh, /**< @brief Sinhala Script */ Sora = UCD_SCRIPT_Sora, /**< @brief Sora Sompeng Script */ + Soyo = UCD_SCRIPT_Soyo, /**< @brief Soyombo */ Sund = UCD_SCRIPT_Sund, /**< @brief Sundanese Script */ Sylo = UCD_SCRIPT_Sylo, /**< @brief Syloti Nagri Script */ Syrc = UCD_SCRIPT_Syrc, /**< @brief Syriac Script */ @@ -791,6 +796,7 @@ namespace ucd Xpeo = UCD_SCRIPT_Xpeo, /**< @brief Old Persian Script */ Xsux = UCD_SCRIPT_Xsux, /**< @brief Cuneiform Script */ Yiii = UCD_SCRIPT_Yiii, /**< @brief Yi Script */ + Zanb = UCD_SCRIPT_Zanb, /**< @brief Zanabazar Square */ Zinh = UCD_SCRIPT_Zinh, /**< @brief Inherited Script */ Zmth = UCD_SCRIPT_Zmth, /**< @brief Mathematical Notation */ Zsym = UCD_SCRIPT_Zsym, /**< @brief Symbols */ diff --git a/src/proplist.c b/src/proplist.c index c0229512..f8f0dc2d 100644 --- a/src/proplist.c +++ b/src/proplist.c @@ -72,9 +72,6 @@ static ucd_property properties_Cn(codepoint_t c) case 0x2000: if (c == 0x2065) return UCD_PROPERTY_OTHER_DEFAULT_IGNORABLE_CODE_POINT; break; - case 0x2300: - if (c == 0x23FF) return UCD_PROPERTY_PATTERN_SYNTAX; - break; case 0x2400: if (c >= 0x2427 && c <= 0x243F) return UCD_PROPERTY_PATTERN_SYNTAX; if (c >= 0x244B && c <= 0x245F) return UCD_PROPERTY_PATTERN_SYNTAX; @@ -84,7 +81,7 @@ static ucd_property properties_Cn(codepoint_t c) if (c >= 0x2B96 && c <= 0x2B97) return UCD_PROPERTY_PATTERN_SYNTAX; if (c >= 0x2BBA && c <= 0x2BBC) return UCD_PROPERTY_PATTERN_SYNTAX; if (c == 0x2BC9) return UCD_PROPERTY_PATTERN_SYNTAX; - if (c >= 0x2BD2 && c <= 0x2BEB) return UCD_PROPERTY_PATTERN_SYNTAX; + if (c >= 0x2BD3 && c <= 0x2BEB) return UCD_PROPERTY_PATTERN_SYNTAX; if (c >= 0x2BF0 && c <= 0x2BFF) return UCD_PROPERTY_PATTERN_SYNTAX; break; case 0x2E00: @@ -326,7 +323,7 @@ static ucd_property properties_Lm(codepoint_t c) break; case 0x016F00: if (c >= 0x016F93 && c <= 0x016F9F) return UCD_PROPERTY_DIACRITIC; - if (c == 0x016FE0) return UCD_PROPERTY_EXTENDER; + if (c >= 0x016FE0 && c <= 0x016FE1) return UCD_PROPERTY_EXTENDER; break; } return 0; @@ -400,19 +397,21 @@ static ucd_property properties_Lo_ideographic(codepoint_t c) { case 0x000000: if (c >= 0x3400 && c <= 0x4DB5) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; - if (c >= 0x4E00 && c <= 0x9FD5) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; + if (c >= 0x4E00 && c <= 0x9FEA) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; if (c >= 0xF900 && c <= 0xFA6D) return UCD_PROPERTY_IDEOGRAPHIC; if (c >= 0xFA70 && c <= 0xFAD9) return UCD_PROPERTY_IDEOGRAPHIC; break; case 0x010000: if (c >= 0x017000 && c <= 0x0187EC) return UCD_PROPERTY_IDEOGRAPHIC; if (c >= 0x018800 && c <= 0x018AF2) return UCD_PROPERTY_IDEOGRAPHIC; + if (c >= 0x01B170 && c <= 0x01B2FB) return UCD_PROPERTY_IDEOGRAPHIC; break; case 0x020000: if (c >= 0x020000 && c <= 0x02A6D6) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; if (c >= 0x02A700 && c <= 0x02B734) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; if (c >= 0x02B740 && c <= 0x02B81D) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; if (c >= 0x02B820 && c <= 0x02CEA1) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; + if (c >= 0x02CEB0 && c <= 0x02EBE0) return UCD_PROPERTY_IDEOGRAPHIC | UCD_PROPERTY_UNIFIED_IDEOGRAPH; if (c >= 0x02F800 && c <= 0x02FA1D) return UCD_PROPERTY_IDEOGRAPHIC; break; } @@ -606,6 +605,7 @@ static ucd_property properties_Mc(codepoint_t c) if (c >= 0x1C34 && c <= 0x1C35) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x1CE1) return UCD_PROPERTY_DIACRITIC; if (c >= 0x1CF2 && c <= 0x1CF3) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x1CF7) return UCD_PROPERTY_DIACRITIC; break; case 0x3000: if (c >= 0x302E && c <= 0x302F) return UCD_PROPERTY_DIACRITIC | UCD_PROPERTY_OTHER_GRAPHEME_EXTEND; @@ -702,6 +702,12 @@ static ucd_property properties_Mc(codepoint_t c) if (c >= 0x011720 && c <= 0x011721) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x011726) return UCD_PROPERTY_OTHER_ALPHABETIC; break; + case 0x011A00: + if (c >= 0x011A07 && c <= 0x011A08) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011A39) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x011A57 && c <= 0x011A58) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011A97) return UCD_PROPERTY_OTHER_ALPHABETIC; + break; case 0x011C00: if (c == 0x011C2F) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x011C3E) return UCD_PROPERTY_OTHER_ALPHABETIC; @@ -811,6 +817,8 @@ static ucd_property properties_Mn(codepoint_t c) if (c >= 0x0AC7 && c <= 0x0AC8) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x0ACD) return UCD_PROPERTY_DIACRITIC; if (c >= 0x0AE2 && c <= 0x0AE3) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x0AFA && c <= 0x0AFC) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x0AFD && c <= 0x0AFF) return UCD_PROPERTY_DIACRITIC; break; case 0x0B00: if (c == 0x0B01) return UCD_PROPERTY_OTHER_ALPHABETIC; @@ -841,7 +849,8 @@ static ucd_property properties_Mn(codepoint_t c) if (c >= 0x0CE2 && c <= 0x0CE3) return UCD_PROPERTY_OTHER_ALPHABETIC; break; case 0x0D00: - if (c == 0x0D01) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x0D00 && c <= 0x0D01) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x0D3B && c <= 0x0D3C) return UCD_PROPERTY_DIACRITIC; if (c >= 0x0D41 && c <= 0x0D44) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x0D4D) return UCD_PROPERTY_DIACRITIC; if (c >= 0x0D62 && c <= 0x0D63) return UCD_PROPERTY_OTHER_ALPHABETIC; @@ -957,7 +966,7 @@ static ucd_property properties_Mn(codepoint_t c) case 0x1D00: if (c >= 0x1DC4 && c <= 0x1DCF) return UCD_PROPERTY_DIACRITIC; if (c >= 0x1DE7 && c <= 0x1DF4) return UCD_PROPERTY_OTHER_ALPHABETIC; - if (c == 0x1DF5) return UCD_PROPERTY_DIACRITIC; + if (c >= 0x1DF5 && c <= 0x1DF9) return UCD_PROPERTY_DIACRITIC; if (c >= 0x1DFD && c <= 0x1DFF) return UCD_PROPERTY_DIACRITIC; break; case 0x2000: @@ -1104,6 +1113,16 @@ static ucd_property properties_Mn(codepoint_t c) if (c >= 0x011727 && c <= 0x01172A) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c == 0x01172B) return UCD_PROPERTY_DIACRITIC; break; + case 0x011A00: + if (c >= 0x011A01 && c <= 0x011A0A) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011A34) return UCD_PROPERTY_DIACRITIC; + if (c >= 0x011A35 && c <= 0x011A3E) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011A47) return UCD_PROPERTY_DIACRITIC; + if (c >= 0x011A51 && c <= 0x011A5B) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x011A8A && c <= 0x011A96) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011A98) return UCD_PROPERTY_EXTENDER; + if (c == 0x011A99) return UCD_PROPERTY_DIACRITIC; + break; case 0x011C00: if (c >= 0x011C30 && c <= 0x011C36) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c >= 0x011C38 && c <= 0x011C3D) return UCD_PROPERTY_OTHER_ALPHABETIC; @@ -1113,6 +1132,16 @@ static ucd_property properties_Mn(codepoint_t c) if (c >= 0x011CB2 && c <= 0x011CB3) return UCD_PROPERTY_OTHER_ALPHABETIC; if (c >= 0x011CB5 && c <= 0x011CB6) return UCD_PROPERTY_OTHER_ALPHABETIC; break; + case 0x011D00: + if (c >= 0x011D31 && c <= 0x011D36) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011D3A) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x011D3C && c <= 0x011D3D) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x011D3F && c <= 0x011D41) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c == 0x011D42) return UCD_PROPERTY_DIACRITIC; + if (c == 0x011D43) return UCD_PROPERTY_OTHER_ALPHABETIC; + if (c >= 0x011D44 && c <= 0x011D45) return UCD_PROPERTY_DIACRITIC; + if (c == 0x011D47) return UCD_PROPERTY_OTHER_ALPHABETIC; + break; case 0x016A00: if (c >= 0x016AF0 && c <= 0x016AF4) return UCD_PROPERTY_DIACRITIC; break; @@ -1537,6 +1566,11 @@ static ucd_property properties_Po(codepoint_t c) case 0x11700: if (c >= 0x01173C && c <= 0x01173E) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; break; + case 0x11A00: + if (c >= 0x011A42 && c <= 0x011A43) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; + if (c >= 0x011A9B && c <= 0x011A9C) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; + if (c >= 0x011AA1 && c <= 0x011AA2) return UCD_PROPERTY_TERMINAL_PUNCTUATION; + break; case 0x11C00: if (c >= 0x011C41 && c <= 0x011C42) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL; if (c == 0x011C43) return UCD_PROPERTY_TERMINAL_PUNCTUATION; @@ -1758,7 +1792,7 @@ static ucd_property properties_So(codepoint_t c) if (c == 0x23F3) return UCD_PROPERTY_PATTERN_SYNTAX | UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x23E9 && c <= 0x23F3) return UCD_PROPERTY_PATTERN_SYNTAX | UCD_PROPERTY_EMOJI; if (c >= 0x23F8 && c <= 0x23FA) return UCD_PROPERTY_PATTERN_SYNTAX | UCD_PROPERTY_EMOJI; - if (c >= 0x23E3 && c <= 0x23FE) return UCD_PROPERTY_PATTERN_SYNTAX; + if (c >= 0x23E3) return UCD_PROPERTY_PATTERN_SYNTAX; break; case 0x2400: if (c >= 0x2400 && c <= 0x244A) return UCD_PROPERTY_PATTERN_SYNTAX; @@ -1999,14 +2033,19 @@ static ucd_property properties_So(codepoint_t c) if (c == 0x01F926) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; if (c >= 0x01F920 && c <= 0x01F927) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c == 0x01F930) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; + if (c <= 0x01F932) return 0; if (c == 0x01F93B) return 0; if (c >= 0x01F93A && c <= 0x01F93C) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x01F933 && c <= 0x01F93E) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; if (c == 0x01F946) return 0; if (c >= 0x01F940 && c <= 0x01F94B) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; + if (c == 0x01F94C) return 0; if (c >= 0x01F950 && c <= 0x01F95E) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; + if (c >= 0x01F95F && c <= 0x01F96B) return 0; if (c >= 0x01F980 && c <= 0x01F991) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; + if (c >= 0x01F992 && c <= 0x01F997) return 0; if (c == 0x01F9C0) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; + if (c >= 0x01F9D0 && c <= 0x01F9E6) return 0; return UCD_PROPERTY_EMOJI; } return 0; diff --git a/src/scripts.c b/src/scripts.c index f5883d12..ae1a4893 100644 --- a/src/scripts.c +++ b/src/scripts.c @@ -67,6 +67,7 @@ #define Geok UCD_SCRIPT_Geok #define Geor UCD_SCRIPT_Geor #define Glag UCD_SCRIPT_Glag +#define Gonm UCD_SCRIPT_Gonm #define Goth UCD_SCRIPT_Goth #define Gran UCD_SCRIPT_Gran #define Grek UCD_SCRIPT_Grek @@ -164,6 +165,7 @@ #define Sind UCD_SCRIPT_Sind #define Sinh UCD_SCRIPT_Sinh #define Sora UCD_SCRIPT_Sora +#define Soyo UCD_SCRIPT_Soyo #define Sund UCD_SCRIPT_Sund #define Sylo UCD_SCRIPT_Sylo #define Syrc UCD_SCRIPT_Syrc @@ -193,6 +195,7 @@ #define Xpeo UCD_SCRIPT_Xpeo #define Xsux UCD_SCRIPT_Xsux #define Yiii UCD_SCRIPT_Yiii +#define Zanb UCD_SCRIPT_Zanb #define Zinh UCD_SCRIPT_Zinh #define Zmth UCD_SCRIPT_Zmth #define Zsym UCD_SCRIPT_Zsym @@ -645,7 +648,7 @@ static const uint8_t scripts_000500[256] = static const uint8_t scripts_000600[256] = { /* 00 */ Arab, Arab, Arab, Arab, Arab, Zyyy, Arab, Arab, Arab, Arab, Arab, Arab, Zyyy, Arab, Arab, Arab, - /* 10 */ Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Zyyy, Zyyy, Zzzz, Arab, Zyyy, + /* 10 */ Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Zyyy, Arab, Zzzz, Arab, Zyyy, /* 20 */ Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, /* 30 */ Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, /* 40 */ Zyyy, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Arab, Zinh, Zinh, Zinh, Zinh, Zinh, @@ -690,7 +693,7 @@ static const uint8_t scripts_000800[256] = /* 30 */ Samr, Samr, Samr, Samr, Samr, Samr, Samr, Samr, Samr, Samr, Samr, Samr, Samr, Samr, Samr, Zzzz, /* 40 */ Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, /* 50 */ Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Mand, Zzzz, Zzzz, Mand, Zzzz, - /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Syrc, Syrc, Syrc, Syrc, Syrc, Syrc, Syrc, Syrc, Syrc, Syrc, Syrc, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -719,7 +722,7 @@ static const uint8_t scripts_000900[256] = /* C0 */ Beng, Beng, Beng, Beng, Beng, Zzzz, Zzzz, Beng, Beng, Zzzz, Zzzz, Beng, Beng, Beng, Beng, Zzzz, /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Beng, Zzzz, Zzzz, Zzzz, Zzzz, Beng, Beng, Zzzz, Beng, /* E0 */ Beng, Beng, Beng, Beng, Zzzz, Zzzz, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, - /* F0 */ Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Beng, Zzzz, Zzzz, }; static const uint8_t scripts_000A00[256] = @@ -739,7 +742,7 @@ static const uint8_t scripts_000A00[256] = /* C0 */ Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Zzzz, Gujr, Gujr, Gujr, Zzzz, Gujr, Gujr, Gujr, Zzzz, Zzzz, /* D0 */ Gujr, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* E0 */ Gujr, Gujr, Gujr, Gujr, Zzzz, Zzzz, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, - /* F0 */ Gujr, Gujr, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Gujr, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Gujr, Gujr, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, Gujr, }; static const uint8_t scripts_000B00[256] = @@ -784,10 +787,10 @@ static const uint8_t scripts_000C00[256] = static const uint8_t scripts_000D00[256] = { - /* 00 */ Zzzz, Mlym, Mlym, Mlym, Zzzz, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Zzzz, Mlym, Mlym, + /* 00 */ Mlym, Mlym, Mlym, Mlym, Zzzz, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Zzzz, Mlym, Mlym, /* 10 */ Mlym, Zzzz, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, /* 20 */ Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, - /* 30 */ Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Zzzz, Zzzz, Mlym, Mlym, Mlym, + /* 30 */ Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, /* 40 */ Mlym, Mlym, Mlym, Mlym, Mlym, Zzzz, Mlym, Mlym, Mlym, Zzzz, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, /* 60 */ Mlym, Mlym, Mlym, Mlym, Zzzz, Zzzz, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, Mlym, @@ -1039,7 +1042,7 @@ static const uint8_t scripts_001C00[256] = /* C0 */ Sund, Sund, Sund, Sund, Sund, Sund, Sund, Sund, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* D0 */ Zinh, Zinh, Zinh, Zyyy, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, /* E0 */ Zinh, Zyyy, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zyyy, Zyyy, Zyyy, Zyyy, Zinh, Zyyy, Zyyy, - /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zinh, Zyyy, Zyyy, Zzzz, Zinh, Zinh, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zinh, Zyyy, Zyyy, Zyyy, Zinh, Zinh, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; static const uint8_t scripts_001D00[256] = @@ -1059,7 +1062,7 @@ static const uint8_t scripts_001D00[256] = /* C0 */ Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, /* D0 */ Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, /* E0 */ Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, - /* F0 */ Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zinh, Zinh, Zinh, Zinh, Zinh, + /* F0 */ Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zzzz, Zinh, Zinh, Zinh, Zinh, Zinh, }; static const uint8_t scripts_001F00[256] = @@ -1095,7 +1098,7 @@ static const uint8_t scripts_002000[256] = /* 80 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, /* 90 */ Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Latn, Zzzz, Zzzz, Zzzz, /* A0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, + /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* D0 */ Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, /* E0 */ Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, Zinh, @@ -1122,26 +1125,6 @@ static const uint8_t scripts_002100[256] = /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, }; -static const uint8_t scripts_002300[256] = -{ - /* 00 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 10 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 20 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 30 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 50 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 60 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 70 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 80 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 90 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* A0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* C0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* E0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, -}; - static const uint8_t scripts_002400[256] = { /* 00 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, @@ -1177,7 +1160,7 @@ static const uint8_t scripts_002B00[256] = /* A0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zyyy, Zyyy, Zyyy, /* C0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* D0 */ Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -1228,7 +1211,7 @@ static const uint8_t scripts_002E00[256] = /* 10 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 20 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* 30 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -1286,7 +1269,7 @@ static const uint8_t scripts_003100[256] = { /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, /* 10 */ Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, - /* 20 */ Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Zzzz, Zzzz, + /* 20 */ Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Bopo, Zzzz, /* 30 */ Zzzz, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, /* 40 */ Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, /* 50 */ Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, Hang, @@ -1377,8 +1360,8 @@ static const uint8_t scripts_009F00[256] = /* A0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, /* B0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, /* C0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, - /* D0 */ Hani, Hani, Hani, Hani, Hani, Hani, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* E0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -1706,7 +1689,7 @@ static const uint8_t scripts_010300[256] = { /* 00 */ Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, /* 10 */ Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, Ital, - /* 20 */ Ital, Ital, Ital, Ital, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 20 */ Ital, Ital, Ital, Ital, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Ital, Ital, Ital, /* 30 */ Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, /* 40 */ Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Goth, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 50 */ Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, Perm, @@ -2084,17 +2067,17 @@ static const uint8_t scripts_011800[256] = static const uint8_t scripts_011A00[256] = { - /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 10 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 20 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 30 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 40 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 00 */ Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, + /* 10 */ Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, + /* 20 */ Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, + /* 30 */ Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, + /* 40 */ Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zanb, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 50 */ Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, + /* 60 */ Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, + /* 70 */ Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, + /* 80 */ Soyo, Soyo, Soyo, Soyo, Zzzz, Zzzz, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, + /* 90 */ Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Soyo, Zzzz, Soyo, Soyo, + /* A0 */ Soyo, Soyo, Soyo, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* C0 */ Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, /* D0 */ Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, Pauc, @@ -2122,6 +2105,26 @@ static const uint8_t scripts_011C00[256] = /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; +static const uint8_t scripts_011D00[256] = +{ + /* 00 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Zzzz, Gonm, Gonm, Zzzz, Gonm, Gonm, Gonm, Gonm, Gonm, + /* 10 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, + /* 20 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, + /* 30 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Zzzz, Zzzz, Zzzz, Gonm, Zzzz, Gonm, Gonm, Zzzz, Gonm, + /* 40 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 50 */ Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Gonm, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, +}; + static const uint8_t scripts_012300[256] = { /* 00 */ Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, Xsux, @@ -2278,7 +2281,7 @@ static const uint8_t scripts_016F00[256] = /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* E0 */ Tang, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* E0 */ Tang, Nshu, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -2324,22 +2327,62 @@ static const uint8_t scripts_018A00[256] = static const uint8_t scripts_01B000[256] = { - /* 00 */ Kana, Hira, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 10 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 00 */ Kana, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 10 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 20 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 30 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 40 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 50 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 60 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 70 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 80 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 90 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* A0 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* B0 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* C0 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* D0 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* E0 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* F0 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, +}; + +static const uint8_t scripts_01B100[256] = +{ + /* 00 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, + /* 10 */ Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Hira, Zzzz, /* 20 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 30 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 40 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 50 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 70 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 80 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 90 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* A0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* B0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* C0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* D0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* E0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* F0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, +}; + +static const uint8_t scripts_01B200[256] = +{ + /* 00 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 10 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 20 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 30 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 40 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 50 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 60 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 70 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 80 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* 90 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* A0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* B0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* C0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* D0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* E0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, + /* F0 */ Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Nshu, Zzzz, Zzzz, Zzzz, Zzzz, }; static const uint8_t scripts_01BC00[256] = @@ -2670,7 +2713,7 @@ static const uint8_t scripts_01F200[256] = /* 30 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 50 */ Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 60 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 80 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 90 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, @@ -2697,9 +2740,9 @@ static const uint8_t scripts_01F600[256] = /* A0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* B0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, /* C0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* D0 */ Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* E0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, - /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* F0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; static const uint8_t scripts_01F700[256] = @@ -2744,21 +2787,21 @@ static const uint8_t scripts_01F800[256] = static const uint8_t scripts_01F900[256] = { - /* 00 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 10 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, - /* 20 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* 30 */ Zyyy, Zzzz, Zzzz, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, - /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, - /* 50 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, - /* 60 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 00 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, + /* 10 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* 20 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* 30 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, + /* 40 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, + /* 50 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* 60 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, /* 70 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* 80 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, - /* 90 */ Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* 90 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* A0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* C0 */ Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* D0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, + /* E0 */ Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zyyy, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -2835,10 +2878,30 @@ static const uint8_t scripts_02CE00[256] = /* 80 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, /* 90 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, /* A0 */ Hani, Hani, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* B0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* C0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* D0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, - /* E0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, + /* B0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* C0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* D0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* E0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* F0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, +}; + +static const uint8_t scripts_02EB00[256] = +{ + /* 00 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 10 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 20 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 30 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 40 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 50 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 60 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 70 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 80 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* 90 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* A0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* B0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* C0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* D0 */ Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, Hani, + /* E0 */ Hani, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, /* F0 */ Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, Zzzz, }; @@ -2939,7 +3002,7 @@ static const uint8_t *scripts_000000_00D7FF[] = scripts_002000, scripts_002100, scripts_Zyyy, /* 002200 */ - scripts_002300, + scripts_Zyyy, /* 002300 */ scripts_002400, scripts_Zyyy, /* 002500 */ scripts_Zyyy, /* 002600 */ @@ -3161,7 +3224,7 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_011A00, scripts_Zzzz, /* 011B00 */ scripts_011C00, - scripts_Zzzz, /* 011D00 */ + scripts_011D00, scripts_Zzzz, /* 011E00 */ scripts_Zzzz, /* 011F00 */ scripts_Xsux, /* 012000 */ @@ -3309,8 +3372,8 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_Zzzz, /* 01AE00 */ scripts_Zzzz, /* 01AF00 */ scripts_01B000, - scripts_Zzzz, /* 01B100 */ - scripts_Zzzz, /* 01B200 */ + scripts_01B100, + scripts_01B200, scripts_Zzzz, /* 01B300 */ scripts_Zzzz, /* 01B400 */ scripts_Zzzz, /* 01B500 */ @@ -3595,35 +3658,35 @@ static const uint8_t *scripts_00F800_02FAFF[] = scripts_Hani, /* 02CC00 */ scripts_Hani, /* 02CD00 */ scripts_02CE00, - scripts_Zzzz, /* 02CF00 */ - scripts_Zzzz, /* 02D000 */ - scripts_Zzzz, /* 02D100 */ - scripts_Zzzz, /* 02D200 */ - scripts_Zzzz, /* 02D300 */ - scripts_Zzzz, /* 02D400 */ - scripts_Zzzz, /* 02D500 */ - scripts_Zzzz, /* 02D600 */ - scripts_Zzzz, /* 02D700 */ - scripts_Zzzz, /* 02D800 */ - scripts_Zzzz, /* 02D900 */ - scripts_Zzzz, /* 02DA00 */ - scripts_Zzzz, /* 02DB00 */ - scripts_Zzzz, /* 02DC00 */ - scripts_Zzzz, /* 02DD00 */ - scripts_Zzzz, /* 02DE00 */ - scripts_Zzzz, /* 02DF00 */ - scripts_Zzzz, /* 02E000 */ - scripts_Zzzz, /* 02E100 */ - scripts_Zzzz, /* 02E200 */ - scripts_Zzzz, /* 02E300 */ - scripts_Zzzz, /* 02E400 */ - scripts_Zzzz, /* 02E500 */ - scripts_Zzzz, /* 02E600 */ - scripts_Zzzz, /* 02E700 */ - scripts_Zzzz, /* 02E800 */ - scripts_Zzzz, /* 02E900 */ - scripts_Zzzz, /* 02EA00 */ - scripts_Zzzz, /* 02EB00 */ + scripts_Hani, /* 02CF00 */ + scripts_Hani, /* 02D000 */ + scripts_Hani, /* 02D100 */ + scripts_Hani, /* 02D200 */ + scripts_Hani, /* 02D300 */ + scripts_Hani, /* 02D400 */ + scripts_Hani, /* 02D500 */ + scripts_Hani, /* 02D600 */ + scripts_Hani, /* 02D700 */ + scripts_Hani, /* 02D800 */ + scripts_Hani, /* 02D900 */ + scripts_Hani, /* 02DA00 */ + scripts_Hani, /* 02DB00 */ + scripts_Hani, /* 02DC00 */ + scripts_Hani, /* 02DD00 */ + scripts_Hani, /* 02DE00 */ + scripts_Hani, /* 02DF00 */ + scripts_Hani, /* 02E000 */ + scripts_Hani, /* 02E100 */ + scripts_Hani, /* 02E200 */ + scripts_Hani, /* 02E300 */ + scripts_Hani, /* 02E400 */ + scripts_Hani, /* 02E500 */ + scripts_Hani, /* 02E600 */ + scripts_Hani, /* 02E700 */ + scripts_Hani, /* 02E800 */ + scripts_Hani, /* 02E900 */ + scripts_Hani, /* 02EA00 */ + scripts_02EB00, scripts_Zzzz, /* 02EC00 */ scripts_Zzzz, /* 02ED00 */ scripts_Zzzz, /* 02EE00 */ diff --git a/src/tostring.c b/src/tostring.c index 25852355..3d89d198 100644 --- a/src/tostring.c +++ b/src/tostring.c @@ -120,6 +120,7 @@ const char *ucd_get_script_string(ucd_script s) "Geok", "Geor", "Glag", + "Gonm", "Goth", "Gran", "Grek", @@ -217,6 +218,7 @@ const char *ucd_get_script_string(ucd_script s) "Sind", "Sinh", "Sora", + "Soyo", "Sund", "Sylo", "Syrc", @@ -246,6 +248,7 @@ const char *ucd_get_script_string(ucd_script s) "Xpeo", "Xsux", "Yiii", + "Zanb", "Zinh", "Zmth", "Zsym", diff --git a/tools/scripts.py b/tools/scripts.py index ba125f6d..b6aaa752 100755 --- a/tools/scripts.py +++ b/tools/scripts.py @@ -153,6 +153,7 @@ if __name__ == '__main__': #define Geok UCD_SCRIPT_Geok #define Geor UCD_SCRIPT_Geor #define Glag UCD_SCRIPT_Glag +#define Gonm UCD_SCRIPT_Gonm #define Goth UCD_SCRIPT_Goth #define Gran UCD_SCRIPT_Gran #define Grek UCD_SCRIPT_Grek @@ -250,6 +251,7 @@ if __name__ == '__main__': #define Sind UCD_SCRIPT_Sind #define Sinh UCD_SCRIPT_Sinh #define Sora UCD_SCRIPT_Sora +#define Soyo UCD_SCRIPT_Soyo #define Sund UCD_SCRIPT_Sund #define Sylo UCD_SCRIPT_Sylo #define Syrc UCD_SCRIPT_Syrc @@ -279,6 +281,7 @@ if __name__ == '__main__': #define Xpeo UCD_SCRIPT_Xpeo #define Xsux UCD_SCRIPT_Xsux #define Yiii UCD_SCRIPT_Yiii +#define Zanb UCD_SCRIPT_Zanb #define Zinh UCD_SCRIPT_Zinh #define Zmth UCD_SCRIPT_Zmth #define Zsym UCD_SCRIPT_Zsym From 023ebace9aa44ccad2ad9ff73925c40e3df2fa9f Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 15:27:53 +0100 Subject: [PATCH 09/17] Add Regional_Indicator support from PropList.txt. --- src/include/ucd/ucd.h | 2 ++ src/proplist.c | 2 +- tools/printdata.py | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/include/ucd/ucd.h b/src/include/ucd/ucd.h index 33133c5f..d3d90a18 100644 --- a/src/include/ucd/ucd.h +++ b/src/include/ucd/ucd.h @@ -369,6 +369,7 @@ typedef uint64_t ucd_property; #define UCD_PROPERTY_EMOJI_PRESENTATION 0x0000000400000000ull /**< @brief Emoji_Presentation */ #define UCD_PROPERTY_EMOJI_MODIFIER 0x0000000800000000ull /**< @brief Emoji_Modifier */ #define UCD_PROPERTY_EMOJI_MODIFIER_BASE 0x0000001000000000ull /**< @brief Emoji_Modifier_Base */ +#define UCD_PROPERTY_REGIONAL_INDICATOR 0x0000002000000000ull /**< @brief Regional_Indicator */ /** @brief Return the properties of the specified codepoint. * @@ -868,6 +869,7 @@ namespace ucd Emoji_Presentation = UCD_PROPERTY_EMOJI_PRESENTATION, /**< @brief Emoji_Presentation */ Emoji_Modifier = UCD_PROPERTY_EMOJI_MODIFIER, /**< @brief Emoji_Modifier */ Emoji_Modifier_Base = UCD_PROPERTY_EMOJI_MODIFIER_BASE, /**< @brief Emoji_Modifier_Base */ + Regional_Indicator = UCD_PROPERTY_REGIONAL_INDICATOR, /**< @brief Regional_Indicator */ }; /** @brief Return the properties of the specified codepoint. diff --git a/src/proplist.c b/src/proplist.c index f8f0dc2d..eae604f0 100644 --- a/src/proplist.c +++ b/src/proplist.c @@ -1929,7 +1929,7 @@ static ucd_property properties_So(codepoint_t c) if (c >= 0x01F170 && c <= 0x01F189) return UCD_PROPERTY_OTHER_ALPHABETIC | UCD_PROPERTY_OTHER_UPPERCASE; if (c == 0x01F18E) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x01F191 && c <= 0x01F19A) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - if (c >= 0x01F1E6) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; + if (c >= 0x01F1E6) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_REGIONAL_INDICATOR; break; case 0x01F200: if (c == 0x01F201) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; diff --git a/tools/printdata.py b/tools/printdata.py index eac2892f..42241036 100755 --- a/tools/printdata.py +++ b/tools/printdata.py @@ -165,6 +165,7 @@ def properties(data): props += (2 ** 34) * data.get('Emoji_Presentation', 0) # emoji-data props += (2 ** 35) * data.get('Emoji_Modifier', 0) # emoji-data props += (2 ** 36) * data.get('Emoji_Modifier_Base', 0) # emoji-data + props += (2 ** 37) * data.get('Regional_Indicator', 0) return props if __name__ == '__main__': From 18d3a0819a5e581b87344575583969e7f9bf59b8 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 15:41:46 +0100 Subject: [PATCH 10/17] Unicode Emoji 5.0 --- CHANGELOG.md | 1 + Makefile.am | 2 +- src/proplist.c | 19 ++++++++++--------- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3dbb62f6..73ef2ea8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ * PropList and emoji-data property lookup. * Support building with a C89 compiler. * Update to Unicode Character Data 10.0.0. +* Unicode Emoji 5.0. ## 9.0.0 - 2016-12-28 diff --git a/Makefile.am b/Makefile.am index 1d9931d1..3a331e85 100644 --- a/Makefile.am +++ b/Makefile.am @@ -55,7 +55,7 @@ EXTRA_DIST += ChangeLog ############################# Unicode Data #################################### -EMOJI_VERSION=4.0 +EMOJI_VERSION=5.0 UCD_VERSION=@UCD_VERSION@ UCD_ROOTDIR=data/ucd UCD_SRCDIR=http://www.unicode.org/Public diff --git a/src/proplist.c b/src/proplist.c index eae604f0..29c1e0f5 100644 --- a/src/proplist.c +++ b/src/proplist.c @@ -2024,28 +2024,29 @@ static ucd_property properties_So(codepoint_t c) if (c >= 0x01F6EB && c <= 0x01F6EC) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c == 0x01F6F0) return UCD_PROPERTY_EMOJI; if (c == 0x01F6F3) return UCD_PROPERTY_EMOJI; - if (c >= 0x01F6F4 && c <= 0x01F6F6) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; + if (c >= 0x01F6F4 && c <= 0x01F6F8) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; break; case 0x01F900: + if (c <= 0x01F90B) return 0; if (c >= 0x01F918 && c <= 0x01F91C) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; if (c >= 0x01F910 && c <= 0x01F91D) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - if (c == 0x01F91E) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; + if (c >= 0x01F91E && c <= 0x01F91F) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; if (c == 0x01F926) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; - if (c >= 0x01F920 && c <= 0x01F927) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - if (c == 0x01F930) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; - if (c <= 0x01F932) return 0; + if (c >= 0x01F920 && c <= 0x01F92F) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; + if (c >= 0x01F930 && c <= 0x01F932) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; if (c == 0x01F93B) return 0; if (c >= 0x01F93A && c <= 0x01F93C) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x01F933 && c <= 0x01F93E) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; if (c == 0x01F946) return 0; if (c >= 0x01F940 && c <= 0x01F94B) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - if (c == 0x01F94C) return 0; + if (c == 0x01F94C) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x01F950 && c <= 0x01F95E) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - if (c >= 0x01F95F && c <= 0x01F96B) return 0; + if (c >= 0x01F95F && c <= 0x01F96B) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x01F980 && c <= 0x01F991) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - if (c >= 0x01F992 && c <= 0x01F997) return 0; + if (c >= 0x01F992 && c <= 0x01F997) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c == 0x01F9C0) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - if (c >= 0x01F9D0 && c <= 0x01F9E6) return 0; + if (c >= 0x01F9D1 && c <= 0x01F9DD) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER_BASE; + if (c >= 0x01F9D0 && c <= 0x01F9E6) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; return UCD_PROPERTY_EMOJI; } return 0; From 1cb4115eabddc0d012c2c1a008bbe9086f0fe2bf Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 15:51:37 +0100 Subject: [PATCH 11/17] Add Emoji_Component support from emoji-data.txt. --- src/include/ucd/ucd.h | 2 ++ src/proplist.c | 10 +++++----- tools/printdata.py | 3 ++- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/include/ucd/ucd.h b/src/include/ucd/ucd.h index d3d90a18..2c6bee24 100644 --- a/src/include/ucd/ucd.h +++ b/src/include/ucd/ucd.h @@ -370,6 +370,7 @@ typedef uint64_t ucd_property; #define UCD_PROPERTY_EMOJI_MODIFIER 0x0000000800000000ull /**< @brief Emoji_Modifier */ #define UCD_PROPERTY_EMOJI_MODIFIER_BASE 0x0000001000000000ull /**< @brief Emoji_Modifier_Base */ #define UCD_PROPERTY_REGIONAL_INDICATOR 0x0000002000000000ull /**< @brief Regional_Indicator */ +#define UCD_PROPERTY_EMOJI_COMPONENT 0x0000004000000000ull /**< @brief Emoji_Component */ /** @brief Return the properties of the specified codepoint. * @@ -870,6 +871,7 @@ namespace ucd Emoji_Modifier = UCD_PROPERTY_EMOJI_MODIFIER, /**< @brief Emoji_Modifier */ Emoji_Modifier_Base = UCD_PROPERTY_EMOJI_MODIFIER_BASE, /**< @brief Emoji_Modifier_Base */ Regional_Indicator = UCD_PROPERTY_REGIONAL_INDICATOR, /**< @brief Regional_Indicator */ + Emoji_Component = UCD_PROPERTY_EMOJI_COMPONENT, /**< @brief Emoji_Component */ }; /** @brief Return the properties of the specified codepoint. diff --git a/src/proplist.c b/src/proplist.c index 29c1e0f5..c468a9e8 100644 --- a/src/proplist.c +++ b/src/proplist.c @@ -1187,7 +1187,7 @@ static ucd_property properties_Nd(codepoint_t c) switch (c & 0xFFFFFF00) { case 0x0000: - if (c >= 0x0030 && c <= 0x0039) return UCD_PROPERTY_HEX_DIGIT | UCD_PROPERTY_ASCII_HEX_DIGIT | UCD_PROPERTY_EMOJI; + if (c >= 0x0030 && c <= 0x0039) return UCD_PROPERTY_HEX_DIGIT | UCD_PROPERTY_ASCII_HEX_DIGIT | UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_COMPONENT; break; case 0xFF00: if (c >= 0xFF10 && c <= 0xFF19) return UCD_PROPERTY_HEX_DIGIT; @@ -1349,9 +1349,9 @@ static ucd_property properties_Po(codepoint_t c) case 0x0000: if (c == 0x0021) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL | UCD_PROPERTY_PATTERN_SYNTAX; if (c == 0x0022) return UCD_PROPERTY_QUOTATION_MARK | UCD_PROPERTY_PATTERN_SYNTAX; - if (c == 0x0023) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_PATTERN_SYNTAX; + if (c == 0x0023) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_PATTERN_SYNTAX | UCD_PROPERTY_EMOJI_COMPONENT; if (c == 0x0027) return UCD_PROPERTY_QUOTATION_MARK | UCD_PROPERTY_PATTERN_SYNTAX; - if (c == 0x002A) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_PATTERN_SYNTAX; + if (c == 0x002A) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_PATTERN_SYNTAX | UCD_PROPERTY_EMOJI_COMPONENT; if (c == 0x002C) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_PATTERN_SYNTAX; if (c == 0x002E) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_SENTENCE_TERMINAL | UCD_PROPERTY_PATTERN_SYNTAX; if (c >= 0x003A && c <= 0x003B) return UCD_PROPERTY_TERMINAL_PUNCTUATION | UCD_PROPERTY_PATTERN_SYNTAX; @@ -1701,7 +1701,7 @@ static ucd_property properties_Sk(codepoint_t c) if (c == 0xFFE3) return UCD_PROPERTY_DIACRITIC; break; case 0x01F300: - return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER; + return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_EMOJI_MODIFIER | UCD_PROPERTY_EMOJI_COMPONENT; } return 0; } @@ -1929,7 +1929,7 @@ static ucd_property properties_So(codepoint_t c) if (c >= 0x01F170 && c <= 0x01F189) return UCD_PROPERTY_OTHER_ALPHABETIC | UCD_PROPERTY_OTHER_UPPERCASE; if (c == 0x01F18E) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; if (c >= 0x01F191 && c <= 0x01F19A) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; - if (c >= 0x01F1E6) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_REGIONAL_INDICATOR; + if (c >= 0x01F1E6) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION | UCD_PROPERTY_REGIONAL_INDICATOR | UCD_PROPERTY_EMOJI_COMPONENT; break; case 0x01F200: if (c == 0x01F201) return UCD_PROPERTY_EMOJI | UCD_PROPERTY_EMOJI_PRESENTATION; diff --git a/tools/printdata.py b/tools/printdata.py index 42241036..513a890c 100755 --- a/tools/printdata.py +++ b/tools/printdata.py @@ -165,7 +165,8 @@ def properties(data): props += (2 ** 34) * data.get('Emoji_Presentation', 0) # emoji-data props += (2 ** 35) * data.get('Emoji_Modifier', 0) # emoji-data props += (2 ** 36) * data.get('Emoji_Modifier_Base', 0) # emoji-data - props += (2 ** 37) * data.get('Regional_Indicator', 0) + props += (2 ** 37) * data.get('Regional_Indicator', 0) # PropList 10.0.0 + props += (2 ** 38) * data.get('Emoji_Component', 0) # emoji-data 5.0 return props if __name__ == '__main__': From f26aca0aa1b9485634314d0d1710d2a0bb67776d Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 25 Jun 2017 15:55:34 +0100 Subject: [PATCH 12/17] ucd-tools 10.0.0 --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 73ef2ea8..6fe7275d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Change Log -## 10.0.0 - (In Progress) +## 10.0.0 - 2017-06-25 * Add `iswblank` and `iswxdigit` compatibility. * Improve ctype compatibility. From 58a036376296864d58337401817ab6f209ab6e86 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Thu, 6 Jul 2017 19:29:14 +0100 Subject: [PATCH 13/17] Android: Fix the location of ucd-tools (it is now in src/ucd-tools). --- android/jni/Android.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android/jni/Android.mk b/android/jni/Android.mk index 45be3745..e423e7e2 100644 --- a/android/jni/Android.mk +++ b/android/jni/Android.mk @@ -5,7 +5,7 @@ LOCAL_CFLAGS = -std=c11 # ucd-tools wide-character compatibility support: -UCDTOOLS_SRC_PATH := ../../ucd-tools/src +UCDTOOLS_SRC_PATH := ../../src/ucd-tools/src UCDTOOLS_SRC_FILES := \ $(subst $(LOCAL_PATH)/$(UCDTOOLS_SRC_PATH),$(UCDTOOLS_SRC_PATH),$(wildcard $(LOCAL_PATH)/$(UCDTOOLS_SRC_PATH)/*.c*)) From d20422f1923c5a4868c79f8ebfc5d86a3c5ceaf7 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 9 Jul 2017 15:06:26 +0100 Subject: [PATCH 14/17] en: various pronunciation fixes --- dictsource/en_list | 9 ++++++--- dictsource/en_rules | 17 +++++++++++++---- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/dictsource/en_list b/dictsource/en_list index b1e02404..bbba908c 100644 --- a/dictsource/en_list +++ b/dictsource/en_list @@ -2716,6 +2716,7 @@ nonsense n0ns@ns nonetheless nVnD@l'Es nosedive noUzdaIv nosir noUs3: +?5 nosir noUsIR not noUt // for noted, notable, etc nots n0ts (nôtre dame) noUtr@'dA:m @@ -3420,7 +3421,7 @@ sincerest sIns'i@r@st sinus saIn@s siphon $alt2 sir s,3: $only -?5 sir s,VR $only +?5 sir s,IR $only siren saIr@n site saIt // for sited ski ski: @@ -3455,12 +3456,13 @@ sommelier s0m'Eli@ son sVn sonar soUnA@ sonny sVnI +sooth su:T $only +sopapilla soUp@p'i:@ sope soUpeI +sorbet sO@beI souffle su:fl'eI soundbite saUndbaIt souvenir su:v@n'i@3 -sopapilla soUp@p'i:@ -sorbet sO@beI soyabean sOI@bi:n specific sp@sIfIk specimen spEsI2m@n @@ -3913,6 +3915,7 @@ yer j3 $u+ ye ji: $u+ yea jeI yessir jEss3: +?5 yessir jEssIR yoghurt j0g3t ?3 yoghurt joUg3t ?3 yogurt joUg3t diff --git a/dictsource/en_rules b/dictsource/en_rules index a74b8b46..ecc53d15 100644 --- a/dictsource/en_rules +++ b/dictsource/en_rules @@ -180,7 +180,8 @@ _n) a (tional a @) a (tious 'eI ell) a (trix @ - a (triC 'eI + a (trix 'eI + a (trice 'eI n) a (tur eI n) a (tura a &) a (ture_ @ @@ -512,7 +513,7 @@ _m) ag (ell a#dZ Cp) age (_ eIdZ pp) age (_ I2dZ - _ant) ag 'ag + _ant) ag (on 'ag enr) ag (e_ 'eIdZ outr) ag (e_ eIdZ der) ag (e_ eIdZ @@ -1463,7 +1464,7 @@ _it_separ) ate (_ @t may) be (_ bi: _) be (CA bI# _) bete (lg bi:t@ - _) be (C% bE + _) be (C%+ bE _) be (atiC b%i: _) be (b bi: _) be (cl bI# @@ -1477,7 +1478,7 @@ _it_separ) ate (_ @t _) be (kn bI# _) belarus bEl@r'u:s _) be (lC bE - _) be (llig bI# + _) be (llig+ bI# _) be (re bE _) be (sC bI# _) be (stia bE @@ -2378,6 +2379,7 @@ _it_separ) ate (_ @t y) ed (_S2v d# debut) ed (_S2 d# edly (_S4m I#dl%i + eg) edly (_S3m I#dl%i c) ed (e_ 'i:d p) ed (e_ i:d p) edal Ed@L @@ -2567,6 +2569,8 @@ _it_separ) ate (_ @t en (core 0n &) ency (_ @ns%i ency (cli %EnsI + _) en (dg@ %En + _) en (dp@ %En k) en (d_ En s) en (d_ En t) en (d_ En @@ -2890,6 +2894,7 @@ _it_separ) ate (_ @t &z) es (_S2 %I#z &C) es (_S1i z xus) es (_S2 %I#z + tamus) es (_S2 %I#z // hippopotamuses es (carp I2s es (cape %Es es (capi %Es @@ -4299,6 +4304,7 @@ multip) ly laI &) mouth (_ m@T &) mouth (_$w_alt1 maUT _) multi mVlti + _) multi (pl m,VltI _) multi (@@P5 m,VltI .group mi @@ -5878,6 +5884,7 @@ multip) ly laI &) s (ic_ z n) s (ic_ s ss (ic s + mu) s (e z mu) s (ic z ea) s (ie z ea) s (il z @@ -6082,6 +6089,8 @@ multip) ly laI th (ill th gh) th (A th ee) thing DI2N + soo) th D + soo) th (say T the (_ D &) th (L03_ =T ou) thed (_ Dd From 3278ddaa721c9a9d7de2415e64cba941e2e908f8 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Mon, 10 Jul 2017 07:21:29 +0100 Subject: [PATCH 15/17] Update the UCD version to 10.0.0. --- configure.ac | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 0a7e6665..9da5bfa4 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.65]) -AC_INIT([Unicode Character Database Tools], [9.0.0], [https://github.com/rhdunn/ucd-tools/issues], [ucd-tools], [https://github.com/rhdunn/ucd-tools]) +AC_INIT([Unicode Character Database Tools], [10.0.0], [https://github.com/rhdunn/ucd-tools/issues], [ucd-tools], [https://github.com/rhdunn/ucd-tools]) AM_INIT_AUTOMAKE() m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES]) @@ -34,10 +34,10 @@ dnl UCD data configuration. dnl ================================================================ AC_ARG_WITH([unicode-version], - [AS_HELP_STRING([--with-unicode-version], [Unicode version to support @<:@default=9.0.0@:>@])], + [AS_HELP_STRING([--with-unicode-version], [Unicode version to support @<:@default=10.0.0@:>@])], [AS_IF([test x"$withval" != x], [UCD_VERSION="$withval"])], - [UCD_VERSION="9.0.0"]) + [UCD_VERSION="10.0.0"]) AC_SUBST(UCD_VERSION) From 46f935d9de69a528d938746635ed4a4fa918cf83 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sat, 15 Jul 2017 10:30:19 +0100 Subject: [PATCH 16/17] en: pronunciation fixes, including some Irish names/words --- dictsource/en_list | 10 +++------- dictsource/en_rules | 20 ++++++++++++++++---- 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/dictsource/en_list b/dictsource/en_list index bbba908c..4dbf4406 100644 --- a/dictsource/en_list +++ b/dictsource/en_list @@ -2228,7 +2228,7 @@ idevice $alt6 idly aIdlI idiocy IdI@si ifrog $alt6 -ignoramus Igno@r'eIm@s +ignoramus IgnO@r'eIm@s illiterate $alt2 illumine $alt2 imagery ImIdZri @@ -3570,7 +3570,6 @@ tallyho talI'hoU tamale ta#mA:li tampon tamp0n tangerine tandZ@r'i:n -taoiseach ti:S@x tapestry tapI#stri tarantula t@rantS@l@ tardis $alt1 @@ -4549,8 +4548,6 @@ Annise a#ni:s ?!3 Anthony ant@ni Anton ant0n Anya anj@ -Aoife i:f@ -Aoiffe i:f@ Aphrodite afr@d'aIti Archibald A@tSIbO:ld Archie A@tSi @@ -4901,7 +4898,6 @@ Sabine sa#b'i:n Salman sa#lmA:n Samantha sa#manT@ (Santa claus) s'ant@||kl'O:z -Saoirse si@S@ Sarah se@r@ Sarisa $alt3 Seamus SeIm@s @@ -4915,8 +4911,8 @@ Sheila Si:l@ Simon saIm@n Sinead SI2neId Sinéad SI2neId -Siobhan S@vO:n -Siobhán S@vO:n +Siobhan SI2vO:n +Siobhán SI2vO:n Sonia s0nj@ Sophia soUf'i@ Sophie soUfi diff --git a/dictsource/en_rules b/dictsource/en_rules index ecc53d15..a456f48f 100644 --- a/dictsource/en_rules +++ b/dictsource/en_rules @@ -150,12 +150,16 @@ sw) a (m_ a sw) a (nk a ao eI0 + mh) ao eI // Irish, e.g. 'mhaol' /weIl/ m) ao aU p) ao aU t) ao aU ao (_ =aU - aois (_ i:S - aoise (_ i:S@ + ao (ism aU + ao (ist aU + aoi (C i: // Irish, e.g. 'Aoife' /i:f@/ + aoir (C e@ // Irish, e.g. 'Saoirse' /se@S@/ +?3 aoir (C 3: // Irish, e.g. 'Saoirse' /s3:S@/ g) ao (l eI@ aor eI'o@ m) ao (ri aU @@ -2151,6 +2155,8 @@ _it_separ) ate (_ @t e (Cical 'E e (CiuB i: &) e (_ + aoiC) e (_ @ // Irish, e.g. 'Aoife' /i:fe/ + aoiCC) e (_ @ // Irish, e.g. 'Saoirse' /se@S@/ acB) e (_ %I XC) e (_N i: vert) e (b I @@ -2775,7 +2781,7 @@ _it_separ) ate (_ @t exp) eri (en i@rI2 XC) er 3: th) er (@ 3: - h) er (@ %3 + h) er (nan %3 X) er (A E#r _h) eretical I#rEtIk@L _qu) er 3: @@ -3104,7 +3110,7 @@ _it_separ) ate (_ @t &) ford (_S4 f3d &f) ford (_S4 3d for (see f%O@ - for (ward f'o@ // straightforward + for (ward f'O@ ft (en f &) ful (_S3i f@L @@ -4293,6 +4299,8 @@ multip) ly laI _) metall (ic m@tal metabo m@t'ab0 _) meta (llu m%Eta + mh (ao w // Irish, e.g. 'mhaol' /weIl/ + aoi) mh (e v // Irish, e.g. 'Caoimhe' /ki:v@/ &) mobile m@bi:l _) mocha moUk@ mono (ga m@n'0 @@ -5853,6 +5861,10 @@ multip) ly laI Co) s (Er z Co) s (En z e) s (d z + aoi) s (e S // Irish, e.g. 'Laoise' + aoi) seach S@x // Irish, e.g. 'Taoiseach' + aoi) sigh Si // Irish, e.g. 'Taoisigh' + aoir) s (e S // Irish, e.g. 'Saoirse' _) se (clu sI# secur sI#kjU@ _) se (duc sI# From d0169db7929461793c0050d0d68651f177744b58 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 23 Jul 2017 20:32:28 +0100 Subject: [PATCH 17/17] af: Updates from Christo de Klerk. --- dictsource/af_list | 28 +++++++++++++++++++++++++++- dictsource/af_rules | 45 +++++++++++++++++++++++++++++++++++++++------ 2 files changed, 66 insertions(+), 7 deletions(-) diff --git a/dictsource/af_list b/dictsource/af_list index 9443be40..42008178 100644 --- a/dictsource/af_list +++ b/dictsource/af_list @@ -218,6 +218,7 @@ afganistan afg'anistan alaska al'aska albanië alb'A:ne@:@- algerië alx2'e@re@:@- +alhambra al'ambra amanzimtoti $4 antwerpen antv&rp@n avignon _^_FR @@ -333,6 +334,7 @@ oberammergau o@b@r'am@rgaU oklahoma @Ukl@h'@Uma outeniekwa @Ut@n'ikwa oxford _^_EN +paardeneiland pA:rd@n_'eIlant palermo pal'&rmu pelindaba p&l@nd'A:ba perú p@ru @@ -342,6 +344,7 @@ portugal pOrtyx2al potchefstroom pOtSIfstr'o@m rhône _^_FR richardsbaai ritS@dsb'AI +riversdal r@v@rsdal riviersonderend r@fi:rsOn@r_'Ent robertson _^_EN salvador salvadO:r @@ -585,6 +588,7 @@ james _^_EN jane _^_EN janine dZ@ni:n Jean ZA~n $capital +jeff _^_EN jesebel je@s@b&l jessica _^_EN jimmy _^_EN @@ -769,9 +773,11 @@ stockenström stOk@nstro@m stuart _^_EN suzanne suz'A:n suzette suz'Et +sylvia _^_EN tania tanja telemann te@l@man terblanche t@rblA:nS +thelma _^_EN theo tiu theron tr'On thessalonicense tEsalo@nis'E:ns@ @@ -816,6 +822,7 @@ vivaldi viv'aldi viviers v@v@je@ wilhelm v@lh&l@-m williston _^_EN +woltemade vOlt@mA:d@ khumalo kum'A:lu zuma zu:ma @@ -825,6 +832,7 @@ alibama $3 antares $2 beatles _^_EN boeing _^_EN +cadillac _^_EN checkers tSEk@rs chevrolet _^_FR chrysler kraIsl@r @@ -1044,7 +1052,8 @@ fides _^_LA forma _^_LA grata _^_LA habitatio _^_LA -inclusio _^_LA +inclusio _^_LA +(in camera) @n||kam@ra (in debiti) _^_LA (in absentia) _^_LA (in extremis) _^_LA @@ -1075,6 +1084,7 @@ vivos _^_LA // main word list aangaande $2 +aanmerklik $2 aanstaande $2 (a cappella) a||kap'&la adagio ad'A:dZi;%@U @@ -1091,6 +1101,7 @@ algaande $2 alge alx2@ algehele alx2@h,e@l@ allegro al'Egru +allengs alENs allergene $3 almiskie $3 alom al_'Om @@ -1116,11 +1127,13 @@ aversie av'&rsi babelaas bab@lA:s barrikade $3 +beaming b@_A:m@N bedewete be@d@ve@t@ beide beId@ bekaf b&kaf belangriker b@laNr@k,Ir bene be@n@ +beringde b@rINd@ beswil bEsv@l besnedene b@sne@d@n@ bestes bEst@s @@ -1130,6 +1143,7 @@ bewe be@v@ bewebeen be@v@be@n bewend be@v@nt bewering b@ve@rIN +bilharzia b@lharsia biopsie bi'Opsi bomaat bo@mA:t bordegoed bO:rd@x2ut @@ -1155,6 +1169,7 @@ cedille s@dIl@ charisma kar'Isma cinsaut s@nso@ cliché kliS'eI: +clientèle _^_FR clivia klIvija cognac kOn^ak confetti $2 @@ -1173,6 +1188,7 @@ dawidster dA:v@tst&r déjà _^_FR dekade dEk'A:d@ dekreling dEkre@l@N +demensie d@me~nsi deurentyd dy@r@nteIt deurgaans $1 deurkruis $2 @@ -1219,12 +1235,14 @@ ewentwil e@v@ntv@l exodus Eks'o@dWs factotum $2 +faktotum $2 fakture $2 fetakaas fEtakA:s figuur f@x2yr filippense f@l@pEns@ finalis $3 finaliste $3 +fluktuasie $3 fort fOrt forte fOrt@ @@ -1269,6 +1287,7 @@ hekke h&k@ helaas he@l'A:s here he@r@ herero hEr'E:ru +herontmoeting h&r_Ontmut@N herrysenis h&r'eIs@n@s hierso hi:rsO hippie _^_EN @@ -1294,6 +1313,7 @@ inkatha iNk'A:ta inkluis $2 innestel InnEst@l insomnia @nsOmnija +inteling Inte@l@N intens @nt'Ens intensiteit $4 ironieë irun'i:@ @@ -1312,6 +1332,7 @@ kaviaar kavi'A:r kennisvaardig $1 kimono $2 klaasvakie $2 +kliënteel $3 klimeid klImeIt knapsekêrel knaps@k&:r@l kolossense kOl@s'e~ns@ @@ -1325,11 +1346,13 @@ kopiereg kup'ir&x2 korswel kOrsv@l kotiljons kOt@lj'o~ns kritiek krIt'ik +kruisteling krYyste@l@N kulture $2 kunsmatige kWnsm'A:t@x2@ kwansuis $2 kweekwal kwe@kval +landswye lantsveI@ lasagne las'anj@ legaat l@x2A:t legate l@x2A:t@ @@ -1532,6 +1555,7 @@ sonore sun'o@r@ sonure sOn_yr@ sover so@f&r staccato $2 +steekhoudendheid $2 sterwens st&rv@ns stilswye $1 strydros streIt_rOs @@ -1555,6 +1579,7 @@ tevrede t@fre@d@ thula tu:la toegee tux2e@ toereken ture@k@n +toleransie tOl@r'ansi tornado $2 totale tut'A:l@ totsiens $2 @@ -1566,6 +1591,7 @@ tsoenami tsun'A:mi uitdaging YydA:x2@N uiteraard Yyt@r_'A:rt uitermate $3 +uitgeslotene Yytx2@slo@t@n@ uniforme $3 vaarwel fA:rv'&l diff --git a/dictsource/af_rules b/dictsource/af_rules index d8f65eda..193465c1 100644 --- a/dictsource/af_rules +++ b/dictsource/af_rules @@ -73,6 +73,7 @@ @@@smokkel) ary %ar%eI // default stress: diamant-/drank-/dwelm-/goud-/kokaïensmokkelary, etc. amarula %am%arul%a // fix stress and a sounds: amarula and compounds a (ment %a // shorten a sound: perkament/testament and compounds + _) arendag (CAC %A:r@ntax2 // fix e sound: arendagtig/-e/-heid arends A:r@nts_ // fix e sound: arendsoog/-kloue/-nes argen (tA %arx2@n // move default stress: Argentinië/Argentyns/-e a (riA 'A: // akwarium/barium/estuarium/herbarium/seminaria @@ -310,7 +311,7 @@ attaché _%at%aSe@ // correct pronunciation: (handels-/inligtings-)attaché attrib (u %atr@b // move default stress: attribuut/bute/attributêr K) au @U // trauma/-ties/Aucamp/Paul/-a/-us - auer aU@r //Sauer etc. fixed au and e sounds in compounds. + auer aU@r //Sauer etc. fix au and e sounds in compounds. augustus %Ox2WstWs avokado %af%ukA:du // stress and o sounds avokade %af%ukA:d@ // variant form of avokado @@ -431,7 +432,8 @@ bo (grond bo@ // fix 1st o sound: bogronds/-e _) bo (kle bo@ // fix o sound: bokleed/boklere bokma (kier b%Okm%a // fix stress and a sound: bokmakierie/-s/-tjie - bom (AA bOm_ // fix a sound, pause: bomaanval/-aanslag/-aard/-eenheid and compounds + bom (AA bOm_ // fix a sound, pause: bomaanval/-aard/-eenheid and compounds + bomaans (la bOm_A:ns // fix o sound: bomaanslag/-aanslae bomaans bo@mA:ns // but fix O sound: bomaans/-e bonde (C bOnd@ // verbondenheid/bondeldraer/gebondene/saambondelend boos (aardig b%o@s_ // move default stress: boosaardig/-e/-heid @@ -526,6 +528,7 @@ bakate (l b%ak@t& // fix stress and vowel sounds: bakatel/-le/-letjie baken bA:k@n // fix e sound: afbakening and compounds bakte (ri b%akte@ // fix stress and e sound: bakterie/-ë + balalaika b%al%alaIk%a // fix a sounds and stress: balalaika/-s/-musiek _) bam (boes b%am // move default stress: bamboes/-e/bamboesfluit... ba (nalA b%a // fix stress and 1st a sound: banale/banaliteit band (Alier b,and // fix stress and d sound: band(e/o)lier/-e @@ -547,6 +550,7 @@ ba (sieli b%a // fix stress and 1st a sound: basielie/-kruit, etc. basotho b%asut%u // fix stress and vowel sounds: Basotho/-0ponie and similar basi (s bA:s@ // basis and compounds + basilie b%asil%i // fix a sound and stress: basilie/-kruid, etc. bastille b%asti:l // Bastille and compounds like Bastilledag batal (jon b%at%al // shorten 1st a sound, moved stress: bataljon and compounds ba (tik b%a // fix stress and a sound: batik/-doek/-kuns/-werk @@ -646,6 +650,8 @@ bere (_ be@r@ //tediebere pandabere etc. _) ber (C b&r // fix e sound: Bert/Berta/Bertie/Bertus/berke/-boom beste (_ bEst@ // fix e sound: beste/allerbeste/naasbeste/-s + beton (C@ b@tOn // split ng sounds: betongebou/-gietsel/-gruis + beton (inC@ b@t'On // fix O sound: betoninrigting/-ingenieur be (weging b@ // draaibeweging/swaaibeweging bewende be@v@nd@ // first e pronounced long bewe (rig be@v@ // fix e sound and stress: bewerig/-e/-heid @@ -749,6 +755,7 @@ dia (C d%i%a // diabeet/diafragma/diagnose/dialek/dialoog/diamant diaken d%iA:k@n // diaken and compounds diako (nie d%i%ak%u // fix stress and o sound: diakonie/-ë + diende dind@ // fix last e sound in many compounds of bediende: bediendekamer diens (willi d%ins // move default stress: dienswillig/-e/-heid dieper (@ dip@r // fix e sound: diepere/dieperliggend/-e digi (ta d%ix2%i // move default stress: digitaal/digitale @@ -983,6 +990,7 @@ @C) e (reekK @ // fix e sound: duine-/rotsereeks aai) e (C @ // fix e sound: baaierd/waaierstert/paaiement/compounds starting with baaiers- lat) eres @r@s //lateres + @C) erm (K &r@-m // a catch-all for words ending in -erm(s) fp) ers (_ &rs // fix e sound: dof-/gif-/olyf-/tydskrifpers, etc. bloup) ers &:rs // fix e sound: bloupers iew) ers (ter @rs // fix e sound: (l)iewerster @@ -1074,6 +1082,7 @@ p) e (talje @ // fix stress and 1st e sound: petalje and compounds l) e (moen @ //fix lemoen and compounds Cy) e (C+ @ // fix connecting e sound in compounds like byekorf/skilderyemuseum, etc. + effe (kleur Ef@ // fix stress and 2nd e sound: effekleur(ig/-e) eier eI@r // eiergeel/eierwit/leierfiguur/leiergroep @C) ei (land _,eI // insert short pause: skiereiland and many -eiland compounds @) ei (sen _'eI // (on)veeleisend/spoedeisend @@ -1589,6 +1598,7 @@ flu (we fl%y // move default stress: fluweel/fluwele and compounds _) fok (o fOk_ // fix o sound, insert short break: fokop/fokof folio fo@li_u // fix o sounds: folio and compounds + fondsw fOntsv // fix v sound: fondswerwing & compounds/-waardes fondue f%Ondy // fix stress and ue sound: fondue and compounds fone (tiek f%o@n@ // fix e sound: fonetiek and compounds fone (tie f%une@ // fix stress and o sound: foneties/-e @@ -1602,6 +1612,7 @@ formi (da f%Orm%i // move default stress: formidabel/-e formu (lier f%Orm%y // move default stress: formulier/-e/-boek _) for (se_ f'Or // stress back to 1st slb; se rule: _) for (C + forse (nd fOrs@ // fix e sound: forsend/-e fos (fa f%Os // move default stress: fosfaat/fosfate fo (ssiel f%O // move default stress: fossiel/-e and compounds foto fo@tu @@ -1694,6 +1705,7 @@ _) gra (na x2r@ // granaat(boom)/granate grandi (o x2r%and%i // move default stress: grandioos/-ose _) gra (vA x2r%a // fix stress and a sound: gravin/-ne/gravure + grenadella gr@n@d&la // fix stress and vowels: grenadella and compounds like -heining griekwa x2rikwa // fix w sound and a sound in compounds: Griekwa/-land, etc. ouCa) gr (ootjie x2r' // move default stress: ouma/oupagrootjie/-s _) graad (e x2r%A:t_ // fix stress and d sound: graadeen(tjies)/-elfs @@ -1726,6 +1738,7 @@ gegesel x2@x2e@s@l // fix middle e sound K) gele (_ x2e@l@ // fix stress and e sound: (eier)gele _) geler x2e@l@r // stress and 1st e sound: geler/gelerig + _) gell x2&l gemel (d x2@m&l // fix e sound: bo-/bowe-/laas-/meergemeld/-e gems x2Ems // fix e sound: (baster)gemsbok/-bul/-ooi, etc. gene (_ x2e@n@ // gene/diegene @@ -1741,7 +1754,7 @@ _) ge (ossP2 x2@ // but ge- prefix: geossilleer/geossifiseer, etc. ni) ge (ri x2'e@ //nigeriese etc. gese (_ x2'e@s@ //Portugese, and others - + gesp (etjie x2Esp // fix e sounds: gespetjie/-s gespe (_ x2Esp@ // gespe and compounds gespes (_ x2Esp@s // gespes and compounds gewens (g x2e@v@ns // (on)vergewensgesind/-e/-heid @@ -1847,6 +1860,7 @@ hart (stogte_ h%art // move default stress: hartstogtelik hart (stogte_N hart // restore default stress: hartstogte ha (we hA: // fix stress and a sound: hawearbeider/lewendehaweafdeling + _) hef (a hEf_ // fix e sound, insert break: hefapparaat/-arm(s) hia (sint h%ij%a // fix stress: hiasint/-e and compounds _) hi (bis h%i // move default stress: hibiskus/-se and compounds hierna (maal h%i:rnA: // fix stress and a sound: hiernamaals/-e @@ -1984,6 +1998,7 @@ _) idi (o %id%i // idioom/idiome/idioot _) id (A %id // idille/idillies/ideëryk &l) iker (C @k@r // fix i sound: menslikerwys/redelikerwyse, etc. + &l) iker (_ @k@r // fix i sound: afstootliker/(ge)redeliker/onberispeliker illumi (nA %il%um%i // fix stress and vowel sounds: illuminasie/illumineer/illuminati illu (si %ily // illusie/-s/illusief illu (strA %il%W // fix i sound: illustreer/illustrering/illustrasie @@ -2114,6 +2129,7 @@ _) in (a@P2 In // inakkuraat/inaktief/inaktiwiteit _) inbe (lC Inb%& // fix e sound in compounds like inbelprogram indone (si @nd%uni: // fix stress and vowel sounds: Indonesië/Indonesiese + s) in (gestel @n // split n g: compounds with ingesteldheid/winsingestelde _) in (oe In_ // fix i sound, pause: inoefen/-oes and derivatives invest (eer @nv%Est // fix stress, v and e sounds: investeer/-der investe (r@ @nv%Este@ // fix e sound: (kapitaal)investering/investerende @@ -2324,10 +2340,11 @@ krieketw krik@tv //krieket followed by w in compounds always v krokodi (l kr%Ok@dI // (wyfie)krokodil/-le + kro (niek kr%u // fix stress and o sound: kroniek and many compounds kruger kr'Y@@r ku (ba@ k%y // move default stress: kubaan/kubane ku (biek k%y // move default stress: kubiek/-e/-getal - _) kuber kyb@r // fixed e sound: kuberruim(te) + _) kuber kyb@r // fix e sound: kuberruim(te) kulin k%Wl%in // Move default stress and fix u sound: kulinër/-e @) kundi (g k'Wnd@ // wiskundige/onoordeelkundigheid and many similar kurwe kWrv@ // fix e sound: kurwes/skurwebas/skurwebek/skurwepadda @@ -2364,6 +2381,7 @@ kafe (te k%af@ // fix stress and vowel sounds: kafeteria and compounds kafe (ï k%af%i // fix stress and vowel sounds: kafeïene and compounds ka (jak k%a // fix stress and 1st a sound: kajak/-ke/-vaarder + kakao k%akA:w // fix stress and vowel sounds: kakao and many compounds kake (C kA:k@ // kakebeen/skakelaar/skakelbord/skakelfunksie kalahari kalah'A:ri // stress: Kalahari/-sand/-woestyn _) ka (lAnC k%a // kalender and compounds/kalant/kalander and compounds @@ -2544,6 +2562,7 @@ kontrasep k%Ontr%asEp // fix stress and e sound: kontrasepsie and derivatives kontrover (s k%Ontr%uv&r // o and v sounds: kontroversie/kontroversieel kop (o kOp? // fix o sound: koponderstebo/kopomdraai/kopoperasie/gryskoponderwyser/poenskopolifant + kop (agtig k%Op_ // fix o sound, insert break: hamer-/spinnekop-/penkopagtig(e(s)) kopu (lA k%Op%y // fix o sound: kopulasie/kopuleer and derivatives _) kor (dA k%Or // kordaat/kordon ko (rint k%u // fix stress and o sound: korint/-e and compounds @@ -2656,6 +2675,7 @@ loboto (mie l%ub%Ot%u // fix stress and o sounds: lobotomie lo (ja l%u // fix stress and o sound: lojale/lojaliteit lo (kalA l%u // fix stress and o sound: lokale/ontvangslokale, etc. + loke (t l%ukE // fix stress and vowel sounds: many compounds with loket lom (bardA l%Om // move default stress: Lombardies/-e/Lombarde _) lore (C@ lo@r@ // fix e sound: verloregaan/verloregoederekantoor/Verlorerivier _) losge (@P5 l'Osx2@ @@ -2805,6 +2825,7 @@ medisyne m@d@seIn@ //medisyne and compounds meganies m@x2'A:nis _) meege (@P5 m'e@x2@ + _) meegewe (nd me@x2e@v@ // fix e sounds and stress: meegewend(e) me (juf m@ // move default stress and shorten e sound me (laats m@ // fix stress and e sound: melaats/-e/-heid melancholie (_N m%El%aNk%o@li // fix stress and 1st e sound: melancholie @@ -2946,6 +2967,7 @@ morf (otomie m%Orf // move default stress: morfotomie _) morr (i mOr // restore default stress: morrig/morrie/-doring _) mors (@ mOrs // restore default stress: morsaf/morsdood/morsig + mos (agtig mOs_ // fix o sound, insert break: (kos)mosagtig(e) mosam (biek m%o@s%am // move default stress: Mosambiek/-er/-se mosa (ïek m%o@s%a // move default stress: mosaïek and compounds mo (skee m%O // move default stress: moskee/-s and compounds @@ -3035,6 +3057,7 @@ ne (anderCa n%i // move default stress: Neander(d/t)al/-ler neger (in n%e@x2@r // move default stress: negerin/-ne ne (gosie n@ // fix stress and e sound: negosie/-ware, etc. + nek (_ n&k // catch-all for words ending in -nek: koedoe-/swaannek nek (om n&k_ // fix e sound, insert pause: nekom(ge)draai nekta (rien n%Ekt%a // fix stress and a sound: nektarien/-perske, etc. neo (li n%i%u // fix stress and vowel sounds: neolities/-e/neolitikum @@ -3080,6 +3103,7 @@ nood (lotti n%o@t // move default stress: noodlottig/-e nood (saak n%o@t // move default stress: noodsaaklik/-e/-heid, vs. noodsaak nood (saak_N no@t // restore default stress: (ge)noodsaak + nooien (tjie noIN // remove the e sound: nooientjie(s) and compounds noord (oos n%o@rt_ // move default stress: noordoos/-te/-telik/-e nor (ma@ n%Or // normaal/normaalweg/normale/abnormaal/-ale nostal (gie_N n%Ost%al // stress on last slb.: nostalgie @@ -3417,6 +3441,7 @@ ooi oI ooy oI oodjie oIci + CC) ool (A o@l_ // insert break: skooluur/-ure, steenkooluitvoer, but not: Karoolug ootjie oIci oontjie oINki oondjie oINki @@ -3483,6 +3508,7 @@ oot (moedig %o@t // move default stress: ootmoedig/-e/-heid .group op + _) opaal %o@pA:l // fix o sound, remove break: opaal and compounds opaat up'A:t // homeopaat/psigopaat and similar opatie upat'i // homeopatie/neuropatie and similar opaties up'A:tis // psigopaties/osteopaties and similar @@ -3578,6 +3604,7 @@ pol (vy p%Ol // move default stress: polvy/-e and compounds pomelo p%ume@l%u // fix stress and o sounds: pomelo(sap/-drankie...) _) pon (dok p%On // move default stress: pondok/-ke/-kie + pop (agtig p%Op_ // fix o sound, insert break: popagtig(e) and compounds popu ,pOpy _) por (C %pOr //portret portaal etc. por (ie p%o@r // move default stress: porie/-ë @@ -4118,6 +4145,7 @@ sker (muts sk%&r // move default stress: (ge)skermutsel/skermutseling/-e skerpi (oen sk%&rp%i // move default stress: skerpioen/-e and compounds skilder (y sk@ld@r // move stress to y: skildery and compounds like skilderymuseum + skim (agtig sk@m_ // fix i sound, insert break: skimagtig(e) skisofr (e sk%is%ufr // fix stress and o sound: skisofreen/skisofrene skle (rose skl@ // fix stress and e sound: sklerose and compounds _) skok (AP4 sk''Ok_ // fix o sound and stress: skokaankondiging/-effek/-insluiting/-onthulling... @@ -4252,6 +4280,7 @@ _) su (meri s%u // fix stress and u sound: sumeries/-e su (mmier s%W // move default stress: sumier/-e super (A s''yp@r_ // fix stress, break in compounds like superintelligent + superi (A s%up%e@r%i // fix stress and vowel sounds: superieur/superioriteit superintendent s,upr@nt%EndEnt // fix stress and vowel sounds: superintendent and compounds surro (ga s%Wr%u // fix stress and o sound: surrogaat/surrogate and compounds su (saC s%u // fix stress and u sound: susan/-na/susara @@ -4561,7 +4590,7 @@ toe (riste@ t%u // move default stress: toeristebedryf/-sentrum and similar toer (n t%ur // move default stress: compounds of toernooi toere (_ tu:r@ // restore default stress - toi (let t%OI // move default stress: toilet and compounds + toilet t%OIlEt // move default stress: toilet and compounds: toiletartikel/-emmer/-opsigter tokke (lo t%Ok@ // move default stress: tokkelos/-sie/tokkelok and compounds tok (tokk t%Ok // move default stress: toktokkie/-s/-spelery, etc. tombola t%Ombo@l%a // move default stress: tombola and compounds @@ -4574,6 +4603,7 @@ @) toris (_ t'o@r@s // fix stress: pectoris/klitoris _) tor (nyn t%Or // move default stress: tornyn/-e and compounds _) tos (ka t%Os // move default stress: Toskaanse/Toskane + tser (tjie ts@r // fix e sound: (skoen)poetsertjie/weerkaatsertjie ttel t@l // many compounds of bottel/skottelgoed tuberkulose t%yb@rk%ylo@s@ // fix stress; e sound in compounds: tuberkulose/-behandeling tug (A tWx2_ // fix u sound: (on)tugondersoek/-oortreding/-ordonnansie @@ -4875,6 +4905,7 @@ _) vanklik faNkl@k // (on)ontvanklik/-e/-er/-heid vanself (spr f%ans%&lf // move default stress: vanselfsprekend/-e/-heid vari (A v%ar%i // fix v sound and stress: variasie/-s/varieer + va (sal v%a // fix stress and v and a sounds: vasal/-le vaseline v%as@lin // fix stress, v and vowel sounds: vaseline/-bottel, etc. vasste (l fast& // fix e sound: vasstel(ling/-lende) _) vat (A@ fat_ // fix a sound: vatafstand/-orgaan @@ -4943,9 +4974,11 @@ ve (l f& // maagvel, stress on 1st slb @) vel (A fe@l // aanbeveling/aanbevelingsbrief + vel (djie f&l // fix -djie sound: veldjie(s) and compounds veld (C f< // fix d sound: veldreuk/-radio/-rantsoen, etc. veld (eks f<_ // fix d sound, pause: veldekskursie/-ekspedisie/-s veld (o f<_ // fix d sound, pause: veldorgideë/-opsigter/-oppervlakte/-opname, etc. + veld (t f&l // eliminate double t sound: veldtog and many compounds, Langeveldt, Springveldt vele f'e@l@ ven (detta v%En // fix stress and v sound: vendatta and compounds ven (dusie f@n // fix stress and e sound: vendusie and compounds @@ -5048,7 +5081,7 @@ vol (kome f%Ol vo (llA_ fO // volle/vollê/Volla - exception to: vo (lC f%O volle (dig f%Ole@ // fix stress and e sound: (on)volledig/-e/-heid... - voll (engte fOlE + volle (ngte fOlE vo (ller fO // exception to: vo (lC f%O volles (_ fOl@s // fix stress and e sound: volles/passievolles, etc. vol (hou_ fOl // exception to: vo (lC f%O