1 |
|
2 | # derived from
|
3 | # http,//www.unicode.org/Public/UNIDATA/Blocks.txt
|
4 | # Unicode v 6.2.0
|
5 | # Date, 2012-05-14, 22,42,00 GMT [KW, LI]
|
6 |
|
7 | ###
|
8 |
|
9 | This module lists all known named ranges in all configured character sets (currently Unicode and the Jizura
|
10 | Character Set JZRCS).
|
11 |
|
12 | For both ease of notation on the one hand and ease of use on the other hand, the data structure is somewhat
|
13 | transformed before export.
|
14 |
|
15 | The notation below obeays the following rules:
|
16 |
|
17 | * in `mode.exports[ 'names-and-ranges-by-csg' ]`—aliased as `names_and_ranges_by_csg`, there is one list
|
18 | of ranges registered under the Character Set Sigil (CSG) for each configured character set (that's `u`
|
19 | for Unicode and `jzr` for the JZRCS).
|
20 |
|
21 | * each list of ranges has, in the notation below, one sublist containing, in this order, the respective
|
22 | range name, the corresponding range sigil (RSG) (or `null` when no RSG has been assigned), and then the
|
23 | first and the last CID (numerical codepoint) of the respective range.
|
24 |
|
25 | * All ranges must be non-overlapping, though there may be gaps between ranges.
|
26 |
|
27 | * All ranges must be arranged in ascending order, sorted by their first CIDs.
|
28 |
|
29 | Before export, the range entries are transformed from lists to objects; each entry object will get four
|
30 | keys: `range-name`, `rsg`, `first-cid`, `last-cid`. In this way, overhead in the below notation is reduced,
|
31 | and readability in the application enhanced.
|
32 |
|
33 | Notice that while strictly redundant, each range sigil is, by convention, required to start with the CSG and
|
34 | a hyphen, as in `u-latn-b` standing for Unicode range `Latin Extended-B`.
|
35 |
|
36 |
|
37 | ###
|
38 |
|
39 |
|
40 | ############################################################################################################
|
41 | @[ 'names-and-ranges-by-csg' ] = names_and_ranges_by_csg = {}
|
42 |
|
43 |
|
44 | #===========================================================================================================
|
45 | # UNICODE
|
46 | #-----------------------------------------------------------------------------------------------------------
|
47 | # CSG
|
48 | @[ 'names-and-ranges-by-csg' ][ 'u' ] = [
|
49 | #.........................................................................................................
|
50 | # range-name rsg first-cid last-cid
|
51 | #.........................................................................................................
|
52 | [ 'Basic Latin', 'u-latn', 0x0, 0x7f, ]
|
53 | [ 'Latin-1 Supplement', 'u-latn-1', 0x80, 0xff, ]
|
54 | [ 'Latin Extended-A', 'u-latn-a', 0x100, 0x17f, ]
|
55 | [ 'Latin Extended-B', 'u-latn-b', 0x180, 0x24f, ]
|
56 | [ 'IPA Extensions', 'u-ipa-x', 0x250, 0x2af, ]
|
57 | [ 'Spacing Modifier Letters', 'u-sml', 0x2b0, 0x2ff, ]
|
58 | [ 'Combining Diacritical Marks', 'u-cdm', 0x300, 0x36f, ]
|
59 | [ 'Greek and Coptic', 'u-grek', 0x370, 0x3ff, ]
|
60 | [ 'Cyrillic', 'u-cyrl', 0x400, 0x4ff, ]
|
61 | [ 'Cyrillic Supplement', 'u-cyrl-s', 0x500, 0x52f, ]
|
62 | [ 'Armenian', null, 0x530, 0x58f, ]
|
63 | [ 'Hebrew', null, 0x590, 0x5ff, ]
|
64 | [ 'Arabic', 'u-arab', 0x600, 0x6ff, ]
|
65 | [ 'Syriac', null, 0x700, 0x74f, ]
|
66 | [ 'Arabic Supplement', 'u-arab-s', 0x750, 0x77f, ]
|
67 | [ 'Thaana', null, 0x780, 0x7bf, ]
|
68 | [ 'NKo', null, 0x7c0, 0x7ff, ]
|
69 | [ 'Samaritan', null, 0x800, 0x83f, ]
|
70 | [ 'Mandaic', null, 0x840, 0x85f, ]
|
71 | [ 'Arabic Extended-A', null, 0x8a0, 0x8ff, ]
|
72 | [ 'Devanagari', null, 0x900, 0x97f, ]
|
73 | [ 'Bengali', null, 0x980, 0x9ff, ]
|
74 | [ 'Gurmukhi', null, 0xa00, 0xa7f, ]
|
75 | [ 'Gujarati', null, 0xa80, 0xaff, ]
|
76 | [ 'Oriya', null, 0xb00, 0xb7f, ]
|
77 | [ 'Tamil', null, 0xb80, 0xbff, ]
|
78 | [ 'Telugu', null, 0xc00, 0xc7f, ]
|
79 | [ 'Kannada', null, 0xc80, 0xcff, ]
|
80 | [ 'Malayalam', null, 0xd00, 0xd7f, ]
|
81 | [ 'Sinhala', null, 0xd80, 0xdff, ]
|
82 | [ 'Thai', null, 0xe00, 0xe7f, ]
|
83 | [ 'Lao', null, 0xe80, 0xeff, ]
|
84 | [ 'Tibetan', null, 0xf00, 0xfff, ]
|
85 | [ 'Myanmar', null, 0x1000, 0x109f, ]
|
86 | [ 'Georgian', null, 0x10a0, 0x10ff, ]
|
87 | [ 'Hangul Jamo', 'u-hang-jm', 0x1100, 0x11ff, ]
|
88 | [ 'Ethiopic', null, 0x1200, 0x137f, ]
|
89 | [ 'Ethiopic Supplement', null, 0x1380, 0x139f, ]
|
90 | [ 'Cherokee', null, 0x13a0, 0x13ff, ]
|
91 | [ 'Unified Canadian Aboriginal Syllabics', null, 0x1400, 0x167f, ]
|
92 | [ 'Ogham', null, 0x1680, 0x169f, ]
|
93 | [ 'Runic', null, 0x16a0, 0x16ff, ]
|
94 | [ 'Tagalog', null, 0x1700, 0x171f, ]
|
95 | [ 'Hanunoo', null, 0x1720, 0x173f, ]
|
96 | [ 'Buhid', null, 0x1740, 0x175f, ]
|
97 | [ 'Tagbanwa', null, 0x1760, 0x177f, ]
|
98 | [ 'Khmer', null, 0x1780, 0x17ff, ]
|
99 | [ 'Mongolian', null, 0x1800, 0x18af, ]
|
100 | [ 'Unified Canadian Aboriginal Syllabics Extended', null, 0x18b0, 0x18ff, ]
|
101 | [ 'Limbu', null, 0x1900, 0x194f, ]
|
102 | [ 'Tai Le', null, 0x1950, 0x197f, ]
|
103 | [ 'New Tai Lue', null, 0x1980, 0x19df, ]
|
104 | [ 'Khmer Symbols', null, 0x19e0, 0x19ff, ]
|
105 | [ 'Buginese', null, 0x1a00, 0x1a1f, ]
|
106 | [ 'Tai Tham', null, 0x1a20, 0x1aaf, ]
|
107 | [ 'Balinese', null, 0x1b00, 0x1b7f, ]
|
108 | [ 'Sundanese', null, 0x1b80, 0x1bbf, ]
|
109 | [ 'Batak', null, 0x1bc0, 0x1bff, ]
|
110 | [ 'Lepcha', null, 0x1c00, 0x1c4f, ]
|
111 | [ 'Ol Chiki', 'u-olck', 0x1c50, 0x1c7f, ]
|
112 | [ 'Sundanese Supplement', null, 0x1cc0, 0x1ccf, ]
|
113 | [ 'Vedic Extensions', null, 0x1cd0, 0x1cff, ]
|
114 | [ 'Phonetic Extensions', 'u-phon-x', 0x1d00, 0x1d7f, ]
|
115 | [ 'Phonetic Extensions Supplement', 'u-phon-xs', 0x1d80, 0x1dbf, ]
|
116 | [ 'Combining Diacritical Marks Supplement', 'u-cdm-s', 0x1dc0, 0x1dff, ]
|
117 | [ 'Latin Extended Additional', 'u-latn-xa', 0x1e00, 0x1eff, ]
|
118 | [ 'Greek Extended', 'u-grek-x', 0x1f00, 0x1fff, ]
|
119 | [ 'General Punctuation', 'u-punct', 0x2000, 0x206f, ]
|
120 | [ 'Superscripts and Subscripts', 'u-supsub', 0x2070, 0x209f, ]
|
121 | [ 'Currency Symbols', 'u-currn', 0x20a0, 0x20cf, ]
|
122 | [ 'Combining Diacritical Marks for Symbols', 'u-cdm-sy', 0x20d0, 0x20ff, ]
|
123 | [ 'Letterlike Symbols', 'u-llsym', 0x2100, 0x214f, ]
|
124 | [ 'Number Forms', 'u-num', 0x2150, 0x218f, ]
|
125 | [ 'Arrows', 'u-arrow', 0x2190, 0x21ff, ]
|
126 | [ 'Mathematical Operators', null, 0x2200, 0x22ff, ]
|
127 | [ 'Miscellaneous Technical', null, 0x2300, 0x23ff, ]
|
128 | [ 'Control Pictures', 'u-ctrlp', 0x2400, 0x243f, ]
|
129 | [ 'Optical Character Recognition', 'u-ocr', 0x2440, 0x245f, ]
|
130 | [ 'Enclosed Alphanumerics', 'u-enalp', 0x2460, 0x24ff, ]
|
131 | [ 'Box Drawing', 'u-boxdr', 0x2500, 0x257f, ]
|
132 | [ 'Block Elements', 'u-block', 0x2580, 0x259f, ]
|
133 | [ 'Geometric Shapes', 'u-geoms', 0x25a0, 0x25ff, ]
|
134 | [ 'Miscellaneous Symbols', 'u-sym', 0x2600, 0x26ff, ]
|
135 | [ 'Dingbats', 'u-dingb', 0x2700, 0x27bf, ]
|
136 | [ 'Miscellaneous Mathematical Symbols-A', 'u-maths-a', 0x27c0, 0x27ef, ]
|
137 | [ 'Supplemental Arrows-A', 'u-arrow-a', 0x27f0, 0x27ff, ]
|
138 | [ 'Braille Patterns', 'u-brail', 0x2800, 0x28ff, ]
|
139 | [ 'Supplemental Arrows-B', 'u-arrow-b', 0x2900, 0x297f, ]
|
140 | [ 'Miscellaneous Mathematical Symbols-B', null, 0x2980, 0x29ff, ]
|
141 | [ 'Supplemental Mathematical Operators', null, 0x2a00, 0x2aff, ]
|
142 | [ 'Miscellaneous Symbols and Arrows', null, 0x2b00, 0x2bff, ]
|
143 | [ 'Glagolitic', null, 0x2c00, 0x2c5f, ]
|
144 | [ 'Latin Extended-C', 'u-latn-c', 0x2c60, 0x2c7f, ]
|
145 | [ 'Coptic', null, 0x2c80, 0x2cff, ]
|
146 | [ 'Georgian Supplement', null, 0x2d00, 0x2d2f, ]
|
147 | [ 'Tifinagh', null, 0x2d30, 0x2d7f, ]
|
148 | [ 'Ethiopic Extended', null, 0x2d80, 0x2ddf, ]
|
149 | [ 'Cyrillic Extended-A', 'u-cyrl-a', 0x2de0, 0x2dff, ]
|
150 | [ 'Supplemental Punctuation', 'u-punct-s', 0x2e00, 0x2e7f, ]
|
151 | [ 'CJK Radicals Supplement', 'u-cjk-rad2', 0x2e80, 0x2eff, ]
|
152 | [ 'Kangxi Radicals', 'u-cjk-rad1', 0x2f00, 0x2fdf, ]
|
153 | [ 'Ideographic Description Characters', 'u-cjk-idc', 0x2ff0, 0x2fff, ]
|
154 | [ 'CJK Symbols and Punctuation', 'u-cjk-sym', 0x3000, 0x303f, ]
|
155 | [ 'Hiragana', 'u-cjk-hira', 0x3040, 0x309f, ]
|
156 | [ 'Katakana', 'u-cjk-kata', 0x30a0, 0x30ff, ]
|
157 | [ 'Bopomofo', 'u-bopo', 0x3100, 0x312f, ]
|
158 | [ 'Hangul Compatibility Jamo', 'u-hang-comp-jm', 0x3130, 0x318f, ]
|
159 | [ 'Kanbun', 'u-cjk-kanbun', 0x3190, 0x319f, ]
|
160 | [ 'Bopomofo Extended', 'u-bopo-x', 0x31a0, 0x31bf, ]
|
161 | [ 'CJK Strokes', 'u-cjk-strk', 0x31c0, 0x31ef, ]
|
162 | [ 'Katakana Phonetic Extensions', 'u-cjk-kata-x', 0x31f0, 0x31ff, ]
|
163 | [ 'Enclosed CJK Letters and Months', 'u-cjk-enclett', 0x3200, 0x32ff, ]
|
164 | [ 'CJK Compatibility', 'u-cjk-cmp', 0x3300, 0x33ff, ]
|
165 | [ 'CJK Unified Ideographs Extension A', 'u-cjk-xa', 0x3400, 0x4dbf, ]
|
166 | [ 'Yijing Hexagram Symbols', 'u-yijng', 0x4dc0, 0x4dff, ]
|
167 | [ 'CJK Unified Ideographs', 'u-cjk', 0x4e00, 0x9fff, ]
|
168 | [ 'Yi Syllables', null, 0xa000, 0xa48f, ]
|
169 | [ 'Yi Radicals', null, 0xa490, 0xa4cf, ]
|
170 | [ 'Lisu', null, 0xa4d0, 0xa4ff, ]
|
171 | [ 'Vai', null, 0xa500, 0xa63f, ]
|
172 | [ 'Cyrillic Extended-B', 'u-cyrl-b', 0xa640, 0xa69f, ]
|
173 | [ 'Bamum', null, 0xa6a0, 0xa6ff, ]
|
174 | [ 'Modifier Tone Letters', null, 0xa700, 0xa71f, ]
|
175 | [ 'Latin Extended-D', 'u-latn-d', 0xa720, 0xa7ff, ]
|
176 | [ 'Syloti Nagri', null, 0xa800, 0xa82f, ]
|
177 | [ 'Common Indic Number Forms', null, 0xa830, 0xa83f, ]
|
178 | [ 'Phags-pa', null, 0xa840, 0xa87f, ]
|
179 | [ 'Saurashtra', null, 0xa880, 0xa8df, ]
|
180 | [ 'Devanagari Extended', null, 0xa8e0, 0xa8ff, ]
|
181 | [ 'Kayah Li', null, 0xa900, 0xa92f, ]
|
182 | [ 'Rejang', null, 0xa930, 0xa95f, ]
|
183 | [ 'Hangul Jamo Extended-A', null, 0xa960, 0xa97f, ]
|
184 | [ 'Javanese', null, 0xa980, 0xa9df, ]
|
185 | [ 'Cham', null, 0xaa00, 0xaa5f, ]
|
186 | [ 'Myanmar Extended-A', null, 0xaa60, 0xaa7f, ]
|
187 | [ 'Tai Viet', null, 0xaa80, 0xaadf, ]
|
188 | [ 'Meetei Mayek Extensions', null, 0xaae0, 0xaaff, ]
|
189 | [ 'Ethiopic Extended-A', null, 0xab00, 0xab2f, ]
|
190 | [ 'Meetei Mayek', null, 0xabc0, 0xabff, ]
|
191 | [ 'Hangul Syllables', 'u-hang-syl', 0xac00, 0xd7af, ]
|
192 | [ 'Hangul Jamo Extended-B', null, 0xd7b0, 0xd7ff, ]
|
193 | [ 'High Surrogates', null, 0xd800, 0xdb7f, ]
|
194 | [ 'High Private Use Surrogates', null, 0xdb80, 0xdbff, ]
|
195 | [ 'Low Surrogates', null, 0xdc00, 0xdfff, ]
|
196 | [ 'Private Use Area', 'u-pua', 0xe000, 0xf8ff, ]
|
197 | [ 'CJK Compatibility Ideographs', 'u-cjk-cmpi1', 0xf900, 0xfaff, ]
|
198 | [ 'Alphabetic Presentation Forms', 'u-abc-pf', 0xfb00, 0xfb4f, ]
|
199 | [ 'Arabic Presentation Forms-A', 'u-arab-pf-a', 0xfb50, 0xfdff, ]
|
200 | [ 'Variation Selectors', 'u-varsl', 0xfe00, 0xfe0f, ]
|
201 | [ 'Vertical Forms', 'u-vertf', 0xfe10, 0xfe1f, ]
|
202 | [ 'Combining Half Marks', null, 0xfe20, 0xfe2f, ]
|
203 | [ 'CJK Compatibility Forms', 'u-cjk-cmpf', 0xfe30, 0xfe4f, ]
|
204 | [ 'Small Form Variants', 'u-small', 0xfe50, 0xfe6f, ]
|
205 | [ 'Arabic Presentation Forms-B', 'u-arab-pf-b', 0xfe70, 0xfeff, ]
|
206 | [ 'Halfwidth and Fullwidth Forms', 'u-halfull', 0xff00, 0xffef, ]
|
207 | [ 'Specials', 'u-special', 0xfff0, 0xffff, ]
|
208 | [ 'Linear B Syllabary', null, 0x10000, 0x1007f, ]
|
209 | [ 'Linear B Ideograms', null, 0x10080, 0x100ff, ]
|
210 | [ 'Aegean Numbers', null, 0x10100, 0x1013f, ]
|
211 | [ 'Ancient Greek Numbers', null, 0x10140, 0x1018f, ]
|
212 | [ 'Ancient Symbols', null, 0x10190, 0x101cf, ]
|
213 | [ 'Phaistos Disc', null, 0x101d0, 0x101ff, ]
|
214 | [ 'Lycian', null, 0x10280, 0x1029f, ]
|
215 | [ 'Carian', null, 0x102a0, 0x102df, ]
|
216 | [ 'Old Italic', null, 0x10300, 0x1032f, ]
|
217 | [ 'Gothic', null, 0x10330, 0x1034f, ]
|
218 | [ 'Ugaritic', null, 0x10380, 0x1039f, ]
|
219 | [ 'Old Persian', null, 0x103a0, 0x103df, ]
|
220 | [ 'Deseret', null, 0x10400, 0x1044f, ]
|
221 | [ 'Shavian', null, 0x10450, 0x1047f, ]
|
222 | [ 'Osmanya', null, 0x10480, 0x104af, ]
|
223 | [ 'Cypriot Syllabary', null, 0x10800, 0x1083f, ]
|
224 | [ 'Imperial Aramaic', null, 0x10840, 0x1085f, ]
|
225 | [ 'Phoenician', null, 0x10900, 0x1091f, ]
|
226 | [ 'Lydian', null, 0x10920, 0x1093f, ]
|
227 | [ 'Meroitic Hieroglyphs', null, 0x10980, 0x1099f, ]
|
228 | [ 'Meroitic Cursive', null, 0x109a0, 0x109ff, ]
|
229 | [ 'Kharoshthi', null, 0x10a00, 0x10a5f, ]
|
230 | [ 'Old South Arabian', null, 0x10a60, 0x10a7f, ]
|
231 | [ 'Avestan', null, 0x10b00, 0x10b3f, ]
|
232 | [ 'Inscriptional Parthian', null, 0x10b40, 0x10b5f, ]
|
233 | [ 'Inscriptional Pahlavi', null, 0x10b60, 0x10b7f, ]
|
234 | [ 'Old Turkic', null, 0x10c00, 0x10c4f, ]
|
235 | [ 'Rumi Numeral Symbols', null, 0x10e60, 0x10e7f, ]
|
236 | [ 'Brahmi', null, 0x11000, 0x1107f, ]
|
237 | [ 'Kaithi', null, 0x11080, 0x110cf, ]
|
238 | [ 'Sora Sompeng', null, 0x110d0, 0x110ff, ]
|
239 | [ 'Chakma', null, 0x11100, 0x1114f, ]
|
240 | [ 'Sharada', null, 0x11180, 0x111df, ]
|
241 | [ 'Takri', null, 0x11680, 0x116cf, ]
|
242 | [ 'Cuneiform', null, 0x12000, 0x123ff, ]
|
243 | [ 'Cuneiform Numbers and Punctuation', null, 0x12400, 0x1247f, ]
|
244 | [ 'Egyptian Hieroglyphs', null, 0x13000, 0x1342f, ]
|
245 | [ 'Bamum Supplement', null, 0x16800, 0x16a3f, ]
|
246 | [ 'Miao', null, 0x16f00, 0x16f9f, ]
|
247 | [ 'Kana Supplement', null, 0x1b000, 0x1b0ff, ]
|
248 | [ 'Byzantine Musical Symbols', null, 0x1d000, 0x1d0ff, ]
|
249 | [ 'Musical Symbols', null, 0x1d100, 0x1d1ff, ]
|
250 | [ 'Ancient Greek Musical Notation', null, 0x1d200, 0x1d24f, ]
|
251 | [ 'Tai Xuan Jing Symbols', 'u-txj-sym', 0x1d300, 0x1d35f, ]
|
252 | [ 'Counting Rod Numerals', null, 0x1d360, 0x1d37f, ]
|
253 | [ 'Mathematical Alphanumeric Symbols', null, 0x1d400, 0x1d7ff, ]
|
254 | [ 'Arabic Mathematical Alphabetic Symbols', null, 0x1ee00, 0x1eeff, ]
|
255 | [ 'Mahjong Tiles', null, 0x1f000, 0x1f02f, ]
|
256 | [ 'Domino Tiles', null, 0x1f030, 0x1f09f, ]
|
257 | [ 'Playing Cards', null, 0x1f0a0, 0x1f0ff, ]
|
258 | [ 'Enclosed Alphanumeric Supplement', null, 0x1f100, 0x1f1ff, ]
|
259 | [ 'Enclosed Ideographic Supplement', 'u-cjk-encsupp', 0x1f200, 0x1f2ff, ]
|
260 | [ 'Miscellaneous Symbols And Pictographs', null, 0x1f300, 0x1f5ff, ]
|
261 | [ 'Emoticons', null, 0x1f600, 0x1f64f, ]
|
262 | [ 'Transport And Map Symbols', null, 0x1f680, 0x1f6ff, ]
|
263 | [ 'Alchemical Symbols', null, 0x1f700, 0x1f77f, ]
|
264 | [ 'CJK Unified Ideographs Extension B', 'u-cjk-xb', 0x20000, 0x2a6df, ]
|
265 | [ 'CJK Unified Ideographs Extension C', 'u-cjk-xc', 0x2a700, 0x2b73f, ]
|
266 | [ 'CJK Unified Ideographs Extension D', 'u-cjk-xd', 0x2b740, 0x2b81f, ]
|
267 | [ 'CJK Compatibility Ideographs Supplement', 'u-cjk-cmpi2', 0x2f800, 0x2fa1f, ]
|
268 | [ 'Tags', null, 0xe0000, 0xe007f, ]
|
269 | [ 'Variation Selectors Supplement', 'u-varsl-s', 0xe0100, 0xe01ef, ]
|
270 | [ 'Supplementary Private Use Area-A', null, 0xf0000, 0xfffff, ]
|
271 | [ 'Supplementary Private Use Area-B', null, 0x100000, 0x10ffff, ]
|
272 | #.........................................................................................................
|
273 | ]
|
274 |
|
275 |
|
276 | #===========================================================================================================
|
277 | # JIZURA
|
278 | #-----------------------------------------------------------------------------------------------------------
|
279 | # CSG
|
280 | @[ 'names-and-ranges-by-csg' ][ 'jzr' ] = [
|
281 | #.........................................................................................................
|
282 | # range-name rsg first-cid last-cid
|
283 | #.........................................................................................................
|
284 | [ 'Jizura Character Components', 'jzr-fig', 0xe000, 0xf8ff, ]
|
285 | #.........................................................................................................
|
286 | ]
|
287 |
|
288 |
|
289 | #===========================================================================================================
|
290 | # OTHERS
|
291 | #-----------------------------------------------------------------------------------------------------------
|
292 | ### wholesale addition of the character sets i'm encountering in my work: ###
|
293 | @[ 'names-and-ranges-by-csg' ][ 'aj' ] = [ [ '(Glyphs)', 'aj', 0x0000, 0xffffffff, ] ]
|
294 | @[ 'names-and-ranges-by-csg' ][ 'b' ] = [ [ '(Glyphs)', 'b', 0x0000, 0xffffffff, ] ]
|
295 | @[ 'names-and-ranges-by-csg' ][ 'c1' ] = [ [ '(Glyphs)', 'c1', 0x0000, 0xffffffff, ] ]
|
296 | @[ 'names-and-ranges-by-csg' ][ 'c2' ] = [ [ '(Glyphs)', 'c2', 0x0000, 0xffffffff, ] ]
|
297 | @[ 'names-and-ranges-by-csg' ][ 'c3' ] = [ [ '(Glyphs)', 'c3', 0x0000, 0xffffffff, ] ]
|
298 | @[ 'names-and-ranges-by-csg' ][ 'c4' ] = [ [ '(Glyphs)', 'c4', 0x0000, 0xffffffff, ] ]
|
299 | @[ 'names-and-ranges-by-csg' ][ 'c5' ] = [ [ '(Glyphs)', 'c5', 0x0000, 0xffffffff, ] ]
|
300 | @[ 'names-and-ranges-by-csg' ][ 'c6' ] = [ [ '(Glyphs)', 'c6', 0x0000, 0xffffffff, ] ]
|
301 | @[ 'names-and-ranges-by-csg' ][ 'c7' ] = [ [ '(Glyphs)', 'c7', 0x0000, 0xffffffff, ] ]
|
302 | @[ 'names-and-ranges-by-csg' ][ 'cb' ] = [ [ '(Glyphs)', 'cb', 0x0000, 0xffffffff, ] ]
|
303 | @[ 'names-and-ranges-by-csg' ][ 'cdp' ] = [ [ '(Glyphs)', 'cdp', 0x0000, 0xffffffff, ] ]
|
304 | @[ 'names-and-ranges-by-csg' ][ 'gt' ] = [ [ '(Glyphs)', 'gt', 0x0000, 0xffffffff, ] ]
|
305 | @[ 'names-and-ranges-by-csg' ][ 'gtk' ] = [ [ '(Glyphs)', 'gtk', 0x0000, 0xffffffff, ] ]
|
306 | @[ 'names-and-ranges-by-csg' ][ 'hdib' ] = [ [ '(Glyphs)', 'hdib', 0x0000, 0xffffffff, ] ]
|
307 | @[ 'names-and-ranges-by-csg' ][ 'hzk1' ] = [ [ '(Glyphs)', 'hzk1', 0x0000, 0xffffffff, ] ]
|
308 | @[ 'names-and-ranges-by-csg' ][ 'hzk2' ] = [ [ '(Glyphs)', 'hzk2', 0x0000, 0xffffffff, ] ]
|
309 | @[ 'names-and-ranges-by-csg' ][ 'hzk4' ] = [ [ '(Glyphs)', 'hzk4', 0x0000, 0xffffffff, ] ]
|
310 | @[ 'names-and-ranges-by-csg' ][ 'hzk6' ] = [ [ '(Glyphs)', 'hzk6', 0x0000, 0xffffffff, ] ]
|
311 | @[ 'names-and-ranges-by-csg' ][ 'hzk7' ] = [ [ '(Glyphs)', 'hzk7', 0x0000, 0xffffffff, ] ]
|
312 | @[ 'names-and-ranges-by-csg' ][ 'hzk8' ] = [ [ '(Glyphs)', 'hzk8', 0x0000, 0xffffffff, ] ]
|
313 | @[ 'names-and-ranges-by-csg' ][ 'hzk9' ] = [ [ '(Glyphs)', 'hzk9', 0x0000, 0xffffffff, ] ]
|
314 | @[ 'names-and-ranges-by-csg' ][ 'j83' ] = [ [ '(Glyphs)', 'j83', 0x0000, 0xffffffff, ] ]
|
315 | @[ 'names-and-ranges-by-csg' ][ 'j90' ] = [ [ '(Glyphs)', 'j90', 0x0000, 0xffffffff, ] ]
|
316 | @[ 'names-and-ranges-by-csg' ][ 'jsp' ] = [ [ '(Glyphs)', 'jsp', 0x0000, 0xffffffff, ] ]
|
317 | @[ 'names-and-ranges-by-csg' ][ 'jx1' ] = [ [ '(Glyphs)', 'jx1', 0x0000, 0xffffffff, ] ]
|
318 | @[ 'names-and-ranges-by-csg' ][ 'jx2' ] = [ [ '(Glyphs)', 'jx2', 0x0000, 0xffffffff, ] ]
|
319 | @[ 'names-and-ranges-by-csg' ][ 'jx3' ] = [ [ '(Glyphs)', 'jx3', 0x0000, 0xffffffff, ] ]
|
320 | @[ 'names-and-ranges-by-csg' ][ 'k0' ] = [ [ '(Glyphs)', 'k0', 0x0000, 0xffffffff, ] ]
|
321 | @[ 'names-and-ranges-by-csg' ][ 'mcs' ] = [ [ '(Glyphs)', 'mcs', 0x0000, 0xffffffff, ] ]
|
322 | @[ 'names-and-ranges-by-csg' ][ 'morohashi' ] = [ [ '(Glyphs)', 'morohashi', 0x0000, 0xffffffff, ] ]
|
323 | @[ 'names-and-ranges-by-csg' ][ 'hzk12' ] = [ [ '(Glyphs)', 'hzk12', 0x0000, 0xffffffff, ] ]
|
324 | @[ 'names-and-ranges-by-csg' ][ 'hzk3' ] = [ [ '(Glyphs)', 'hzk3', 0x0000, 0xffffffff, ] ]
|
325 | @[ 'names-and-ranges-by-csg' ][ 'hzk3' ] = [ [ '(Glyphs)', 'hzk3', 0x0000, 0xffffffff, ] ]
|
326 | @[ 'names-and-ranges-by-csg' ][ 'jc3' ] = [ [ '(Glyphs)', 'jc3', 0x0000, 0xffffffff, ] ]
|
327 | @[ 'names-and-ranges-by-csg' ][ 'rui6' ] = [ [ '(Glyphs)', 'rui6', 0x0000, 0xffffffff, ] ]
|
328 |
|
329 | ############################################################################################################
|
330 | # do =>
|
331 | # for name_and_range in @names_and_ranges
|
332 | # range_name = name_and_range[ 0 ]
|
333 | # rsg = rsg_by_range_name[ range_name ]
|
334 | # continue unless rsg?
|
335 | # name_and_range[ 0 ] = [ range_name, rsg, ]
|
336 |
|
337 | # do =>
|
338 | # for name_and_range in @[ 'names-and-ranges-by-csg' ][ 'u' ]
|
339 | # range_name = name_and_range[ 0 ]
|
340 | # rsg = rsg_by_range_name[ range_name ]
|
341 | # rsg ?= null
|
342 | # name_and_range.splice 1, 0, rsg
|
343 | # # name_and_range[ 0 ] = [ range_name, rsg, ]
|
344 | # TRM = require 'coffeenode-trm'
|
345 | # log = TRM.log.bind TRM
|
346 | # rpr = TRM.rpr.bind TRM
|
347 | # echo = TRM.echo.bind TRM
|
348 | # Table = require 'easy-table'
|
349 | # table = new Table
|
350 | # pad = ( text ) -> return ( ( new Array 9 - text.length ).join ' ' ) + text
|
351 | # for name_and_range in @[ 'names-and-ranges-by-csg' ][ 'u' ]
|
352 | # [ range_name
|
353 | # rsg
|
354 | # first_cid
|
355 | # last_cid ] = name_and_range
|
356 | # first_cid_hex = pad '0x' + first_cid.toString 16
|
357 | # last_cid_hex = pad '0x' + last_cid.toString 16
|
358 | # table.cell 'left', '['
|
359 | # table.cell 'range_name', (rpr range_name )+ ','
|
360 | # table.cell 'rsg', (rpr rsg) + ','
|
361 | # table.cell 'first_cid', first_cid_hex + ','
|
362 | # table.cell 'last_cid', last_cid_hex + ','
|
363 | # table.cell 'right', ']'
|
364 | # table.newRow()
|
365 | # echo table.toString()
|
366 |
|
367 |
|
368 | # TRM = require 'coffeenode-trm'
|
369 |
|
370 |
|
371 | ############################################################################################################
|
372 | do =>
|
373 | @[ 'ranges-by-rsg' ] = ranges_by_rsg = {}
|
374 | for csg, names_and_ranges of @[ 'names-and-ranges-by-csg' ]
|
375 | # TRM.log csg
|
376 | for name_and_range, idx in names_and_ranges
|
377 | [ range_name
|
378 | rsg
|
379 | first_cid
|
380 | last_cid ] = name_and_range
|
381 | ranges_by_rsg[ rsg ] = [ first_cid, last_cid, ]
|
382 | names_and_ranges[ idx ] =
|
383 | 'range-name': range_name
|
384 | 'rsg': rsg
|
385 | 'first-cid': first_cid
|
386 | 'last-cid': last_cid
|
387 |
|
388 |
|
389 | # TRM.log @names_and_ranges_by_csg
|
390 |
|
391 |
|
392 |
|
393 |
|