+2003-04-12 Kenichi Handa <handa@m17n.org>
+
+ * charsets/Makefile (MAPS): Change gb18030.map to gb18030-2.map
+ and gb18030-4.map.
+ (gb18030.map): Delete this target.
+ (gb18030-2.map, gb18030-4.map): New targets.
+
+ * charsets/gb18030.awk: Deleted.
+
+ * charsets/gb18030-2.awk, charsets/gb18030-4.awk: Make them work
+ for the map file included int glibc.
+
+ * charsets/gb18030-2.map, charsets/gb18030-4.map: Remade by them.
+
2003-04-12 Kenichi Handa <handa@m17n.org>
* HELLO: Change "Hindi" to more common characters.
+++ /dev/null
-BEGIN {
- tohex["A"] = 10;
- tohex["B"] = 11;
- tohex["C"] = 12;
- tohex["D"] = 13;
- tohex["E"] = 14;
- tohex["F"] = 15;
- tohex["a"] = 10;
- tohex["b"] = 11;
- tohex["c"] = 12;
- tohex["d"] = 13;
- tohex["e"] = 14;
- tohex["f"] = 15;
-}
-
-function decode_hex(str) {
- n = 0;
- len = length(str);
- for (i = 1; i <= len; i++)
- {
- c = substr (str, i, 1);
- if (c >= "0" && c <= "9")
- n = n * 16 + (c - "0");
- else
- n = n * 16 + tohex[c];
- }
- return n;
-}
-
-function gb_to_index(b0,b1,b2,b3) {
- return ((((b0 - 129) * 10 + (b1 - 48)) * 126 + (b2 - 129)) * 10 + b3 - 48);
-}
-
-function index_to_gb(idx) {
- b3 = (idx % 10) + 48;
- idx /= 10;
- b2 = (idx % 126) + 129;
- idx /= 126;
- b1 = (idx % 10) + 48;
- b0 = (idx / 10) + 129;
- return sprintf("%02X%02X%02X%02X", b0, b1, b2, b3);
-}
-
-function decode_gb(str) {
- b0 = decode_hex(substr(str, 3, 2));
- b1 = decode_hex(substr(str, 7, 2));
- b2 = decode_hex(substr(str, 11, 2));
- b3 = decode_hex(substr(str, 15, 2));
- return gb_to_index(b0, b1, b2, b3);
-}
-
-function printline(from, to) {
- fromgb = index_to_gb(from);
- fromuni = gbtable[from];
- if (from == to)
- printf ("0x%s U+%04X\n", fromgb, fromuni);
- else
- printf ("0x%s-0x%s U+%04X-U+%04X\n", fromgb, index_to_gb(to),
- fromuni, fromuni + (to - from));
-}
-
-/^<U[0-9A-F][0-9A-F][0-9A-F][0-9A-F]>/ {
- unicode = decode_hex(substr($1, 3, 4));
- if ($2 ~ /\\x8[1-4]\\x3[0-9]\\x[8-9A-F][0-9A-F]\\x3[0-9]/)
- unitable[unicode] = decode_gb($2);
- else
- unitable[unicode] = -1;
-}
-
-END {
- lastgb = 0;
- surrogate_min = decode_hex("D800");
- surrogate_max = decode_hex("DFFF");
- lastgb = unitable[128];
- gbtable[lastgb] = 128;
- for (i = 129; i < 65536; i++)
- {
- if (unitable[i] == 0 && (i < surrogate_min || i > surrogate_max))
- {
- lastgb++;
- gbtable[lastgb] = i;
- unitable[i] = lastgb;
- }
- else if (unitable[i] > 0)
- {
- lastgb = unitable[i];
- gbtable[lastgb] = i;
- }
- }
-
- fromgb = lastgb = unitable[128];
- for (i = 129; i < 65536; i++)
- {
- if (unitable[i] > 0)
- {
- if (lastgb + 1 == unitable[i])
- {
- lastgb++;
- }
- else
- {
- if (lastgb >= 0)
- printline(fromgb, lastgb);
- fromgb = lastgb = unitable[i];
- }
- }
- else # i.e. (unitable[i] < 0)
- {
- if (lastgb >= 0)
- printline(fromgb, lastgb);
- lastgb = -1;
- }
- }
- printline(fromgb, unitable[65535]);
-}
+2003-05-20 Kenichi Handa <handa@m17n.org>
+
+ * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not
+ FONTSET_NAME.
+ (fontset_add): Fix for the case that TO is less than TO1.
+ (Ffontset_info): Don't use fallback fontset on checking the
+ default fontset.
+ (dump_fontset): New function for debugging.
+
+ * coding.c (Fdefine_coding_system_internal): Fix for the case that
+ coding_type is Qcharset.
+
2003-05-07 Kenichi Handa <handa@m17n.org>
* chartab.c (map_sub_char_table): New argument DEFAULT_VAL.