See: https://lists.gnu.org/archive/html/bug-libunistring/2015-02/msg00002.html for the context.
Regards, -- Daiki Ueno
>From 4d34d04d57eb2d66d78c6bf8a5905fc0f0c93787 Mon Sep 17 00:00:00 2001 From: Daiki Ueno <u...@gnu.org> Date: Mon, 23 Feb 2015 12:22:22 +0900 Subject: [PATCH] unictype: mark translatable strings Define long names with a no-op macro _UC_LONG_NAME, so that those strings can be extracted when being built as a part of libunistring. * modules/unictype/bidiclass-longname (Files): * modules/unictype/category-longname (Files): * modules/unictype/combining-class-longname (Files): * modules/unictype/joiningtype-longname (Files): Add lib/unictype/longname.h. * lib/unictype/longname.h: New file. * lib/unictype/bidi_longname.c: Include "longname.h". (u_bidi_class_long_name): Use _UC_LONG_NAME to define long names. * lib/unictype/categ_longname.c: Include "longname.h". (u_category_long_name): Use _UC_LONG_NAME to define long names. * lib/unictype/combiningclass_longname.c: Include "longname.h". (u_combining_class_long_name): Use _UC_LONG_NAME tot define long names. * lib/unictype/joiningtype_longname.c: Include "longname.h". (u_joining_type_long_name): Use _UC_LONG_NAME to define long names. * lib/gen-uni-tables.c (output_scripts, output_blocks): Emit '#include "longname.h"' and _UC_LONG_NAME uses. * lib/unictype/blocks.h, lib/unictype/scripts.h: Regenerate. --- ChangeLog | 24 ++ lib/gen-uni-tables.c | 9 +- lib/unictype/bidi_longname.c | 40 +-- lib/unictype/blocks.h | 505 +++++++++++++++--------------- lib/unictype/categ_longname.c | 62 ++-- lib/unictype/combiningclass_longname.c | 41 +-- lib/unictype/joiningtype_longname.c | 14 +- lib/unictype/longname.h | 4 + lib/unictype/scripts.h | 283 +++++++++-------- modules/unictype/bidiclass-longname | 1 + modules/unictype/category-longname | 1 + modules/unictype/combining-class-longname | 1 + modules/unictype/joiningtype-longname | 1 + 13 files changed, 532 insertions(+), 454 deletions(-) create mode 100644 lib/unictype/longname.h diff --git a/ChangeLog b/ChangeLog index f3b7b3a..ad6286f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,27 @@ +2015-02-23 Daiki Ueno <u...@gnu.org> + + unictype: mark translatable strings + Define long names with a no-op macro _UC_LONG_NAME, so that those + strings can be extracted when being built as a part of + libunistring. + * modules/unictype/bidiclass-longname (Files): + * modules/unictype/category-longname (Files): + * modules/unictype/combining-class-longname (Files): + * modules/unictype/joiningtype-longname (Files): Add + lib/unictype/longname.h. + * lib/unictype/longname.h: New file. + * lib/unictype/bidi_longname.c: Include "longname.h". + (u_bidi_class_long_name): Use _UC_LONG_NAME to define long names. + * lib/unictype/categ_longname.c: Include "longname.h". + (u_category_long_name): Use _UC_LONG_NAME to define long names. + * lib/unictype/combiningclass_longname.c: Include "longname.h". + (u_combining_class_long_name): Use _UC_LONG_NAME tot define long names. + * lib/unictype/joiningtype_longname.c: Include "longname.h". + (u_joining_type_long_name): Use _UC_LONG_NAME to define long names. + * lib/gen-uni-tables.c (output_scripts, output_blocks): Emit + '#include "longname.h"' and _UC_LONG_NAME uses. + * lib/unictype/blocks.h, lib/unictype/scripts.h: Regenerate. + 2015-02-17 Paul Eggert <egg...@cs.ucla.edu> dup2, fcntl: port to AIX diff --git a/lib/gen-uni-tables.c b/lib/gen-uni-tables.c index 03fac9f..99115bf 100644 --- a/lib/gen-uni-tables.c +++ b/lib/gen-uni-tables.c @@ -4568,6 +4568,7 @@ output_scripts (const char *version) fprintf (stream, "/* Unicode scripts. */\n"); fprintf (stream, "/* Generated automatically by gen-uni-tables.c for Unicode %s. */\n", version); + fprintf (stream, "#include \"longname.h\"\n"); for (s = 0; s < numscripts; s++) { @@ -4620,7 +4621,9 @@ output_scripts (const char *version) scriptinfo[s].lowercase_name); fprintf (stream, " script_%s_intervals,\n", scriptinfo[s].lowercase_name); - fprintf (stream, " \"%s\"\n", scripts[s]); + if (strchr (scripts[s], '_') != NULL) + fprintf (stream, " /* TRANSLATORS: Replace '_' in msgid with a ' ' */\n"); + fprintf (stream, " _UC_LONG_NAME(\"script\", \"%s\")\n", scripts[s]); fprintf (stream, " }"); if (s+1 < numscripts) fprintf (stream, ","); @@ -4885,12 +4888,14 @@ output_blocks (const char *version) fprintf (stream, "/* Unicode blocks. */\n"); fprintf (stream, "/* Generated automatically by gen-uni-tables.c for Unicode %s. */\n", version); + fprintf (stream, "#include \"longname.h\"\n"); fprintf (stream, "static const uc_block_t blocks[] =\n"); fprintf (stream, "{\n"); for (i = 0; i < numblocks; i++) { - fprintf (stream, " { 0x%04X, 0x%04X, \"%s\" }", blocks[i].start, + fprintf (stream, " { 0x%04X, 0x%04X, _UC_LONG_NAME(\"block\", \"%s\") }", + blocks[i].start, blocks[i].end, blocks[i].name); if (i+1 < numblocks) fprintf (stream, ","); diff --git a/lib/unictype/bidi_longname.c b/lib/unictype/bidi_longname.c index 9f99114..144d4e1 100644 --- a/lib/unictype/bidi_longname.c +++ b/lib/unictype/bidi_longname.c @@ -20,27 +20,29 @@ /* Specification. */ #include "unictype.h" +#include "longname.h" + static const char u_bidi_class_long_name[19][24] = { - "Left To Right", - "Left To Right Embedding", - "Left To Right Override", - "Right To Left", - "Arabic Letter", - "Right To Left Embedding", - "Right To Left Override", - "Pop Directional Format", - "European Number", - "European Separator", - "European Terminator", - "Arabic Number", - "Common Separator", - "Nonspacing Mark", - "Boundary Neutral", - "Paragraph Separator", - "Segment Separator", - "White Space", - "Other Neutral" + _UC_LONG_NAME("bidi class", "Left To Right"), + _UC_LONG_NAME("bidi class", "Left To Right Embedding"), + _UC_LONG_NAME("bidi class", "Left To Right Override"), + _UC_LONG_NAME("bidi class", "Right To Left"), + _UC_LONG_NAME("bidi class", "Arabic Letter"), + _UC_LONG_NAME("bidi class", "Right To Left Embedding"), + _UC_LONG_NAME("bidi class", "Right To Left Override"), + _UC_LONG_NAME("bidi class", "Pop Directional Format"), + _UC_LONG_NAME("bidi class", "European Number"), + _UC_LONG_NAME("bidi class", "European Separator"), + _UC_LONG_NAME("bidi class", "European Terminator"), + _UC_LONG_NAME("bidi class", "Arabic Number"), + _UC_LONG_NAME("bidi class", "Common Separator"), + _UC_LONG_NAME("bidi class", "Nonspacing Mark"), + _UC_LONG_NAME("bidi class", "Boundary Neutral"), + _UC_LONG_NAME("bidi class", "Paragraph Separator"), + _UC_LONG_NAME("bidi class", "Segment Separator"), + _UC_LONG_NAME("bidi class", "White Space"), + _UC_LONG_NAME("bidi class", "Other Neutral") }; const char * diff --git a/lib/unictype/blocks.h b/lib/unictype/blocks.h index b561b11..5b2ad9e 100644 --- a/lib/unictype/blocks.h +++ b/lib/unictype/blocks.h @@ -1,260 +1,261 @@ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ /* Unicode blocks. */ /* Generated automatically by gen-uni-tables.c for Unicode 7.0.0. */ +#include "longname.h" static const uc_block_t blocks[] = { - { 0x0000, 0x007F, "Basic Latin" }, - { 0x0080, 0x00FF, "Latin-1 Supplement" }, - { 0x0100, 0x017F, "Latin Extended-A" }, - { 0x0180, 0x024F, "Latin Extended-B" }, - { 0x0250, 0x02AF, "IPA Extensions" }, - { 0x02B0, 0x02FF, "Spacing Modifier Letters" }, - { 0x0300, 0x036F, "Combining Diacritical Marks" }, - { 0x0370, 0x03FF, "Greek and Coptic" }, - { 0x0400, 0x04FF, "Cyrillic" }, - { 0x0500, 0x052F, "Cyrillic Supplement" }, - { 0x0530, 0x058F, "Armenian" }, - { 0x0590, 0x05FF, "Hebrew" }, - { 0x0600, 0x06FF, "Arabic" }, - { 0x0700, 0x074F, "Syriac" }, - { 0x0750, 0x077F, "Arabic Supplement" }, - { 0x0780, 0x07BF, "Thaana" }, - { 0x07C0, 0x07FF, "NKo" }, - { 0x0800, 0x083F, "Samaritan" }, - { 0x0840, 0x085F, "Mandaic" }, - { 0x08A0, 0x08FF, "Arabic Extended-A" }, - { 0x0900, 0x097F, "Devanagari" }, - { 0x0980, 0x09FF, "Bengali" }, - { 0x0A00, 0x0A7F, "Gurmukhi" }, - { 0x0A80, 0x0AFF, "Gujarati" }, - { 0x0B00, 0x0B7F, "Oriya" }, - { 0x0B80, 0x0BFF, "Tamil" }, - { 0x0C00, 0x0C7F, "Telugu" }, - { 0x0C80, 0x0CFF, "Kannada" }, - { 0x0D00, 0x0D7F, "Malayalam" }, - { 0x0D80, 0x0DFF, "Sinhala" }, - { 0x0E00, 0x0E7F, "Thai" }, - { 0x0E80, 0x0EFF, "Lao" }, - { 0x0F00, 0x0FFF, "Tibetan" }, - { 0x1000, 0x109F, "Myanmar" }, - { 0x10A0, 0x10FF, "Georgian" }, - { 0x1100, 0x11FF, "Hangul Jamo" }, - { 0x1200, 0x137F, "Ethiopic" }, - { 0x1380, 0x139F, "Ethiopic Supplement" }, - { 0x13A0, 0x13FF, "Cherokee" }, - { 0x1400, 0x167F, "Unified Canadian Aboriginal Syllabics" }, - { 0x1680, 0x169F, "Ogham" }, - { 0x16A0, 0x16FF, "Runic" }, - { 0x1700, 0x171F, "Tagalog" }, - { 0x1720, 0x173F, "Hanunoo" }, - { 0x1740, 0x175F, "Buhid" }, - { 0x1760, 0x177F, "Tagbanwa" }, - { 0x1780, 0x17FF, "Khmer" }, - { 0x1800, 0x18AF, "Mongolian" }, - { 0x18B0, 0x18FF, "Unified Canadian Aboriginal Syllabics Extended" }, - { 0x1900, 0x194F, "Limbu" }, - { 0x1950, 0x197F, "Tai Le" }, - { 0x1980, 0x19DF, "New Tai Lue" }, - { 0x19E0, 0x19FF, "Khmer Symbols" }, - { 0x1A00, 0x1A1F, "Buginese" }, - { 0x1A20, 0x1AAF, "Tai Tham" }, - { 0x1AB0, 0x1AFF, "Combining Diacritical Marks Extended" }, - { 0x1B00, 0x1B7F, "Balinese" }, - { 0x1B80, 0x1BBF, "Sundanese" }, - { 0x1BC0, 0x1BFF, "Batak" }, - { 0x1C00, 0x1C4F, "Lepcha" }, - { 0x1C50, 0x1C7F, "Ol Chiki" }, - { 0x1CC0, 0x1CCF, "Sundanese Supplement" }, - { 0x1CD0, 0x1CFF, "Vedic Extensions" }, - { 0x1D00, 0x1D7F, "Phonetic Extensions" }, - { 0x1D80, 0x1DBF, "Phonetic Extensions Supplement" }, - { 0x1DC0, 0x1DFF, "Combining Diacritical Marks Supplement" }, - { 0x1E00, 0x1EFF, "Latin Extended Additional" }, - { 0x1F00, 0x1FFF, "Greek Extended" }, - { 0x2000, 0x206F, "General Punctuation" }, - { 0x2070, 0x209F, "Superscripts and Subscripts" }, - { 0x20A0, 0x20CF, "Currency Symbols" }, - { 0x20D0, 0x20FF, "Combining Diacritical Marks for Symbols" }, - { 0x2100, 0x214F, "Letterlike Symbols" }, - { 0x2150, 0x218F, "Number Forms" }, - { 0x2190, 0x21FF, "Arrows" }, - { 0x2200, 0x22FF, "Mathematical Operators" }, - { 0x2300, 0x23FF, "Miscellaneous Technical" }, - { 0x2400, 0x243F, "Control Pictures" }, - { 0x2440, 0x245F, "Optical Character Recognition" }, - { 0x2460, 0x24FF, "Enclosed Alphanumerics" }, - { 0x2500, 0x257F, "Box Drawing" }, - { 0x2580, 0x259F, "Block Elements" }, - { 0x25A0, 0x25FF, "Geometric Shapes" }, - { 0x2600, 0x26FF, "Miscellaneous Symbols" }, - { 0x2700, 0x27BF, "Dingbats" }, - { 0x27C0, 0x27EF, "Miscellaneous Mathematical Symbols-A" }, - { 0x27F0, 0x27FF, "Supplemental Arrows-A" }, - { 0x2800, 0x28FF, "Braille Patterns" }, - { 0x2900, 0x297F, "Supplemental Arrows-B" }, - { 0x2980, 0x29FF, "Miscellaneous Mathematical Symbols-B" }, - { 0x2A00, 0x2AFF, "Supplemental Mathematical Operators" }, - { 0x2B00, 0x2BFF, "Miscellaneous Symbols and Arrows" }, - { 0x2C00, 0x2C5F, "Glagolitic" }, - { 0x2C60, 0x2C7F, "Latin Extended-C" }, - { 0x2C80, 0x2CFF, "Coptic" }, - { 0x2D00, 0x2D2F, "Georgian Supplement" }, - { 0x2D30, 0x2D7F, "Tifinagh" }, - { 0x2D80, 0x2DDF, "Ethiopic Extended" }, - { 0x2DE0, 0x2DFF, "Cyrillic Extended-A" }, - { 0x2E00, 0x2E7F, "Supplemental Punctuation" }, - { 0x2E80, 0x2EFF, "CJK Radicals Supplement" }, - { 0x2F00, 0x2FDF, "Kangxi Radicals" }, - { 0x2FF0, 0x2FFF, "Ideographic Description Characters" }, - { 0x3000, 0x303F, "CJK Symbols and Punctuation" }, - { 0x3040, 0x309F, "Hiragana" }, - { 0x30A0, 0x30FF, "Katakana" }, - { 0x3100, 0x312F, "Bopomofo" }, - { 0x3130, 0x318F, "Hangul Compatibility Jamo" }, - { 0x3190, 0x319F, "Kanbun" }, - { 0x31A0, 0x31BF, "Bopomofo Extended" }, - { 0x31C0, 0x31EF, "CJK Strokes" }, - { 0x31F0, 0x31FF, "Katakana Phonetic Extensions" }, - { 0x3200, 0x32FF, "Enclosed CJK Letters and Months" }, - { 0x3300, 0x33FF, "CJK Compatibility" }, - { 0x3400, 0x4DBF, "CJK Unified Ideographs Extension A" }, - { 0x4DC0, 0x4DFF, "Yijing Hexagram Symbols" }, - { 0x4E00, 0x9FFF, "CJK Unified Ideographs" }, - { 0xA000, 0xA48F, "Yi Syllables" }, - { 0xA490, 0xA4CF, "Yi Radicals" }, - { 0xA4D0, 0xA4FF, "Lisu" }, - { 0xA500, 0xA63F, "Vai" }, - { 0xA640, 0xA69F, "Cyrillic Extended-B" }, - { 0xA6A0, 0xA6FF, "Bamum" }, - { 0xA700, 0xA71F, "Modifier Tone Letters" }, - { 0xA720, 0xA7FF, "Latin Extended-D" }, - { 0xA800, 0xA82F, "Syloti Nagri" }, - { 0xA830, 0xA83F, "Common Indic Number Forms" }, - { 0xA840, 0xA87F, "Phags-pa" }, - { 0xA880, 0xA8DF, "Saurashtra" }, - { 0xA8E0, 0xA8FF, "Devanagari Extended" }, - { 0xA900, 0xA92F, "Kayah Li" }, - { 0xA930, 0xA95F, "Rejang" }, - { 0xA960, 0xA97F, "Hangul Jamo Extended-A" }, - { 0xA980, 0xA9DF, "Javanese" }, - { 0xA9E0, 0xA9FF, "Myanmar Extended-B" }, - { 0xAA00, 0xAA5F, "Cham" }, - { 0xAA60, 0xAA7F, "Myanmar Extended-A" }, - { 0xAA80, 0xAADF, "Tai Viet" }, - { 0xAAE0, 0xAAFF, "Meetei Mayek Extensions" }, - { 0xAB00, 0xAB2F, "Ethiopic Extended-A" }, - { 0xAB30, 0xAB6F, "Latin Extended-E" }, - { 0xABC0, 0xABFF, "Meetei Mayek" }, - { 0xAC00, 0xD7AF, "Hangul Syllables" }, - { 0xD7B0, 0xD7FF, "Hangul Jamo Extended-B" }, - { 0xD800, 0xDB7F, "High Surrogates" }, - { 0xDB80, 0xDBFF, "High Private Use Surrogates" }, - { 0xDC00, 0xDFFF, "Low Surrogates" }, - { 0xE000, 0xF8FF, "Private Use Area" }, - { 0xF900, 0xFAFF, "CJK Compatibility Ideographs" }, - { 0xFB00, 0xFB4F, "Alphabetic Presentation Forms" }, - { 0xFB50, 0xFDFF, "Arabic Presentation Forms-A" }, - { 0xFE00, 0xFE0F, "Variation Selectors" }, - { 0xFE10, 0xFE1F, "Vertical Forms" }, - { 0xFE20, 0xFE2F, "Combining Half Marks" }, - { 0xFE30, 0xFE4F, "CJK Compatibility Forms" }, - { 0xFE50, 0xFE6F, "Small Form Variants" }, - { 0xFE70, 0xFEFF, "Arabic Presentation Forms-B" }, - { 0xFF00, 0xFFEF, "Halfwidth and Fullwidth Forms" }, - { 0xFFF0, 0xFFFF, "Specials" }, - { 0x10000, 0x1007F, "Linear B Syllabary" }, - { 0x10080, 0x100FF, "Linear B Ideograms" }, - { 0x10100, 0x1013F, "Aegean Numbers" }, - { 0x10140, 0x1018F, "Ancient Greek Numbers" }, - { 0x10190, 0x101CF, "Ancient Symbols" }, - { 0x101D0, 0x101FF, "Phaistos Disc" }, - { 0x10280, 0x1029F, "Lycian" }, - { 0x102A0, 0x102DF, "Carian" }, - { 0x102E0, 0x102FF, "Coptic Epact Numbers" }, - { 0x10300, 0x1032F, "Old Italic" }, - { 0x10330, 0x1034F, "Gothic" }, - { 0x10350, 0x1037F, "Old Permic" }, - { 0x10380, 0x1039F, "Ugaritic" }, - { 0x103A0, 0x103DF, "Old Persian" }, - { 0x10400, 0x1044F, "Deseret" }, - { 0x10450, 0x1047F, "Shavian" }, - { 0x10480, 0x104AF, "Osmanya" }, - { 0x10500, 0x1052F, "Elbasan" }, - { 0x10530, 0x1056F, "Caucasian Albanian" }, - { 0x10600, 0x1077F, "Linear A" }, - { 0x10800, 0x1083F, "Cypriot Syllabary" }, - { 0x10840, 0x1085F, "Imperial Aramaic" }, - { 0x10860, 0x1087F, "Palmyrene" }, - { 0x10880, 0x108AF, "Nabataean" }, - { 0x10900, 0x1091F, "Phoenician" }, - { 0x10920, 0x1093F, "Lydian" }, - { 0x10980, 0x1099F, "Meroitic Hieroglyphs" }, - { 0x109A0, 0x109FF, "Meroitic Cursive" }, - { 0x10A00, 0x10A5F, "Kharoshthi" }, - { 0x10A60, 0x10A7F, "Old South Arabian" }, - { 0x10A80, 0x10A9F, "Old North Arabian" }, - { 0x10AC0, 0x10AFF, "Manichaean" }, - { 0x10B00, 0x10B3F, "Avestan" }, - { 0x10B40, 0x10B5F, "Inscriptional Parthian" }, - { 0x10B60, 0x10B7F, "Inscriptional Pahlavi" }, - { 0x10B80, 0x10BAF, "Psalter Pahlavi" }, - { 0x10C00, 0x10C4F, "Old Turkic" }, - { 0x10E60, 0x10E7F, "Rumi Numeral Symbols" }, - { 0x11000, 0x1107F, "Brahmi" }, - { 0x11080, 0x110CF, "Kaithi" }, - { 0x110D0, 0x110FF, "Sora Sompeng" }, - { 0x11100, 0x1114F, "Chakma" }, - { 0x11150, 0x1117F, "Mahajani" }, - { 0x11180, 0x111DF, "Sharada" }, - { 0x111E0, 0x111FF, "Sinhala Archaic Numbers" }, - { 0x11200, 0x1124F, "Khojki" }, - { 0x112B0, 0x112FF, "Khudawadi" }, - { 0x11300, 0x1137F, "Grantha" }, - { 0x11480, 0x114DF, "Tirhuta" }, - { 0x11580, 0x115FF, "Siddham" }, - { 0x11600, 0x1165F, "Modi" }, - { 0x11680, 0x116CF, "Takri" }, - { 0x118A0, 0x118FF, "Warang Citi" }, - { 0x11AC0, 0x11AFF, "Pau Cin Hau" }, - { 0x12000, 0x123FF, "Cuneiform" }, - { 0x12400, 0x1247F, "Cuneiform Numbers and Punctuation" }, - { 0x13000, 0x1342F, "Egyptian Hieroglyphs" }, - { 0x16800, 0x16A3F, "Bamum Supplement" }, - { 0x16A40, 0x16A6F, "Mro" }, - { 0x16AD0, 0x16AFF, "Bassa Vah" }, - { 0x16B00, 0x16B8F, "Pahawh Hmong" }, - { 0x16F00, 0x16F9F, "Miao" }, - { 0x1B000, 0x1B0FF, "Kana Supplement" }, - { 0x1BC00, 0x1BC9F, "Duployan" }, - { 0x1BCA0, 0x1BCAF, "Shorthand Format Controls" }, - { 0x1D000, 0x1D0FF, "Byzantine Musical Symbols" }, - { 0x1D100, 0x1D1FF, "Musical Symbols" }, - { 0x1D200, 0x1D24F, "Ancient Greek Musical Notation" }, - { 0x1D300, 0x1D35F, "Tai Xuan Jing Symbols" }, - { 0x1D360, 0x1D37F, "Counting Rod Numerals" }, - { 0x1D400, 0x1D7FF, "Mathematical Alphanumeric Symbols" }, - { 0x1E800, 0x1E8DF, "Mende Kikakui" }, - { 0x1EE00, 0x1EEFF, "Arabic Mathematical Alphabetic Symbols" }, - { 0x1F000, 0x1F02F, "Mahjong Tiles" }, - { 0x1F030, 0x1F09F, "Domino Tiles" }, - { 0x1F0A0, 0x1F0FF, "Playing Cards" }, - { 0x1F100, 0x1F1FF, "Enclosed Alphanumeric Supplement" }, - { 0x1F200, 0x1F2FF, "Enclosed Ideographic Supplement" }, - { 0x1F300, 0x1F5FF, "Miscellaneous Symbols and Pictographs" }, - { 0x1F600, 0x1F64F, "Emoticons" }, - { 0x1F650, 0x1F67F, "Ornamental Dingbats" }, - { 0x1F680, 0x1F6FF, "Transport and Map Symbols" }, - { 0x1F700, 0x1F77F, "Alchemical Symbols" }, - { 0x1F780, 0x1F7FF, "Geometric Shapes Extended" }, - { 0x1F800, 0x1F8FF, "Supplemental Arrows-C" }, - { 0x20000, 0x2A6DF, "CJK Unified Ideographs Extension B" }, - { 0x2A700, 0x2B73F, "CJK Unified Ideographs Extension C" }, - { 0x2B740, 0x2B81F, "CJK Unified Ideographs Extension D" }, - { 0x2F800, 0x2FA1F, "CJK Compatibility Ideographs Supplement" }, - { 0xE0000, 0xE007F, "Tags" }, - { 0xE0100, 0xE01EF, "Variation Selectors Supplement" }, - { 0xF0000, 0xFFFFF, "Supplementary Private Use Area-A" }, - { 0x100000, 0x10FFFF, "Supplementary Private Use Area-B" } + { 0x0000, 0x007F, _UC_LONG_NAME("block", "Basic Latin") }, + { 0x0080, 0x00FF, _UC_LONG_NAME("block", "Latin-1 Supplement") }, + { 0x0100, 0x017F, _UC_LONG_NAME("block", "Latin Extended-A") }, + { 0x0180, 0x024F, _UC_LONG_NAME("block", "Latin Extended-B") }, + { 0x0250, 0x02AF, _UC_LONG_NAME("block", "IPA Extensions") }, + { 0x02B0, 0x02FF, _UC_LONG_NAME("block", "Spacing Modifier Letters") }, + { 0x0300, 0x036F, _UC_LONG_NAME("block", "Combining Diacritical Marks") }, + { 0x0370, 0x03FF, _UC_LONG_NAME("block", "Greek and Coptic") }, + { 0x0400, 0x04FF, _UC_LONG_NAME("block", "Cyrillic") }, + { 0x0500, 0x052F, _UC_LONG_NAME("block", "Cyrillic Supplement") }, + { 0x0530, 0x058F, _UC_LONG_NAME("block", "Armenian") }, + { 0x0590, 0x05FF, _UC_LONG_NAME("block", "Hebrew") }, + { 0x0600, 0x06FF, _UC_LONG_NAME("block", "Arabic") }, + { 0x0700, 0x074F, _UC_LONG_NAME("block", "Syriac") }, + { 0x0750, 0x077F, _UC_LONG_NAME("block", "Arabic Supplement") }, + { 0x0780, 0x07BF, _UC_LONG_NAME("block", "Thaana") }, + { 0x07C0, 0x07FF, _UC_LONG_NAME("block", "NKo") }, + { 0x0800, 0x083F, _UC_LONG_NAME("block", "Samaritan") }, + { 0x0840, 0x085F, _UC_LONG_NAME("block", "Mandaic") }, + { 0x08A0, 0x08FF, _UC_LONG_NAME("block", "Arabic Extended-A") }, + { 0x0900, 0x097F, _UC_LONG_NAME("block", "Devanagari") }, + { 0x0980, 0x09FF, _UC_LONG_NAME("block", "Bengali") }, + { 0x0A00, 0x0A7F, _UC_LONG_NAME("block", "Gurmukhi") }, + { 0x0A80, 0x0AFF, _UC_LONG_NAME("block", "Gujarati") }, + { 0x0B00, 0x0B7F, _UC_LONG_NAME("block", "Oriya") }, + { 0x0B80, 0x0BFF, _UC_LONG_NAME("block", "Tamil") }, + { 0x0C00, 0x0C7F, _UC_LONG_NAME("block", "Telugu") }, + { 0x0C80, 0x0CFF, _UC_LONG_NAME("block", "Kannada") }, + { 0x0D00, 0x0D7F, _UC_LONG_NAME("block", "Malayalam") }, + { 0x0D80, 0x0DFF, _UC_LONG_NAME("block", "Sinhala") }, + { 0x0E00, 0x0E7F, _UC_LONG_NAME("block", "Thai") }, + { 0x0E80, 0x0EFF, _UC_LONG_NAME("block", "Lao") }, + { 0x0F00, 0x0FFF, _UC_LONG_NAME("block", "Tibetan") }, + { 0x1000, 0x109F, _UC_LONG_NAME("block", "Myanmar") }, + { 0x10A0, 0x10FF, _UC_LONG_NAME("block", "Georgian") }, + { 0x1100, 0x11FF, _UC_LONG_NAME("block", "Hangul Jamo") }, + { 0x1200, 0x137F, _UC_LONG_NAME("block", "Ethiopic") }, + { 0x1380, 0x139F, _UC_LONG_NAME("block", "Ethiopic Supplement") }, + { 0x13A0, 0x13FF, _UC_LONG_NAME("block", "Cherokee") }, + { 0x1400, 0x167F, _UC_LONG_NAME("block", "Unified Canadian Aboriginal Syllabics") }, + { 0x1680, 0x169F, _UC_LONG_NAME("block", "Ogham") }, + { 0x16A0, 0x16FF, _UC_LONG_NAME("block", "Runic") }, + { 0x1700, 0x171F, _UC_LONG_NAME("block", "Tagalog") }, + { 0x1720, 0x173F, _UC_LONG_NAME("block", "Hanunoo") }, + { 0x1740, 0x175F, _UC_LONG_NAME("block", "Buhid") }, + { 0x1760, 0x177F, _UC_LONG_NAME("block", "Tagbanwa") }, + { 0x1780, 0x17FF, _UC_LONG_NAME("block", "Khmer") }, + { 0x1800, 0x18AF, _UC_LONG_NAME("block", "Mongolian") }, + { 0x18B0, 0x18FF, _UC_LONG_NAME("block", "Unified Canadian Aboriginal Syllabics Extended") }, + { 0x1900, 0x194F, _UC_LONG_NAME("block", "Limbu") }, + { 0x1950, 0x197F, _UC_LONG_NAME("block", "Tai Le") }, + { 0x1980, 0x19DF, _UC_LONG_NAME("block", "New Tai Lue") }, + { 0x19E0, 0x19FF, _UC_LONG_NAME("block", "Khmer Symbols") }, + { 0x1A00, 0x1A1F, _UC_LONG_NAME("block", "Buginese") }, + { 0x1A20, 0x1AAF, _UC_LONG_NAME("block", "Tai Tham") }, + { 0x1AB0, 0x1AFF, _UC_LONG_NAME("block", "Combining Diacritical Marks Extended") }, + { 0x1B00, 0x1B7F, _UC_LONG_NAME("block", "Balinese") }, + { 0x1B80, 0x1BBF, _UC_LONG_NAME("block", "Sundanese") }, + { 0x1BC0, 0x1BFF, _UC_LONG_NAME("block", "Batak") }, + { 0x1C00, 0x1C4F, _UC_LONG_NAME("block", "Lepcha") }, + { 0x1C50, 0x1C7F, _UC_LONG_NAME("block", "Ol Chiki") }, + { 0x1CC0, 0x1CCF, _UC_LONG_NAME("block", "Sundanese Supplement") }, + { 0x1CD0, 0x1CFF, _UC_LONG_NAME("block", "Vedic Extensions") }, + { 0x1D00, 0x1D7F, _UC_LONG_NAME("block", "Phonetic Extensions") }, + { 0x1D80, 0x1DBF, _UC_LONG_NAME("block", "Phonetic Extensions Supplement") }, + { 0x1DC0, 0x1DFF, _UC_LONG_NAME("block", "Combining Diacritical Marks Supplement") }, + { 0x1E00, 0x1EFF, _UC_LONG_NAME("block", "Latin Extended Additional") }, + { 0x1F00, 0x1FFF, _UC_LONG_NAME("block", "Greek Extended") }, + { 0x2000, 0x206F, _UC_LONG_NAME("block", "General Punctuation") }, + { 0x2070, 0x209F, _UC_LONG_NAME("block", "Superscripts and Subscripts") }, + { 0x20A0, 0x20CF, _UC_LONG_NAME("block", "Currency Symbols") }, + { 0x20D0, 0x20FF, _UC_LONG_NAME("block", "Combining Diacritical Marks for Symbols") }, + { 0x2100, 0x214F, _UC_LONG_NAME("block", "Letterlike Symbols") }, + { 0x2150, 0x218F, _UC_LONG_NAME("block", "Number Forms") }, + { 0x2190, 0x21FF, _UC_LONG_NAME("block", "Arrows") }, + { 0x2200, 0x22FF, _UC_LONG_NAME("block", "Mathematical Operators") }, + { 0x2300, 0x23FF, _UC_LONG_NAME("block", "Miscellaneous Technical") }, + { 0x2400, 0x243F, _UC_LONG_NAME("block", "Control Pictures") }, + { 0x2440, 0x245F, _UC_LONG_NAME("block", "Optical Character Recognition") }, + { 0x2460, 0x24FF, _UC_LONG_NAME("block", "Enclosed Alphanumerics") }, + { 0x2500, 0x257F, _UC_LONG_NAME("block", "Box Drawing") }, + { 0x2580, 0x259F, _UC_LONG_NAME("block", "Block Elements") }, + { 0x25A0, 0x25FF, _UC_LONG_NAME("block", "Geometric Shapes") }, + { 0x2600, 0x26FF, _UC_LONG_NAME("block", "Miscellaneous Symbols") }, + { 0x2700, 0x27BF, _UC_LONG_NAME("block", "Dingbats") }, + { 0x27C0, 0x27EF, _UC_LONG_NAME("block", "Miscellaneous Mathematical Symbols-A") }, + { 0x27F0, 0x27FF, _UC_LONG_NAME("block", "Supplemental Arrows-A") }, + { 0x2800, 0x28FF, _UC_LONG_NAME("block", "Braille Patterns") }, + { 0x2900, 0x297F, _UC_LONG_NAME("block", "Supplemental Arrows-B") }, + { 0x2980, 0x29FF, _UC_LONG_NAME("block", "Miscellaneous Mathematical Symbols-B") }, + { 0x2A00, 0x2AFF, _UC_LONG_NAME("block", "Supplemental Mathematical Operators") }, + { 0x2B00, 0x2BFF, _UC_LONG_NAME("block", "Miscellaneous Symbols and Arrows") }, + { 0x2C00, 0x2C5F, _UC_LONG_NAME("block", "Glagolitic") }, + { 0x2C60, 0x2C7F, _UC_LONG_NAME("block", "Latin Extended-C") }, + { 0x2C80, 0x2CFF, _UC_LONG_NAME("block", "Coptic") }, + { 0x2D00, 0x2D2F, _UC_LONG_NAME("block", "Georgian Supplement") }, + { 0x2D30, 0x2D7F, _UC_LONG_NAME("block", "Tifinagh") }, + { 0x2D80, 0x2DDF, _UC_LONG_NAME("block", "Ethiopic Extended") }, + { 0x2DE0, 0x2DFF, _UC_LONG_NAME("block", "Cyrillic Extended-A") }, + { 0x2E00, 0x2E7F, _UC_LONG_NAME("block", "Supplemental Punctuation") }, + { 0x2E80, 0x2EFF, _UC_LONG_NAME("block", "CJK Radicals Supplement") }, + { 0x2F00, 0x2FDF, _UC_LONG_NAME("block", "Kangxi Radicals") }, + { 0x2FF0, 0x2FFF, _UC_LONG_NAME("block", "Ideographic Description Characters") }, + { 0x3000, 0x303F, _UC_LONG_NAME("block", "CJK Symbols and Punctuation") }, + { 0x3040, 0x309F, _UC_LONG_NAME("block", "Hiragana") }, + { 0x30A0, 0x30FF, _UC_LONG_NAME("block", "Katakana") }, + { 0x3100, 0x312F, _UC_LONG_NAME("block", "Bopomofo") }, + { 0x3130, 0x318F, _UC_LONG_NAME("block", "Hangul Compatibility Jamo") }, + { 0x3190, 0x319F, _UC_LONG_NAME("block", "Kanbun") }, + { 0x31A0, 0x31BF, _UC_LONG_NAME("block", "Bopomofo Extended") }, + { 0x31C0, 0x31EF, _UC_LONG_NAME("block", "CJK Strokes") }, + { 0x31F0, 0x31FF, _UC_LONG_NAME("block", "Katakana Phonetic Extensions") }, + { 0x3200, 0x32FF, _UC_LONG_NAME("block", "Enclosed CJK Letters and Months") }, + { 0x3300, 0x33FF, _UC_LONG_NAME("block", "CJK Compatibility") }, + { 0x3400, 0x4DBF, _UC_LONG_NAME("block", "CJK Unified Ideographs Extension A") }, + { 0x4DC0, 0x4DFF, _UC_LONG_NAME("block", "Yijing Hexagram Symbols") }, + { 0x4E00, 0x9FFF, _UC_LONG_NAME("block", "CJK Unified Ideographs") }, + { 0xA000, 0xA48F, _UC_LONG_NAME("block", "Yi Syllables") }, + { 0xA490, 0xA4CF, _UC_LONG_NAME("block", "Yi Radicals") }, + { 0xA4D0, 0xA4FF, _UC_LONG_NAME("block", "Lisu") }, + { 0xA500, 0xA63F, _UC_LONG_NAME("block", "Vai") }, + { 0xA640, 0xA69F, _UC_LONG_NAME("block", "Cyrillic Extended-B") }, + { 0xA6A0, 0xA6FF, _UC_LONG_NAME("block", "Bamum") }, + { 0xA700, 0xA71F, _UC_LONG_NAME("block", "Modifier Tone Letters") }, + { 0xA720, 0xA7FF, _UC_LONG_NAME("block", "Latin Extended-D") }, + { 0xA800, 0xA82F, _UC_LONG_NAME("block", "Syloti Nagri") }, + { 0xA830, 0xA83F, _UC_LONG_NAME("block", "Common Indic Number Forms") }, + { 0xA840, 0xA87F, _UC_LONG_NAME("block", "Phags-pa") }, + { 0xA880, 0xA8DF, _UC_LONG_NAME("block", "Saurashtra") }, + { 0xA8E0, 0xA8FF, _UC_LONG_NAME("block", "Devanagari Extended") }, + { 0xA900, 0xA92F, _UC_LONG_NAME("block", "Kayah Li") }, + { 0xA930, 0xA95F, _UC_LONG_NAME("block", "Rejang") }, + { 0xA960, 0xA97F, _UC_LONG_NAME("block", "Hangul Jamo Extended-A") }, + { 0xA980, 0xA9DF, _UC_LONG_NAME("block", "Javanese") }, + { 0xA9E0, 0xA9FF, _UC_LONG_NAME("block", "Myanmar Extended-B") }, + { 0xAA00, 0xAA5F, _UC_LONG_NAME("block", "Cham") }, + { 0xAA60, 0xAA7F, _UC_LONG_NAME("block", "Myanmar Extended-A") }, + { 0xAA80, 0xAADF, _UC_LONG_NAME("block", "Tai Viet") }, + { 0xAAE0, 0xAAFF, _UC_LONG_NAME("block", "Meetei Mayek Extensions") }, + { 0xAB00, 0xAB2F, _UC_LONG_NAME("block", "Ethiopic Extended-A") }, + { 0xAB30, 0xAB6F, _UC_LONG_NAME("block", "Latin Extended-E") }, + { 0xABC0, 0xABFF, _UC_LONG_NAME("block", "Meetei Mayek") }, + { 0xAC00, 0xD7AF, _UC_LONG_NAME("block", "Hangul Syllables") }, + { 0xD7B0, 0xD7FF, _UC_LONG_NAME("block", "Hangul Jamo Extended-B") }, + { 0xD800, 0xDB7F, _UC_LONG_NAME("block", "High Surrogates") }, + { 0xDB80, 0xDBFF, _UC_LONG_NAME("block", "High Private Use Surrogates") }, + { 0xDC00, 0xDFFF, _UC_LONG_NAME("block", "Low Surrogates") }, + { 0xE000, 0xF8FF, _UC_LONG_NAME("block", "Private Use Area") }, + { 0xF900, 0xFAFF, _UC_LONG_NAME("block", "CJK Compatibility Ideographs") }, + { 0xFB00, 0xFB4F, _UC_LONG_NAME("block", "Alphabetic Presentation Forms") }, + { 0xFB50, 0xFDFF, _UC_LONG_NAME("block", "Arabic Presentation Forms-A") }, + { 0xFE00, 0xFE0F, _UC_LONG_NAME("block", "Variation Selectors") }, + { 0xFE10, 0xFE1F, _UC_LONG_NAME("block", "Vertical Forms") }, + { 0xFE20, 0xFE2F, _UC_LONG_NAME("block", "Combining Half Marks") }, + { 0xFE30, 0xFE4F, _UC_LONG_NAME("block", "CJK Compatibility Forms") }, + { 0xFE50, 0xFE6F, _UC_LONG_NAME("block", "Small Form Variants") }, + { 0xFE70, 0xFEFF, _UC_LONG_NAME("block", "Arabic Presentation Forms-B") }, + { 0xFF00, 0xFFEF, _UC_LONG_NAME("block", "Halfwidth and Fullwidth Forms") }, + { 0xFFF0, 0xFFFF, _UC_LONG_NAME("block", "Specials") }, + { 0x10000, 0x1007F, _UC_LONG_NAME("block", "Linear B Syllabary") }, + { 0x10080, 0x100FF, _UC_LONG_NAME("block", "Linear B Ideograms") }, + { 0x10100, 0x1013F, _UC_LONG_NAME("block", "Aegean Numbers") }, + { 0x10140, 0x1018F, _UC_LONG_NAME("block", "Ancient Greek Numbers") }, + { 0x10190, 0x101CF, _UC_LONG_NAME("block", "Ancient Symbols") }, + { 0x101D0, 0x101FF, _UC_LONG_NAME("block", "Phaistos Disc") }, + { 0x10280, 0x1029F, _UC_LONG_NAME("block", "Lycian") }, + { 0x102A0, 0x102DF, _UC_LONG_NAME("block", "Carian") }, + { 0x102E0, 0x102FF, _UC_LONG_NAME("block", "Coptic Epact Numbers") }, + { 0x10300, 0x1032F, _UC_LONG_NAME("block", "Old Italic") }, + { 0x10330, 0x1034F, _UC_LONG_NAME("block", "Gothic") }, + { 0x10350, 0x1037F, _UC_LONG_NAME("block", "Old Permic") }, + { 0x10380, 0x1039F, _UC_LONG_NAME("block", "Ugaritic") }, + { 0x103A0, 0x103DF, _UC_LONG_NAME("block", "Old Persian") }, + { 0x10400, 0x1044F, _UC_LONG_NAME("block", "Deseret") }, + { 0x10450, 0x1047F, _UC_LONG_NAME("block", "Shavian") }, + { 0x10480, 0x104AF, _UC_LONG_NAME("block", "Osmanya") }, + { 0x10500, 0x1052F, _UC_LONG_NAME("block", "Elbasan") }, + { 0x10530, 0x1056F, _UC_LONG_NAME("block", "Caucasian Albanian") }, + { 0x10600, 0x1077F, _UC_LONG_NAME("block", "Linear A") }, + { 0x10800, 0x1083F, _UC_LONG_NAME("block", "Cypriot Syllabary") }, + { 0x10840, 0x1085F, _UC_LONG_NAME("block", "Imperial Aramaic") }, + { 0x10860, 0x1087F, _UC_LONG_NAME("block", "Palmyrene") }, + { 0x10880, 0x108AF, _UC_LONG_NAME("block", "Nabataean") }, + { 0x10900, 0x1091F, _UC_LONG_NAME("block", "Phoenician") }, + { 0x10920, 0x1093F, _UC_LONG_NAME("block", "Lydian") }, + { 0x10980, 0x1099F, _UC_LONG_NAME("block", "Meroitic Hieroglyphs") }, + { 0x109A0, 0x109FF, _UC_LONG_NAME("block", "Meroitic Cursive") }, + { 0x10A00, 0x10A5F, _UC_LONG_NAME("block", "Kharoshthi") }, + { 0x10A60, 0x10A7F, _UC_LONG_NAME("block", "Old South Arabian") }, + { 0x10A80, 0x10A9F, _UC_LONG_NAME("block", "Old North Arabian") }, + { 0x10AC0, 0x10AFF, _UC_LONG_NAME("block", "Manichaean") }, + { 0x10B00, 0x10B3F, _UC_LONG_NAME("block", "Avestan") }, + { 0x10B40, 0x10B5F, _UC_LONG_NAME("block", "Inscriptional Parthian") }, + { 0x10B60, 0x10B7F, _UC_LONG_NAME("block", "Inscriptional Pahlavi") }, + { 0x10B80, 0x10BAF, _UC_LONG_NAME("block", "Psalter Pahlavi") }, + { 0x10C00, 0x10C4F, _UC_LONG_NAME("block", "Old Turkic") }, + { 0x10E60, 0x10E7F, _UC_LONG_NAME("block", "Rumi Numeral Symbols") }, + { 0x11000, 0x1107F, _UC_LONG_NAME("block", "Brahmi") }, + { 0x11080, 0x110CF, _UC_LONG_NAME("block", "Kaithi") }, + { 0x110D0, 0x110FF, _UC_LONG_NAME("block", "Sora Sompeng") }, + { 0x11100, 0x1114F, _UC_LONG_NAME("block", "Chakma") }, + { 0x11150, 0x1117F, _UC_LONG_NAME("block", "Mahajani") }, + { 0x11180, 0x111DF, _UC_LONG_NAME("block", "Sharada") }, + { 0x111E0, 0x111FF, _UC_LONG_NAME("block", "Sinhala Archaic Numbers") }, + { 0x11200, 0x1124F, _UC_LONG_NAME("block", "Khojki") }, + { 0x112B0, 0x112FF, _UC_LONG_NAME("block", "Khudawadi") }, + { 0x11300, 0x1137F, _UC_LONG_NAME("block", "Grantha") }, + { 0x11480, 0x114DF, _UC_LONG_NAME("block", "Tirhuta") }, + { 0x11580, 0x115FF, _UC_LONG_NAME("block", "Siddham") }, + { 0x11600, 0x1165F, _UC_LONG_NAME("block", "Modi") }, + { 0x11680, 0x116CF, _UC_LONG_NAME("block", "Takri") }, + { 0x118A0, 0x118FF, _UC_LONG_NAME("block", "Warang Citi") }, + { 0x11AC0, 0x11AFF, _UC_LONG_NAME("block", "Pau Cin Hau") }, + { 0x12000, 0x123FF, _UC_LONG_NAME("block", "Cuneiform") }, + { 0x12400, 0x1247F, _UC_LONG_NAME("block", "Cuneiform Numbers and Punctuation") }, + { 0x13000, 0x1342F, _UC_LONG_NAME("block", "Egyptian Hieroglyphs") }, + { 0x16800, 0x16A3F, _UC_LONG_NAME("block", "Bamum Supplement") }, + { 0x16A40, 0x16A6F, _UC_LONG_NAME("block", "Mro") }, + { 0x16AD0, 0x16AFF, _UC_LONG_NAME("block", "Bassa Vah") }, + { 0x16B00, 0x16B8F, _UC_LONG_NAME("block", "Pahawh Hmong") }, + { 0x16F00, 0x16F9F, _UC_LONG_NAME("block", "Miao") }, + { 0x1B000, 0x1B0FF, _UC_LONG_NAME("block", "Kana Supplement") }, + { 0x1BC00, 0x1BC9F, _UC_LONG_NAME("block", "Duployan") }, + { 0x1BCA0, 0x1BCAF, _UC_LONG_NAME("block", "Shorthand Format Controls") }, + { 0x1D000, 0x1D0FF, _UC_LONG_NAME("block", "Byzantine Musical Symbols") }, + { 0x1D100, 0x1D1FF, _UC_LONG_NAME("block", "Musical Symbols") }, + { 0x1D200, 0x1D24F, _UC_LONG_NAME("block", "Ancient Greek Musical Notation") }, + { 0x1D300, 0x1D35F, _UC_LONG_NAME("block", "Tai Xuan Jing Symbols") }, + { 0x1D360, 0x1D37F, _UC_LONG_NAME("block", "Counting Rod Numerals") }, + { 0x1D400, 0x1D7FF, _UC_LONG_NAME("block", "Mathematical Alphanumeric Symbols") }, + { 0x1E800, 0x1E8DF, _UC_LONG_NAME("block", "Mende Kikakui") }, + { 0x1EE00, 0x1EEFF, _UC_LONG_NAME("block", "Arabic Mathematical Alphabetic Symbols") }, + { 0x1F000, 0x1F02F, _UC_LONG_NAME("block", "Mahjong Tiles") }, + { 0x1F030, 0x1F09F, _UC_LONG_NAME("block", "Domino Tiles") }, + { 0x1F0A0, 0x1F0FF, _UC_LONG_NAME("block", "Playing Cards") }, + { 0x1F100, 0x1F1FF, _UC_LONG_NAME("block", "Enclosed Alphanumeric Supplement") }, + { 0x1F200, 0x1F2FF, _UC_LONG_NAME("block", "Enclosed Ideographic Supplement") }, + { 0x1F300, 0x1F5FF, _UC_LONG_NAME("block", "Miscellaneous Symbols and Pictographs") }, + { 0x1F600, 0x1F64F, _UC_LONG_NAME("block", "Emoticons") }, + { 0x1F650, 0x1F67F, _UC_LONG_NAME("block", "Ornamental Dingbats") }, + { 0x1F680, 0x1F6FF, _UC_LONG_NAME("block", "Transport and Map Symbols") }, + { 0x1F700, 0x1F77F, _UC_LONG_NAME("block", "Alchemical Symbols") }, + { 0x1F780, 0x1F7FF, _UC_LONG_NAME("block", "Geometric Shapes Extended") }, + { 0x1F800, 0x1F8FF, _UC_LONG_NAME("block", "Supplemental Arrows-C") }, + { 0x20000, 0x2A6DF, _UC_LONG_NAME("block", "CJK Unified Ideographs Extension B") }, + { 0x2A700, 0x2B73F, _UC_LONG_NAME("block", "CJK Unified Ideographs Extension C") }, + { 0x2B740, 0x2B81F, _UC_LONG_NAME("block", "CJK Unified Ideographs Extension D") }, + { 0x2F800, 0x2FA1F, _UC_LONG_NAME("block", "CJK Compatibility Ideographs Supplement") }, + { 0xE0000, 0xE007F, _UC_LONG_NAME("block", "Tags") }, + { 0xE0100, 0xE01EF, _UC_LONG_NAME("block", "Variation Selectors Supplement") }, + { 0xF0000, 0xFFFFF, _UC_LONG_NAME("block", "Supplementary Private Use Area-A") }, + { 0x100000, 0x10FFFF, _UC_LONG_NAME("block", "Supplementary Private Use Area-B") } }; #define blocks_level1_shift 8 #define blocks_level1_threshold 0x30000 diff --git a/lib/unictype/categ_longname.c b/lib/unictype/categ_longname.c index d3a4f8d..59b4196 100644 --- a/lib/unictype/categ_longname.c +++ b/lib/unictype/categ_longname.c @@ -20,38 +20,40 @@ /* Specification. */ #include "unictype.h" +#include "longname.h" + static const char u_category_long_name[30][22] = { - "Uppercase Letter", - "Lowercase Letter", - "Titlecase Letter", - "Modifier Letter", - "Other Letter", - "Nonspacing Mark", - "Spacing Mark", - "Enclosing Mark", - "Decimal Number", - "Letter Number", - "Other Number", - "Connector Punctuation", - "Dash Punctuation", - "Open Punctuation", - "Close Punctuation", - "Initial Punctuation", - "Final Punctuation", - "Other Punctuation", - "Math Symbol", - "Currency Symbol", - "Modifier Symbol", - "Other Symbol", - "Space Separator", - "Line Separator", - "Paragraph Separator", - "Control", - "Format", - "Surrogate", - "Private Use", - "Unassigned" + _UC_LONG_NAME("general category", "Uppercase Letter"), + _UC_LONG_NAME("general category", "Lowercase Letter"), + _UC_LONG_NAME("general category", "Titlecase Letter"), + _UC_LONG_NAME("general category", "Modifier Letter"), + _UC_LONG_NAME("general category", "Other Letter"), + _UC_LONG_NAME("general category", "Nonspacing Mark"), + _UC_LONG_NAME("general category", "Spacing Mark"), + _UC_LONG_NAME("general category", "Enclosing Mark"), + _UC_LONG_NAME("general category", "Decimal Number"), + _UC_LONG_NAME("general category", "Letter Number"), + _UC_LONG_NAME("general category", "Other Number"), + _UC_LONG_NAME("general category", "Connector Punctuation"), + _UC_LONG_NAME("general category", "Dash Punctuation"), + _UC_LONG_NAME("general category", "Open Punctuation"), + _UC_LONG_NAME("general category", "Close Punctuation"), + _UC_LONG_NAME("general category", "Initial Punctuation"), + _UC_LONG_NAME("general category", "Final Punctuation"), + _UC_LONG_NAME("general category", "Other Punctuation"), + _UC_LONG_NAME("general category", "Math Symbol"), + _UC_LONG_NAME("general category", "Currency Symbol"), + _UC_LONG_NAME("general category", "Modifier Symbol"), + _UC_LONG_NAME("general category", "Other Symbol"), + _UC_LONG_NAME("general category", "Space Separator"), + _UC_LONG_NAME("general category", "Line Separator"), + _UC_LONG_NAME("general category", "Paragraph Separator"), + _UC_LONG_NAME("general category", "Control"), + _UC_LONG_NAME("general category", "Format"), + _UC_LONG_NAME("general category", "Surrogate"), + _UC_LONG_NAME("general category", "Private Use"), + _UC_LONG_NAME("general category", "Unassigned") }; const char * diff --git a/lib/unictype/combiningclass_longname.c b/lib/unictype/combiningclass_longname.c index 5178512..daa4b61 100644 --- a/lib/unictype/combiningclass_longname.c +++ b/lib/unictype/combiningclass_longname.c @@ -21,6 +21,7 @@ #include "unictype.h" #include <stdlib.h> +#include "longname.h" static const signed char u_combining_class_index_part1[10] = { @@ -82,26 +83,26 @@ static const signed char u_combining_class_index_part2[241 - 200] = static const char u_combining_class_long_name[20][21] = { - "Not Reordered", - "Overlay", - "Nukta", - "Kana Voicing", - "Virama", - "Attached Below Left", - "Attached Below", - "Attached Above", - "Attached Above Right", - "Below Left", - "Below", - "Below Right", - "Left", - "Right", - "Above Left", - "Above", - "Above Right", - "Double Below", - "Double Above", - "Iota Subscript" + _UC_LONG_NAME("combining class", "Not Reordered"), + _UC_LONG_NAME("combining class", "Overlay"), + _UC_LONG_NAME("combining class", "Nukta"), + _UC_LONG_NAME("combining class", "Kana Voicing"), + _UC_LONG_NAME("combining class", "Virama"), + _UC_LONG_NAME("combining class", "Attached Below Left"), + _UC_LONG_NAME("combining class", "Attached Below"), + _UC_LONG_NAME("combining class", "Attached Above"), + _UC_LONG_NAME("combining class", "Attached Above Right"), + _UC_LONG_NAME("combining class", "Below Left"), + _UC_LONG_NAME("combining class", "Below"), + _UC_LONG_NAME("combining class", "Below Right"), + _UC_LONG_NAME("combining class", "Left"), + _UC_LONG_NAME("combining class", "Right"), + _UC_LONG_NAME("combining class", "Above Left"), + _UC_LONG_NAME("combining class", "Above"), + _UC_LONG_NAME("combining class", "Above Right"), + _UC_LONG_NAME("combining class", "Double Below"), + _UC_LONG_NAME("combining class", "Double Above"), + _UC_LONG_NAME("combining class", "Iota Subscript") }; const char * diff --git a/lib/unictype/joiningtype_longname.c b/lib/unictype/joiningtype_longname.c index b118c29..e6f9156 100644 --- a/lib/unictype/joiningtype_longname.c +++ b/lib/unictype/joiningtype_longname.c @@ -20,14 +20,16 @@ /* Specification. */ #include "unictype.h" +#include "longname.h" + static const char u_joining_type_long_name[6][14] = { - "Non Joining", - "Transparent", - "Join Causing", - "Left Joining", - "Right Joining", - "Dual Joining" + _UC_LONG_NAME("joining type", "Non Joining"), + _UC_LONG_NAME("joining type", "Transparent"), + _UC_LONG_NAME("joining type", "Join Causing"), + _UC_LONG_NAME("joining type", "Left Joining"), + _UC_LONG_NAME("joining type", "Right Joining"), + _UC_LONG_NAME("joining type", "Dual Joining") }; const char * diff --git a/lib/unictype/longname.h b/lib/unictype/longname.h new file mode 100644 index 0000000..7d04e6b --- /dev/null +++ b/lib/unictype/longname.h @@ -0,0 +1,4 @@ +/* A pseudo function call that serves as a marker for the automated + extraction of messages, but does not call gettext(). The run-time + translation is done at a different place in the code. */ +#define _UC_LONG_NAME(Context,String) (String) diff --git a/lib/unictype/scripts.h b/lib/unictype/scripts.h index 6ec883c..0e10f2e 100644 --- a/lib/unictype/scripts.h +++ b/lib/unictype/scripts.h @@ -1,6 +1,7 @@ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ /* Unicode scripts. */ /* Generated automatically by gen-uni-tables.c for Unicode 7.0.0. */ +#include "longname.h" static const uc_interval_t script_common_intervals[] = { { 0x0000, 1, 0 }, { 0x0040, 0, 1 }, @@ -1187,627 +1188,659 @@ static const uc_script_t scripts[125] = { sizeof (script_common_intervals) / sizeof (uc_interval_t), script_common_intervals, - "Common" + _UC_LONG_NAME("script", "Common") }, { sizeof (script_latin_intervals) / sizeof (uc_interval_t), script_latin_intervals, - "Latin" + _UC_LONG_NAME("script", "Latin") }, { sizeof (script_greek_intervals) / sizeof (uc_interval_t), script_greek_intervals, - "Greek" + _UC_LONG_NAME("script", "Greek") }, { sizeof (script_cyrillic_intervals) / sizeof (uc_interval_t), script_cyrillic_intervals, - "Cyrillic" + _UC_LONG_NAME("script", "Cyrillic") }, { sizeof (script_armenian_intervals) / sizeof (uc_interval_t), script_armenian_intervals, - "Armenian" + _UC_LONG_NAME("script", "Armenian") }, { sizeof (script_hebrew_intervals) / sizeof (uc_interval_t), script_hebrew_intervals, - "Hebrew" + _UC_LONG_NAME("script", "Hebrew") }, { sizeof (script_arabic_intervals) / sizeof (uc_interval_t), script_arabic_intervals, - "Arabic" + _UC_LONG_NAME("script", "Arabic") }, { sizeof (script_syriac_intervals) / sizeof (uc_interval_t), script_syriac_intervals, - "Syriac" + _UC_LONG_NAME("script", "Syriac") }, { sizeof (script_thaana_intervals) / sizeof (uc_interval_t), script_thaana_intervals, - "Thaana" + _UC_LONG_NAME("script", "Thaana") }, { sizeof (script_devanagari_intervals) / sizeof (uc_interval_t), script_devanagari_intervals, - "Devanagari" + _UC_LONG_NAME("script", "Devanagari") }, { sizeof (script_bengali_intervals) / sizeof (uc_interval_t), script_bengali_intervals, - "Bengali" + _UC_LONG_NAME("script", "Bengali") }, { sizeof (script_gurmukhi_intervals) / sizeof (uc_interval_t), script_gurmukhi_intervals, - "Gurmukhi" + _UC_LONG_NAME("script", "Gurmukhi") }, { sizeof (script_gujarati_intervals) / sizeof (uc_interval_t), script_gujarati_intervals, - "Gujarati" + _UC_LONG_NAME("script", "Gujarati") }, { sizeof (script_oriya_intervals) / sizeof (uc_interval_t), script_oriya_intervals, - "Oriya" + _UC_LONG_NAME("script", "Oriya") }, { sizeof (script_tamil_intervals) / sizeof (uc_interval_t), script_tamil_intervals, - "Tamil" + _UC_LONG_NAME("script", "Tamil") }, { sizeof (script_telugu_intervals) / sizeof (uc_interval_t), script_telugu_intervals, - "Telugu" + _UC_LONG_NAME("script", "Telugu") }, { sizeof (script_kannada_intervals) / sizeof (uc_interval_t), script_kannada_intervals, - "Kannada" + _UC_LONG_NAME("script", "Kannada") }, { sizeof (script_malayalam_intervals) / sizeof (uc_interval_t), script_malayalam_intervals, - "Malayalam" + _UC_LONG_NAME("script", "Malayalam") }, { sizeof (script_sinhala_intervals) / sizeof (uc_interval_t), script_sinhala_intervals, - "Sinhala" + _UC_LONG_NAME("script", "Sinhala") }, { sizeof (script_thai_intervals) / sizeof (uc_interval_t), script_thai_intervals, - "Thai" + _UC_LONG_NAME("script", "Thai") }, { sizeof (script_lao_intervals) / sizeof (uc_interval_t), script_lao_intervals, - "Lao" + _UC_LONG_NAME("script", "Lao") }, { sizeof (script_tibetan_intervals) / sizeof (uc_interval_t), script_tibetan_intervals, - "Tibetan" + _UC_LONG_NAME("script", "Tibetan") }, { sizeof (script_myanmar_intervals) / sizeof (uc_interval_t), script_myanmar_intervals, - "Myanmar" + _UC_LONG_NAME("script", "Myanmar") }, { sizeof (script_georgian_intervals) / sizeof (uc_interval_t), script_georgian_intervals, - "Georgian" + _UC_LONG_NAME("script", "Georgian") }, { sizeof (script_hangul_intervals) / sizeof (uc_interval_t), script_hangul_intervals, - "Hangul" + _UC_LONG_NAME("script", "Hangul") }, { sizeof (script_ethiopic_intervals) / sizeof (uc_interval_t), script_ethiopic_intervals, - "Ethiopic" + _UC_LONG_NAME("script", "Ethiopic") }, { sizeof (script_cherokee_intervals) / sizeof (uc_interval_t), script_cherokee_intervals, - "Cherokee" + _UC_LONG_NAME("script", "Cherokee") }, { sizeof (script_canadian_aboriginal_intervals) / sizeof (uc_interval_t), script_canadian_aboriginal_intervals, - "Canadian_Aboriginal" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Canadian_Aboriginal") }, { sizeof (script_ogham_intervals) / sizeof (uc_interval_t), script_ogham_intervals, - "Ogham" + _UC_LONG_NAME("script", "Ogham") }, { sizeof (script_runic_intervals) / sizeof (uc_interval_t), script_runic_intervals, - "Runic" + _UC_LONG_NAME("script", "Runic") }, { sizeof (script_khmer_intervals) / sizeof (uc_interval_t), script_khmer_intervals, - "Khmer" + _UC_LONG_NAME("script", "Khmer") }, { sizeof (script_mongolian_intervals) / sizeof (uc_interval_t), script_mongolian_intervals, - "Mongolian" + _UC_LONG_NAME("script", "Mongolian") }, { sizeof (script_hiragana_intervals) / sizeof (uc_interval_t), script_hiragana_intervals, - "Hiragana" + _UC_LONG_NAME("script", "Hiragana") }, { sizeof (script_katakana_intervals) / sizeof (uc_interval_t), script_katakana_intervals, - "Katakana" + _UC_LONG_NAME("script", "Katakana") }, { sizeof (script_bopomofo_intervals) / sizeof (uc_interval_t), script_bopomofo_intervals, - "Bopomofo" + _UC_LONG_NAME("script", "Bopomofo") }, { sizeof (script_han_intervals) / sizeof (uc_interval_t), script_han_intervals, - "Han" + _UC_LONG_NAME("script", "Han") }, { sizeof (script_yi_intervals) / sizeof (uc_interval_t), script_yi_intervals, - "Yi" + _UC_LONG_NAME("script", "Yi") }, { sizeof (script_old_italic_intervals) / sizeof (uc_interval_t), script_old_italic_intervals, - "Old_Italic" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Old_Italic") }, { sizeof (script_gothic_intervals) / sizeof (uc_interval_t), script_gothic_intervals, - "Gothic" + _UC_LONG_NAME("script", "Gothic") }, { sizeof (script_deseret_intervals) / sizeof (uc_interval_t), script_deseret_intervals, - "Deseret" + _UC_LONG_NAME("script", "Deseret") }, { sizeof (script_inherited_intervals) / sizeof (uc_interval_t), script_inherited_intervals, - "Inherited" + _UC_LONG_NAME("script", "Inherited") }, { sizeof (script_tagalog_intervals) / sizeof (uc_interval_t), script_tagalog_intervals, - "Tagalog" + _UC_LONG_NAME("script", "Tagalog") }, { sizeof (script_hanunoo_intervals) / sizeof (uc_interval_t), script_hanunoo_intervals, - "Hanunoo" + _UC_LONG_NAME("script", "Hanunoo") }, { sizeof (script_buhid_intervals) / sizeof (uc_interval_t), script_buhid_intervals, - "Buhid" + _UC_LONG_NAME("script", "Buhid") }, { sizeof (script_tagbanwa_intervals) / sizeof (uc_interval_t), script_tagbanwa_intervals, - "Tagbanwa" + _UC_LONG_NAME("script", "Tagbanwa") }, { sizeof (script_limbu_intervals) / sizeof (uc_interval_t), script_limbu_intervals, - "Limbu" + _UC_LONG_NAME("script", "Limbu") }, { sizeof (script_tai_le_intervals) / sizeof (uc_interval_t), script_tai_le_intervals, - "Tai_Le" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Tai_Le") }, { sizeof (script_linear_b_intervals) / sizeof (uc_interval_t), script_linear_b_intervals, - "Linear_B" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Linear_B") }, { sizeof (script_ugaritic_intervals) / sizeof (uc_interval_t), script_ugaritic_intervals, - "Ugaritic" + _UC_LONG_NAME("script", "Ugaritic") }, { sizeof (script_shavian_intervals) / sizeof (uc_interval_t), script_shavian_intervals, - "Shavian" + _UC_LONG_NAME("script", "Shavian") }, { sizeof (script_osmanya_intervals) / sizeof (uc_interval_t), script_osmanya_intervals, - "Osmanya" + _UC_LONG_NAME("script", "Osmanya") }, { sizeof (script_cypriot_intervals) / sizeof (uc_interval_t), script_cypriot_intervals, - "Cypriot" + _UC_LONG_NAME("script", "Cypriot") }, { sizeof (script_braille_intervals) / sizeof (uc_interval_t), script_braille_intervals, - "Braille" + _UC_LONG_NAME("script", "Braille") }, { sizeof (script_buginese_intervals) / sizeof (uc_interval_t), script_buginese_intervals, - "Buginese" + _UC_LONG_NAME("script", "Buginese") }, { sizeof (script_coptic_intervals) / sizeof (uc_interval_t), script_coptic_intervals, - "Coptic" + _UC_LONG_NAME("script", "Coptic") }, { sizeof (script_new_tai_lue_intervals) / sizeof (uc_interval_t), script_new_tai_lue_intervals, - "New_Tai_Lue" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "New_Tai_Lue") }, { sizeof (script_glagolitic_intervals) / sizeof (uc_interval_t), script_glagolitic_intervals, - "Glagolitic" + _UC_LONG_NAME("script", "Glagolitic") }, { sizeof (script_tifinagh_intervals) / sizeof (uc_interval_t), script_tifinagh_intervals, - "Tifinagh" + _UC_LONG_NAME("script", "Tifinagh") }, { sizeof (script_syloti_nagri_intervals) / sizeof (uc_interval_t), script_syloti_nagri_intervals, - "Syloti_Nagri" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Syloti_Nagri") }, { sizeof (script_old_persian_intervals) / sizeof (uc_interval_t), script_old_persian_intervals, - "Old_Persian" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Old_Persian") }, { sizeof (script_kharoshthi_intervals) / sizeof (uc_interval_t), script_kharoshthi_intervals, - "Kharoshthi" + _UC_LONG_NAME("script", "Kharoshthi") }, { sizeof (script_balinese_intervals) / sizeof (uc_interval_t), script_balinese_intervals, - "Balinese" + _UC_LONG_NAME("script", "Balinese") }, { sizeof (script_cuneiform_intervals) / sizeof (uc_interval_t), script_cuneiform_intervals, - "Cuneiform" + _UC_LONG_NAME("script", "Cuneiform") }, { sizeof (script_phoenician_intervals) / sizeof (uc_interval_t), script_phoenician_intervals, - "Phoenician" + _UC_LONG_NAME("script", "Phoenician") }, { sizeof (script_phags_pa_intervals) / sizeof (uc_interval_t), script_phags_pa_intervals, - "Phags_Pa" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Phags_Pa") }, { sizeof (script_nko_intervals) / sizeof (uc_interval_t), script_nko_intervals, - "Nko" + _UC_LONG_NAME("script", "Nko") }, { sizeof (script_sundanese_intervals) / sizeof (uc_interval_t), script_sundanese_intervals, - "Sundanese" + _UC_LONG_NAME("script", "Sundanese") }, { sizeof (script_lepcha_intervals) / sizeof (uc_interval_t), script_lepcha_intervals, - "Lepcha" + _UC_LONG_NAME("script", "Lepcha") }, { sizeof (script_ol_chiki_intervals) / sizeof (uc_interval_t), script_ol_chiki_intervals, - "Ol_Chiki" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Ol_Chiki") }, { sizeof (script_vai_intervals) / sizeof (uc_interval_t), script_vai_intervals, - "Vai" + _UC_LONG_NAME("script", "Vai") }, { sizeof (script_saurashtra_intervals) / sizeof (uc_interval_t), script_saurashtra_intervals, - "Saurashtra" + _UC_LONG_NAME("script", "Saurashtra") }, { sizeof (script_kayah_li_intervals) / sizeof (uc_interval_t), script_kayah_li_intervals, - "Kayah_Li" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Kayah_Li") }, { sizeof (script_rejang_intervals) / sizeof (uc_interval_t), script_rejang_intervals, - "Rejang" + _UC_LONG_NAME("script", "Rejang") }, { sizeof (script_lycian_intervals) / sizeof (uc_interval_t), script_lycian_intervals, - "Lycian" + _UC_LONG_NAME("script", "Lycian") }, { sizeof (script_carian_intervals) / sizeof (uc_interval_t), script_carian_intervals, - "Carian" + _UC_LONG_NAME("script", "Carian") }, { sizeof (script_lydian_intervals) / sizeof (uc_interval_t), script_lydian_intervals, - "Lydian" + _UC_LONG_NAME("script", "Lydian") }, { sizeof (script_cham_intervals) / sizeof (uc_interval_t), script_cham_intervals, - "Cham" + _UC_LONG_NAME("script", "Cham") }, { sizeof (script_tai_tham_intervals) / sizeof (uc_interval_t), script_tai_tham_intervals, - "Tai_Tham" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Tai_Tham") }, { sizeof (script_tai_viet_intervals) / sizeof (uc_interval_t), script_tai_viet_intervals, - "Tai_Viet" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Tai_Viet") }, { sizeof (script_avestan_intervals) / sizeof (uc_interval_t), script_avestan_intervals, - "Avestan" + _UC_LONG_NAME("script", "Avestan") }, { sizeof (script_egyptian_hieroglyphs_intervals) / sizeof (uc_interval_t), script_egyptian_hieroglyphs_intervals, - "Egyptian_Hieroglyphs" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Egyptian_Hieroglyphs") }, { sizeof (script_samaritan_intervals) / sizeof (uc_interval_t), script_samaritan_intervals, - "Samaritan" + _UC_LONG_NAME("script", "Samaritan") }, { sizeof (script_lisu_intervals) / sizeof (uc_interval_t), script_lisu_intervals, - "Lisu" + _UC_LONG_NAME("script", "Lisu") }, { sizeof (script_bamum_intervals) / sizeof (uc_interval_t), script_bamum_intervals, - "Bamum" + _UC_LONG_NAME("script", "Bamum") }, { sizeof (script_javanese_intervals) / sizeof (uc_interval_t), script_javanese_intervals, - "Javanese" + _UC_LONG_NAME("script", "Javanese") }, { sizeof (script_meetei_mayek_intervals) / sizeof (uc_interval_t), script_meetei_mayek_intervals, - "Meetei_Mayek" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Meetei_Mayek") }, { sizeof (script_imperial_aramaic_intervals) / sizeof (uc_interval_t), script_imperial_aramaic_intervals, - "Imperial_Aramaic" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Imperial_Aramaic") }, { sizeof (script_old_south_arabian_intervals) / sizeof (uc_interval_t), script_old_south_arabian_intervals, - "Old_South_Arabian" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Old_South_Arabian") }, { sizeof (script_inscriptional_parthian_intervals) / sizeof (uc_interval_t), script_inscriptional_parthian_intervals, - "Inscriptional_Parthian" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Inscriptional_Parthian") }, { sizeof (script_inscriptional_pahlavi_intervals) / sizeof (uc_interval_t), script_inscriptional_pahlavi_intervals, - "Inscriptional_Pahlavi" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Inscriptional_Pahlavi") }, { sizeof (script_old_turkic_intervals) / sizeof (uc_interval_t), script_old_turkic_intervals, - "Old_Turkic" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Old_Turkic") }, { sizeof (script_kaithi_intervals) / sizeof (uc_interval_t), script_kaithi_intervals, - "Kaithi" + _UC_LONG_NAME("script", "Kaithi") }, { sizeof (script_batak_intervals) / sizeof (uc_interval_t), script_batak_intervals, - "Batak" + _UC_LONG_NAME("script", "Batak") }, { sizeof (script_brahmi_intervals) / sizeof (uc_interval_t), script_brahmi_intervals, - "Brahmi" + _UC_LONG_NAME("script", "Brahmi") }, { sizeof (script_mandaic_intervals) / sizeof (uc_interval_t), script_mandaic_intervals, - "Mandaic" + _UC_LONG_NAME("script", "Mandaic") }, { sizeof (script_chakma_intervals) / sizeof (uc_interval_t), script_chakma_intervals, - "Chakma" + _UC_LONG_NAME("script", "Chakma") }, { sizeof (script_meroitic_cursive_intervals) / sizeof (uc_interval_t), script_meroitic_cursive_intervals, - "Meroitic_Cursive" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Meroitic_Cursive") }, { sizeof (script_meroitic_hieroglyphs_intervals) / sizeof (uc_interval_t), script_meroitic_hieroglyphs_intervals, - "Meroitic_Hieroglyphs" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Meroitic_Hieroglyphs") }, { sizeof (script_miao_intervals) / sizeof (uc_interval_t), script_miao_intervals, - "Miao" + _UC_LONG_NAME("script", "Miao") }, { sizeof (script_sharada_intervals) / sizeof (uc_interval_t), script_sharada_intervals, - "Sharada" + _UC_LONG_NAME("script", "Sharada") }, { sizeof (script_sora_sompeng_intervals) / sizeof (uc_interval_t), script_sora_sompeng_intervals, - "Sora_Sompeng" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Sora_Sompeng") }, { sizeof (script_takri_intervals) / sizeof (uc_interval_t), script_takri_intervals, - "Takri" + _UC_LONG_NAME("script", "Takri") }, { sizeof (script_caucasian_albanian_intervals) / sizeof (uc_interval_t), script_caucasian_albanian_intervals, - "Caucasian_Albanian" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Caucasian_Albanian") }, { sizeof (script_bassa_vah_intervals) / sizeof (uc_interval_t), script_bassa_vah_intervals, - "Bassa_Vah" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Bassa_Vah") }, { sizeof (script_duployan_intervals) / sizeof (uc_interval_t), script_duployan_intervals, - "Duployan" + _UC_LONG_NAME("script", "Duployan") }, { sizeof (script_elbasan_intervals) / sizeof (uc_interval_t), script_elbasan_intervals, - "Elbasan" + _UC_LONG_NAME("script", "Elbasan") }, { sizeof (script_grantha_intervals) / sizeof (uc_interval_t), script_grantha_intervals, - "Grantha" + _UC_LONG_NAME("script", "Grantha") }, { sizeof (script_pahawh_hmong_intervals) / sizeof (uc_interval_t), script_pahawh_hmong_intervals, - "Pahawh_Hmong" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Pahawh_Hmong") }, { sizeof (script_khojki_intervals) / sizeof (uc_interval_t), script_khojki_intervals, - "Khojki" + _UC_LONG_NAME("script", "Khojki") }, { sizeof (script_linear_a_intervals) / sizeof (uc_interval_t), script_linear_a_intervals, - "Linear_A" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Linear_A") }, { sizeof (script_mahajani_intervals) / sizeof (uc_interval_t), script_mahajani_intervals, - "Mahajani" + _UC_LONG_NAME("script", "Mahajani") }, { sizeof (script_manichaean_intervals) / sizeof (uc_interval_t), script_manichaean_intervals, - "Manichaean" + _UC_LONG_NAME("script", "Manichaean") }, { sizeof (script_mende_kikakui_intervals) / sizeof (uc_interval_t), script_mende_kikakui_intervals, - "Mende_Kikakui" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Mende_Kikakui") }, { sizeof (script_modi_intervals) / sizeof (uc_interval_t), script_modi_intervals, - "Modi" + _UC_LONG_NAME("script", "Modi") }, { sizeof (script_mro_intervals) / sizeof (uc_interval_t), script_mro_intervals, - "Mro" + _UC_LONG_NAME("script", "Mro") }, { sizeof (script_old_north_arabian_intervals) / sizeof (uc_interval_t), script_old_north_arabian_intervals, - "Old_North_Arabian" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Old_North_Arabian") }, { sizeof (script_nabataean_intervals) / sizeof (uc_interval_t), script_nabataean_intervals, - "Nabataean" + _UC_LONG_NAME("script", "Nabataean") }, { sizeof (script_palmyrene_intervals) / sizeof (uc_interval_t), script_palmyrene_intervals, - "Palmyrene" + _UC_LONG_NAME("script", "Palmyrene") }, { sizeof (script_pau_cin_hau_intervals) / sizeof (uc_interval_t), script_pau_cin_hau_intervals, - "Pau_Cin_Hau" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Pau_Cin_Hau") }, { sizeof (script_old_permic_intervals) / sizeof (uc_interval_t), script_old_permic_intervals, - "Old_Permic" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Old_Permic") }, { sizeof (script_psalter_pahlavi_intervals) / sizeof (uc_interval_t), script_psalter_pahlavi_intervals, - "Psalter_Pahlavi" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Psalter_Pahlavi") }, { sizeof (script_siddham_intervals) / sizeof (uc_interval_t), script_siddham_intervals, - "Siddham" + _UC_LONG_NAME("script", "Siddham") }, { sizeof (script_khudawadi_intervals) / sizeof (uc_interval_t), script_khudawadi_intervals, - "Khudawadi" + _UC_LONG_NAME("script", "Khudawadi") }, { sizeof (script_tirhuta_intervals) / sizeof (uc_interval_t), script_tirhuta_intervals, - "Tirhuta" + _UC_LONG_NAME("script", "Tirhuta") }, { sizeof (script_warang_citi_intervals) / sizeof (uc_interval_t), script_warang_citi_intervals, - "Warang_Citi" + /* TRANSLATORS: Replace '_' in msgid with a ' ' */ + _UC_LONG_NAME("script", "Warang_Citi") } }; #define script_header_0 16 diff --git a/modules/unictype/bidiclass-longname b/modules/unictype/bidiclass-longname index 6085120..7a28179 100644 --- a/modules/unictype/bidiclass-longname +++ b/modules/unictype/bidiclass-longname @@ -3,6 +3,7 @@ Name of Unicode character bidi class. Files: lib/unictype/bidi_longname.c +lib/unictype/longname.h Depends-on: unictype/base diff --git a/modules/unictype/category-longname b/modules/unictype/category-longname index a8c4b60..f5aa581 100644 --- a/modules/unictype/category-longname +++ b/modules/unictype/category-longname @@ -3,6 +3,7 @@ Name of Unicode character category. Files: lib/unictype/categ_longname.c +lib/unictype/longname.h Depends-on: unictype/base diff --git a/modules/unictype/combining-class-longname b/modules/unictype/combining-class-longname index bc1c98e..6892cca 100644 --- a/modules/unictype/combining-class-longname +++ b/modules/unictype/combining-class-longname @@ -3,6 +3,7 @@ Name of Unicode character canonical combining class. Files: lib/unictype/combiningclass_longname.c +lib/unictype/longname.h Depends-on: unictype/base diff --git a/modules/unictype/joiningtype-longname b/modules/unictype/joiningtype-longname index 3cf6659..69d3c97 100644 --- a/modules/unictype/joiningtype-longname +++ b/modules/unictype/joiningtype-longname @@ -3,6 +3,7 @@ Name of Unicode character Arabic joining type. Files: lib/unictype/joiningtype_longname.c +lib/unictype/longname.h Depends-on: unictype/base -- 2.1.0