[w3m-dev 04213] update Unicode charcters' width

[email protected] (Hironori SAKAMOTO) Thu, 25 Jan 2007 01:07:41 +0900
Newsgroups gmane.comp.web.w3m.devel
Message-ID <[email protected]>
$B:dK\$G$9!#(B

w3m $BO"MmD"$G$NOCBj$G$9$,!"(BUnicode $B$G$NJ8;zI}$r(B
$B:G?7$N(B EastAsianWidth.txt $B$K9g$o$;$?$b$N$G$9!#(B
-----------------------------------
$B:dK\(B $B9@B'(B <[email protected]>

--- ucs.c.orig	Sat Nov  6 22:14:59 2004
+++ ucs.c	Thu Jan 25 00:46:51 2007
@@ -522,7 +522,8 @@
 	return (wc_map_range_search((wc_uint16)ucs,
 		ucs_wide_map, N_ucs_wide_map) != NULL);
     else
-	return ((ucs & ~0xFFFF) == WC_C_UCS4_PLANE2);
+	return ((ucs & ~0xFFFF) == WC_C_UCS4_PLANE2 ||
+		(ucs & ~0xFFFF) == WC_C_UCS4_PLANE3);
 }
 
 wc_bool
--- ucs.h.orig	Tue Sep 23 06:02:23 2003
+++ ucs.h	Thu Jan 25 00:45:04 2007
@@ -22,6 +22,7 @@
 #define WC_C_CANCEL_TAG		0xE007F
 #define WC_C_UCS4_PLANE1	0x10000
 #define WC_C_UCS4_PLANE2	0x20000
+#define WC_C_UCS4_PLANE3	0x30000
 
 #define wc_ucs_tag_to_ucs(c)		((c) & WC_C_UNICODE_MASK)
 #define wc_ucs_tag_to_tag(c)		((c) >> 24)
--- map/ucs_wide.map.orig	Tue Sep 23 06:02:28 2003
+++ map/ucs_wide.map	Thu Jan 25 00:44:37 2007
@@ -1,14 +1,15 @@
 
-#define N_ucs_wide_map 10
+#define N_ucs_wide_map 11
 
 static wc_map ucs_wide_map[ N_ucs_wide_map ] = {
   { 0x1100, 0x115F },
-  { 0x2E80, 0x3009 },
-  { 0x300C, 0x3019 },
-  { 0x301C, 0x303E },
-  { 0x3040, 0xA4CF },
+  { 0x2329, 0x232A },
+  { 0x2E80, 0x303E },
+  { 0x3040, 0x4DBF },
+  { 0x4E00, 0xA4CF },
   { 0xAC00, 0xD7A3 },
   { 0xF900, 0xFAFF },
+  { 0xFE10, 0xFE19 },
   { 0xFE30, 0xFE6F },
   { 0xFF00, 0xFF5F },
   { 0xFFE0, 0xFFE6 },