Character.st
branchjv
changeset 19127 940613fe6659
parent 18806 2fb07499b4f2
parent 19120 7b3e8d741e4c
child 19227 5e949760a4e8
--- a/Character.st	Tue Jan 26 14:56:53 2016 +0000
+++ b/Character.st	Thu Jan 28 14:59:07 2016 +0000
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
 "
  COPYRIGHT (c) 1988 by Claus Gittinger
 	      All Rights Reserved
@@ -648,7 +646,6 @@
       or:[ (asciivalue == 247 ) ]]]]]
 ! !
 
-
 !Character methodsFor:'accessing'!
 
 codePoint
@@ -1499,7 +1496,7 @@
     ^ s contents
 
     "
-	'ä' utf8Encoded
+	'ä' utf8Encoded
     "
 ! !
 
@@ -2565,9 +2562,9 @@
 
     "
      $e asNonDiacritical
-     $é asNonDiacritical
-     $ä asNonDiacritical
-     $Ã¥ asNonDiacritical
+     $é asNonDiacritical
+     $ä asNonDiacritical
+     $å asNonDiacritical
     "
 !
 
@@ -2597,8 +2594,8 @@
 isNationalLetter
     "return true, if the receiver is a letter.
      CAVEAT:
-	for now, this method is only correct for unicode characters up to u+1d6ff (Unicode3.1).
-	(which is more than mozilla does, btw. ;-)"
+        for now, this method is only correct for unicode characters up to u+1d6ff (Unicode3.1).
+        (which is more than mozilla does, btw. ;-)"
 
 %{  /* NOCONTEXT */
 
@@ -2607,470 +2604,470 @@
     /* because used so often, this is open coded, instead of table driven */
     val = __intVal(__INST(asciivalue));
     switch (val >> 8) {
-	case 0x00:
-	    if ((unsigned INT)(val - 'A') <= ('Z' - 'A')) {
-		RETURN ( true );
-	    }
-	    if ((unsigned INT)(val - 'a') <= ('z' - 'a')) {
-		RETURN ( true );
-	    }
-	    if (val == 0xAA) { RETURN (true); }
-	    if (val == 0xB5) { RETURN (true); }
-	    if (val == 0xBA) { RETURN (true); }
-	    if (val < 0xC0) { RETURN (false); }
-	    if (val == 0xD7) { RETURN (false); }
-	    if (val == 0xF7) { RETURN (false); }
-	    RETURN (true);
-
-	case 0x01:
-	    RETURN (true);
-
-	case 0x02:
+        case 0x00:
+            if ((unsigned INT)(val - 'A') <= ('Z' - 'A')) {
+                RETURN ( true );
+            }
+            if ((unsigned INT)(val - 'a') <= ('z' - 'a')) {
+                RETURN ( true );
+            }
+            if (val == 0xAA) { RETURN (true); }
+            if (val == 0xB5) { RETURN (true); }
+            if (val == 0xBA) { RETURN (true); }
+            if (val < 0xC0) { RETURN (false); }
+            if (val == 0xD7) { RETURN (false); }
+            if (val == 0xF7) { RETURN (false); }
+            RETURN (true);
+
+        case 0x01:
+            RETURN (true);
+
+        case 0x02:
 #ifdef UNICODE_3_2
-	    if (val <= 0x2B8) { RETURN (true); }
-	    if (val == 0x2B9) { RETURN (false); }
-	    if (val == 0x2BA) { RETURN (false); }
+            if (val <= 0x2B8) { RETURN (true); }
+            if (val == 0x2B9) { RETURN (false); }
+            if (val == 0x2BA) { RETURN (false); }
 #else
-	    if (val <= 0x2BA) { RETURN (true); }
+            if (val <= 0x2BA) { RETURN (true); }
 #endif
-	    if (val <= 0x2C1) { RETURN (true); }
+            if (val <= 0x2C1) { RETURN (true); }
 #ifndef UNICODE_3_2
-	    if (val <= 0x2C5) { RETURN (false); }
-	    if (val <= 0x2CF) { RETURN (true); }
+            if (val <= 0x2C5) { RETURN (false); }
+            if (val <= 0x2CF) { RETURN (true); }
 #endif
-	    if (val == 0x2D0) { RETURN (true); }
-	    if (val == 0x2D1) { RETURN (true); }
-	    if (val <= 0x2DF) { RETURN (false); }
-	    if (val <= 0x2E4) { RETURN (true); }
-	    if (val == 0x2EE) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x03:
-	    if (val == 0x37A) { RETURN (true); }
-	    if (val <= 0x385) { RETURN (false); }
-	    if (val == 0x387) { RETURN (false); }
+            if (val == 0x2D0) { RETURN (true); }
+            if (val == 0x2D1) { RETURN (true); }
+            if (val <= 0x2DF) { RETURN (false); }
+            if (val <= 0x2E4) { RETURN (true); }
+            if (val == 0x2EE) { RETURN (true); }
+            RETURN (false);
+
+        case 0x03:
+            if (val == 0x37A) { RETURN (true); }
+            if (val <= 0x385) { RETURN (false); }
+            if (val == 0x387) { RETURN (false); }
 #ifndef UNICODE_3_2
-	    if (val == 0x3F6) { RETURN (false); }
+            if (val == 0x3F6) { RETURN (false); }
 #endif
-	    RETURN (true);
-
-	case 0x04:
-	    if (val <= 0x481) { RETURN (true); }
-	    if (val <= 0x486) { RETURN (false); }
-	    if (val == 0x487) { RETURN (true); }
+            RETURN (true);
+
+        case 0x04:
+            if (val <= 0x481) { RETURN (true); }
+            if (val <= 0x486) { RETURN (false); }
+            if (val == 0x487) { RETURN (true); }
 #ifdef UNICODE_3_2
-	    if (val <= 0x48A) { RETURN (false); }
+            if (val <= 0x48A) { RETURN (false); }
 #else
-	    if (val <= 0x489) { RETURN (false); }
+            if (val <= 0x489) { RETURN (false); }
 #endif
-	    RETURN (true);
-
-	case 0x05:
-	    if (val <= 0x50f) { RETURN (true); }
-	    if (val <= 0x530) { RETURN (false); }
-	    if (val <= 0x556) { RETURN (true); }
-	    if (val <= 0x558) { RETURN (false); }
-	    if (val <= 0x559) { RETURN (true); }
-	    if (val <= 0x55F) { RETURN (false); }
-	    if (val <= 0x587) { RETURN (true); }
-	    if (val <= 0x5cf) { RETURN (false); }
-	    if (val <= 0x5f2) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x06:
-	    if (val <= 0x620) { RETURN (false); }
-	    if (val <= 0x64A) { RETURN (true); }
-	    if (val <= 0x66D) { RETURN (false); }
-	    if (val == 0x670) { RETURN (false); }
-	    if (val <= 0x6D3) { RETURN (true); }
-	    if (val == 0x6D5) { RETURN (true); }
-	    if (val == 0x6E5) { RETURN (true); }
-	    if (val == 0x6E6) { RETURN (true); }
-	    if (val == 0x6EE) { RETURN (true); }
-	    if (val == 0x6EF) { RETURN (true); }
-	    if (val == 0x6FA) { RETURN (true); }
-	    if (val == 0x6FB) { RETURN (true); }
-	    if (val == 0x6FC) { RETURN (true); }
+            RETURN (true);
+
+        case 0x05:
+            if (val <= 0x50f) { RETURN (true); }
+            if (val <= 0x530) { RETURN (false); }
+            if (val <= 0x556) { RETURN (true); }
+            if (val <= 0x558) { RETURN (false); }
+            if (val <= 0x559) { RETURN (true); }
+            if (val <= 0x55F) { RETURN (false); }
+            if (val <= 0x587) { RETURN (true); }
+            if (val <= 0x5cf) { RETURN (false); }
+            if (val <= 0x5f2) { RETURN (true); }
+            RETURN (false);
+
+        case 0x06:
+            if (val <= 0x620) { RETURN (false); }
+            if (val <= 0x64A) { RETURN (true); }
+            if (val <= 0x66D) { RETURN (false); }
+            if (val == 0x670) { RETURN (false); }
+            if (val <= 0x6D3) { RETURN (true); }
+            if (val == 0x6D5) { RETURN (true); }
+            if (val == 0x6E5) { RETURN (true); }
+            if (val == 0x6E6) { RETURN (true); }
+            if (val == 0x6EE) { RETURN (true); }
+            if (val == 0x6EF) { RETURN (true); }
+            if (val == 0x6FA) { RETURN (true); }
+            if (val == 0x6FB) { RETURN (true); }
+            if (val == 0x6FC) { RETURN (true); }
 #ifndef UNICODE_3_2
-	    if (val == 0x6FF) { RETURN (true); }
+            if (val == 0x6FF) { RETURN (true); }
 #endif
-	    RETURN (false);
-
-	case 0x07:
-	    if (val <= 0x70F) { RETURN (false); }
-	    if (val == 0x711) { RETURN (false); }
-	    if (val <= 0x72F) { RETURN (true); }
+            RETURN (false);
+
+        case 0x07:
+            if (val <= 0x70F) { RETURN (false); }
+            if (val == 0x711) { RETURN (false); }
+            if (val <= 0x72F) { RETURN (true); }
 #ifdef UNICODE_3_2
-	    if (val <= 0x74d) { RETURN (false); }
-	    if (val <= 0x74e) { RETURN (true); }
+            if (val <= 0x74d) { RETURN (false); }
+            if (val <= 0x74e) { RETURN (true); }
 #else
-	    if (val <= 0x74c) { RETURN (false); }
-	    if (val <= 0x74f) { RETURN (true); }
+            if (val <= 0x74c) { RETURN (false); }
+            if (val <= 0x74f) { RETURN (true); }
 #endif
-	    if (val <= 0x77F) { RETURN (false); }
-	    if (val <= 0x7a5) { RETURN (true); }
-	    if (val <= 0x7af) { RETURN (false); }
+            if (val <= 0x77F) { RETURN (false); }
+            if (val <= 0x7a5) { RETURN (true); }
+            if (val <= 0x7af) { RETURN (false); }
 #ifndef UNICODE_3_2
-	    if (val == 0x7B1) { RETURN (true); }
+            if (val == 0x7B1) { RETURN (true); }
 #endif
-	    RETURN (false);
-
-	case 0x09:
+            RETURN (false);
+
+        case 0x09:
 #ifdef UNICODE_3_2
-	    if (val <= 0x904) { RETURN (false); }
+            if (val <= 0x904) { RETURN (false); }
 #else
-	    if (val <= 0x903) { RETURN (false); }
+            if (val <= 0x903) { RETURN (false); }
 #endif
-	    if (val <= 0x93B) { RETURN (true); }
-	    if (val == 0x93D) { RETURN (true); }
-	    if (val == 0x950) { RETURN (true); }
-	    if (val <= 0x957) { RETURN (false); }
-	    if (val <= 0x961) { RETURN (true); }
-	    if (val <= 0x984) { RETURN (false); }
-	    if (val <= 0x9BB) { RETURN (true); }
+            if (val <= 0x93B) { RETURN (true); }
+            if (val == 0x93D) { RETURN (true); }
+            if (val == 0x950) { RETURN (true); }
+            if (val <= 0x957) { RETURN (false); }
+            if (val <= 0x961) { RETURN (true); }
+            if (val <= 0x984) { RETURN (false); }
+            if (val <= 0x9BB) { RETURN (true); }
 #ifndef UNICODE_3_2
-	    if (val == 0x9BD) { RETURN (true); }
+            if (val == 0x9BD) { RETURN (true); }
 #endif
-	    if (val <= 0x9DB) { RETURN (false); }
-	    if (val <= 0x9E1) { RETURN (true); }
-	    if (val <= 0x9EF) { RETURN (false); }
-	    if (val <= 0x9F1) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x0A:
-	    if (val <= 0xa04) { RETURN (false); }
-	    if (val <= 0xa3B) { RETURN (true); }
-	    if (val <= 0xa58) { RETURN (false); }
-	    if (val <= 0xa65) { RETURN (true); }
-	    if (val <= 0xa71) { RETURN (false); }
-	    if (val <= 0xa80) { RETURN (true); }
-	    if (val <= 0xa84) { RETURN (false); }
-	    if (val <= 0xaBB) { RETURN (true); }
-	    if (val == 0xaBD) { RETURN (true); }
-	    if (val <= 0xaCF) { RETURN (false); }
+            if (val <= 0x9DB) { RETURN (false); }
+            if (val <= 0x9E1) { RETURN (true); }
+            if (val <= 0x9EF) { RETURN (false); }
+            if (val <= 0x9F1) { RETURN (true); }
+            RETURN (false);
+
+        case 0x0A:
+            if (val <= 0xa04) { RETURN (false); }
+            if (val <= 0xa3B) { RETURN (true); }
+            if (val <= 0xa58) { RETURN (false); }
+            if (val <= 0xa65) { RETURN (true); }
+            if (val <= 0xa71) { RETURN (false); }
+            if (val <= 0xa80) { RETURN (true); }
+            if (val <= 0xa84) { RETURN (false); }
+            if (val <= 0xaBB) { RETURN (true); }
+            if (val == 0xaBD) { RETURN (true); }
+            if (val <= 0xaCF) { RETURN (false); }
 #ifndef UNICODE_3_2
-	    if (val == 0xAE2) { RETURN (false); }
-	    if (val == 0xAE3) { RETURN (false); }
+            if (val == 0xAE2) { RETURN (false); }
+            if (val == 0xAE3) { RETURN (false); }
 #endif
-	    if (val <= 0xaE5) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x0B:
-	    if (val <= 0xB04) { RETURN (false); }
-	    if (val <= 0xb3B) { RETURN (true); }
-	    if (val == 0xb3d) { RETURN (true); }
-	    if (val <= 0xb5B) { RETURN (false); }
-	    if (val <= 0xb65) { RETURN (true); }
+            if (val <= 0xaE5) { RETURN (true); }
+            RETURN (false);
+
+        case 0x0B:
+            if (val <= 0xB04) { RETURN (false); }
+            if (val <= 0xb3B) { RETURN (true); }
+            if (val == 0xb3d) { RETURN (true); }
+            if (val <= 0xb5B) { RETURN (false); }
+            if (val <= 0xb65) { RETURN (true); }
 #ifndef UNICODE_3_2
-	    if (val == 0xB71) { RETURN (true); }
-	    if (val == 0xB83) { RETURN (true); }
+            if (val == 0xB71) { RETURN (true); }
+            if (val == 0xB83) { RETURN (true); }
 #endif
-	    if (val <= 0xb84) { RETURN (false); }
-	    if (val <= 0xbBB) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x0c:
-	    if (val <= 0xc04) { RETURN (false); }
-	    if (val <= 0xc3d) { RETURN (true); }
-	    if (val <= 0xc5f) { RETURN (false); }
-	    if (val <= 0xc65) { RETURN (true); }
-	    if (val <= 0xc84) { RETURN (false); }
+            if (val <= 0xb84) { RETURN (false); }
+            if (val <= 0xbBB) { RETURN (true); }
+            RETURN (false);
+
+        case 0x0c:
+            if (val <= 0xc04) { RETURN (false); }
+            if (val <= 0xc3d) { RETURN (true); }
+            if (val <= 0xc5f) { RETURN (false); }
+            if (val <= 0xc65) { RETURN (true); }
+            if (val <= 0xc84) { RETURN (false); }
 #ifndef UNICODE_3_2
-	    if (val == 0xcbc) { RETURN (false); }
+            if (val == 0xcbc) { RETURN (false); }
 #endif
-	    if (val <= 0xcbd) { RETURN (true); }
-	    if (val <= 0xcdc) { RETURN (false); }
-	    if (val <= 0xce5) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x0d:
-	    if (val <= 0xd04) { RETURN (false); }
-	    if (val <= 0xd3d) { RETURN (true); }
-	    if (val <= 0xd5f) { RETURN (false); }
-	    if (val <= 0xd65) { RETURN (true); }
-	    if (val <= 0xd84) { RETURN (false); }
-	    if (val <= 0xdc9) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x0E:
-	    if (val == 0xE31) { RETURN (false); }
-	    if (val <= 0xE33) { RETURN (true); }
-	    if (val <= 0xE3F) { RETURN (false); }
-	    if (val <= 0xE46) { RETURN (true); }
-	    if (val <= 0xE7f) { RETURN (false); }
-	    if (val <= 0xEb0) { RETURN (true); }
-	    if (val == 0xEb1) { RETURN (false); }
-	    if (val <= 0xEb3) { RETURN (true); }
-	    if (val <= 0xEbc) { RETURN (false); }
-	    if (val <= 0xEc7) { RETURN (true); }
-	    if (val <= 0xEdb) { RETURN (false); }
-	    RETURN (true);
-
-	case 0x0F:
-	    if (val == 0xf00) { RETURN (true); }
-	    if (val <= 0xf3F) { RETURN (false); }
-	    if (val <= 0xf70) { RETURN (true); }
-	    if (val <= 0xf87) { RETURN (false); }
-	    if (val <= 0xf8f) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x10:
-	    if (val <= 0x102b) { RETURN (true); }
-	    if (val <= 0x104f) { RETURN (false); }
-	    if (val <= 0x1055) { RETURN (true); }
-	    if (val <= 0x109f) { RETURN (false); }
-	    if (val <= 0x10fa) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x11:
-	case 0x12:
-	    RETURN (true);
-
-	case 0x13:
-	    if (val <= 0x1360) { RETURN (true); }
-	    if (val <= 0x139f) { RETURN (false); }
-	    RETURN (true);
-
-	case 0x14:
-	case 0x15:
-	    RETURN (true);
-
-	case 0x16:
-	    if (val == 0x166d) { RETURN (false); }
-	    if (val == 0x166e) { RETURN (false); }
-	    if (val == 0x1680) { RETURN (false); }
-	    if (val == 0x169b) { RETURN (false); }
-	    if (val == 0x169c) { RETURN (false); }
-	    if (val <= 0x16ea) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x17:
+            if (val <= 0xcbd) { RETURN (true); }
+            if (val <= 0xcdc) { RETURN (false); }
+            if (val <= 0xce5) { RETURN (true); }
+            RETURN (false);
+
+        case 0x0d:
+            if (val <= 0xd04) { RETURN (false); }
+            if (val <= 0xd3d) { RETURN (true); }
+            if (val <= 0xd5f) { RETURN (false); }
+            if (val <= 0xd65) { RETURN (true); }
+            if (val <= 0xd84) { RETURN (false); }
+            if (val <= 0xdc9) { RETURN (true); }
+            RETURN (false);
+
+        case 0x0E:
+            if (val == 0xE31) { RETURN (false); }
+            if (val <= 0xE33) { RETURN (true); }
+            if (val <= 0xE3F) { RETURN (false); }
+            if (val <= 0xE46) { RETURN (true); }
+            if (val <= 0xE7f) { RETURN (false); }
+            if (val <= 0xEb0) { RETURN (true); }
+            if (val == 0xEb1) { RETURN (false); }
+            if (val <= 0xEb3) { RETURN (true); }
+            if (val <= 0xEbc) { RETURN (false); }
+            if (val <= 0xEc7) { RETURN (true); }
+            if (val <= 0xEdb) { RETURN (false); }
+            RETURN (true);
+
+        case 0x0F:
+            if (val == 0xf00) { RETURN (true); }
+            if (val <= 0xf3F) { RETURN (false); }
+            if (val <= 0xf70) { RETURN (true); }
+            if (val <= 0xf87) { RETURN (false); }
+            if (val <= 0xf8f) { RETURN (true); }
+            RETURN (false);
+
+        case 0x10:
+            if (val <= 0x102b) { RETURN (true); }
+            if (val <= 0x104f) { RETURN (false); }
+            if (val <= 0x1055) { RETURN (true); }
+            if (val <= 0x109f) { RETURN (false); }
+            if (val <= 0x10fa) { RETURN (true); }
+            RETURN (false);
+
+        case 0x11:
+        case 0x12:
+            RETURN (true);
+
+        case 0x13:
+            if (val <= 0x1360) { RETURN (true); }
+            if (val <= 0x139f) { RETURN (false); }
+            RETURN (true);
+
+        case 0x14:
+        case 0x15:
+            RETURN (true);
+
+        case 0x16:
+            if (val == 0x166d) { RETURN (false); }
+            if (val == 0x166e) { RETURN (false); }
+            if (val == 0x1680) { RETURN (false); }
+            if (val == 0x169b) { RETURN (false); }
+            if (val == 0x169c) { RETURN (false); }
+            if (val <= 0x16ea) { RETURN (true); }
+            RETURN (false);
+
+        case 0x17:
 #ifndef UNICODE_3_2
-	    if (val == 0x1712) { RETURN (false); }
-	    if (val == 0x1713) { RETURN (false); }
-	    if (val == 0x1714) { RETURN (false); }
-	    if (val == 0x1732) { RETURN (false); }
-	    if (val == 0x1733) { RETURN (false); }
-	    if (val == 0x1734) { RETURN (false); }
-	    if (val == 0x1735) { RETURN (false); }
-	    if (val == 0x1736) { RETURN (false); }
-	    if (val == 0x1752) { RETURN (false); }
-	    if (val == 0x1753) { RETURN (false); }
-	    if (val == 0x1772) { RETURN (false); }
-	    if (val == 0x1773) { RETURN (false); }
+            if (val == 0x1712) { RETURN (false); }
+            if (val == 0x1713) { RETURN (false); }
+            if (val == 0x1714) { RETURN (false); }
+            if (val == 0x1732) { RETURN (false); }
+            if (val == 0x1733) { RETURN (false); }
+            if (val == 0x1734) { RETURN (false); }
+            if (val == 0x1735) { RETURN (false); }
+            if (val == 0x1736) { RETURN (false); }
+            if (val == 0x1752) { RETURN (false); }
+            if (val == 0x1753) { RETURN (false); }
+            if (val == 0x1772) { RETURN (false); }
+            if (val == 0x1773) { RETURN (false); }
 #endif
-	    if (val <= 0x17b3) { RETURN (true); }
+            if (val <= 0x17b3) { RETURN (true); }
 #ifndef UNICODE_3_2
-	    if (val == 0x17D7) { RETURN (true); }
-	    if (val == 0x17DC) { RETURN (true); }
+            if (val == 0x17D7) { RETURN (true); }
+            if (val == 0x17DC) { RETURN (true); }
 #endif
-	    RETURN (false);
-
-	case 0x18:
-	    if (val <= 0x181f) { RETURN (false); }
-	    if (val <= 0x18a8) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x19:
+            RETURN (false);
+
+        case 0x18:
+            if (val <= 0x181f) { RETURN (false); }
+            if (val <= 0x18a8) { RETURN (true); }
+            RETURN (false);
+
+        case 0x19:
 #ifndef UNICODE_3_2
-	    if (val <= 0x191F) { RETURN (true); }
-	    if (val <= 0x194F) { RETURN (false); }
-	    if (val <= 0x197F) { RETURN (true); }
+            if (val <= 0x191F) { RETURN (true); }
+            if (val <= 0x194F) { RETURN (false); }
+            if (val <= 0x197F) { RETURN (true); }
 #endif
-	    RETURN (false);
-
-	case 0x1d:
-	    if (val == 0x1d00) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x1e:
-	    RETURN (true);
-
-	case 0x1f:
-	    if (val <= 0x1fbc) { RETURN (true); }
-	    if (val == 0x1fbe) { RETURN (true); }
-	    if (val <= 0x1fc1) { RETURN (false); }
-	    if (val <= 0x1fcc) { RETURN (true); }
-	    if (val <= 0x1fcf) { RETURN (false); }
-	    if (val <= 0x1fdc) { RETURN (true); }
-	    if (val <= 0x1fdf) { RETURN (false); }
-	    if (val <= 0x1fec) { RETURN (true); }
-	    if (val <= 0x1ff1) { RETURN (false); }
-	    if (val <= 0x1ffc) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x20:
+            RETURN (false);
+
+        case 0x1d:
+            if (val <= 0x1d6B) { RETURN (true); }
+            RETURN (false);
+
+        case 0x1e:
+            RETURN (true);
+
+        case 0x1f:
+            if (val <= 0x1fbc) { RETURN (true); }
+            if (val == 0x1fbe) { RETURN (true); }
+            if (val <= 0x1fc1) { RETURN (false); }
+            if (val <= 0x1fcc) { RETURN (true); }
+            if (val <= 0x1fcf) { RETURN (false); }
+            if (val <= 0x1fdc) { RETURN (true); }
+            if (val <= 0x1fdf) { RETURN (false); }
+            if (val <= 0x1fec) { RETURN (true); }
+            if (val <= 0x1ff1) { RETURN (false); }
+            if (val <= 0x1ffc) { RETURN (true); }
+            RETURN (false);
+
+        case 0x20:
 #ifndef UNICODE_3_2
-	    if (val == 0x2071) { RETURN (true); }
+            if (val == 0x2071) { RETURN (true); }
 #endif
-	    if (val == 0x207f) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x21:
-	    if (val == 0x2102) { RETURN (true); }
-	    if (val == 0x2107) { RETURN (true); }
-	    if (val <= 0x2109) { RETURN (false); }
-	    if (val <= 0x2113) { RETURN (true); }
-	    if (val == 0x2115) { RETURN (true); }
-	    if (val <= 0x2118) { RETURN (false); }
-	    if (val <= 0x211d) { RETURN (true); }
-	    if (val <= 0x2123) { RETURN (false); }
-	    if (val == 0x2125) { RETURN (false); }
-	    if (val == 0x2127) { RETURN (false); }
-	    if (val == 0x2129) { RETURN (false); }
-	    if (val == 0x212E) { RETURN (false); }
-	    if (val == 0x2132) { RETURN (false); }
-	    if (val == 0x213A) { RETURN (false); }
+            if (val == 0x207f) { RETURN (true); }
+            RETURN (false);
+
+        case 0x21:
+            if (val == 0x2102) { RETURN (true); }
+            if (val == 0x2107) { RETURN (true); }
+            if (val <= 0x2109) { RETURN (false); }
+            if (val <= 0x2113) { RETURN (true); }
+            if (val == 0x2115) { RETURN (true); }
+            if (val <= 0x2118) { RETURN (false); }
+            if (val <= 0x211d) { RETURN (true); }
+            if (val <= 0x2123) { RETURN (false); }
+            if (val == 0x2125) { RETURN (false); }
+            if (val == 0x2127) { RETURN (false); }
+            if (val == 0x2129) { RETURN (false); }
+            if (val == 0x212E) { RETURN (false); }
+            if (val == 0x2132) { RETURN (false); }
+            if (val == 0x213A) { RETURN (false); }
 #ifndef UNICODE_3_2
-	    if (val == 0x213B) { RETURN (false); }
-	    if (val <= 0x213F) { RETURN (true); }
-	    if (val <= 0x2144) { RETURN (false); }
-	    if (val == 0x214A) { RETURN (false); }
-	    if (val == 0x214B) { RETURN (false); }
+            if (val == 0x213B) { RETURN (false); }
+            if (val <= 0x213F) { RETURN (true); }
+            if (val <= 0x2144) { RETURN (false); }
+            if (val == 0x214A) { RETURN (false); }
+            if (val == 0x214B) { RETURN (false); }
 #endif
-	    if (val <= 0x2152) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x30:
-	    if (val == 0x3005) { RETURN (true); }
-	    if (val == 0x3006) { RETURN (true); }
-	    if (val <= 0x3030) { RETURN (false); }
-	    if (val <= 0x3035) { RETURN (true); }
+            if (val <= 0x2152) { RETURN (true); }
+            RETURN (false);
+
+        case 0x30:
+            if (val == 0x3005) { RETURN (true); }
+            if (val == 0x3006) { RETURN (true); }
+            if (val <= 0x3030) { RETURN (false); }
+            if (val <= 0x3035) { RETURN (true); }
 #ifndef UNICODE_3_2
-	    if (val == 0x303B) { RETURN (true); }
-	    if (val == 0x303C) { RETURN (true); }
+            if (val == 0x303B) { RETURN (true); }
+            if (val == 0x303C) { RETURN (true); }
 #endif
-	    if (val <= 0x3040) { RETURN (false); }
-	    if (val <= 0x3098) { RETURN (true); }
-	    if (val <= 0x309c) { RETURN (false); }
+            if (val <= 0x3040) { RETURN (false); }
+            if (val <= 0x3098) { RETURN (true); }
+            if (val <= 0x309c) { RETURN (false); }
 #ifndef UNICODE_3_2
-	    if (val == 0x30A0) { RETURN (false); }
+            if (val == 0x30A0) { RETURN (false); }
 #endif
-	    if (val == 0x30Fb) { RETURN (false); }
-	    RETURN ((true));
-
-	case 0x31:
-	    if (val <= 0x318f) { RETURN (true); }
-	    if (val <= 0x319F) { RETURN (false); }
-	    RETURN ((true));
-
-	case 0x34:
-	    RETURN ((true));
-
-	case 0x4d:
-	    if (val <= 0x4DB4) { RETURN (false); }
+            if (val == 0x30Fb) { RETURN (false); }
+            RETURN ((true));
+
+        case 0x31:
+            if (val <= 0x318f) { RETURN (true); }
+            if (val <= 0x319F) { RETURN (false); }
+            RETURN ((true));
+
+        case 0x34:
+            RETURN ((true));
+
+        case 0x4d:
+            if (val <= 0x4DB4) { RETURN (false); }
 #ifndef UNICODE_3_2
-	    if (val <= 0x4DBF) { RETURN (true); }
-	    RETURN (false);
+            if (val <= 0x4DBF) { RETURN (true); }
+            RETURN (false);
 #else
-	    RETURN (true);
+            RETURN (true);
 #endif
 
-	case 0x4e:
-	    RETURN ((true));
-
-	case 0x9f:
-	    if (val <= 0x9fa4) { RETURN (false); }
-	    RETURN (true);
-
-	case 0xA0:
-	case 0xA1:
-	case 0xA2:
-	case 0xA3:
-	    RETURN (true);
-
-	case 0xA4:
-	    if (val <= 0xa48f) { RETURN (true); }
-	    RETURN (false);
-
-	case 0xA5:
-	    RETURN (true);
-
-	case 0xAC:
-	    RETURN (true);
-
-	case 0xD7:
-	    RETURN (true);
-
-	case 0xF9:
-	case 0xFA:
-	    RETURN (true);
-
-	case 0xFB:
-	    if (val == 0xfb1e) { RETURN (false); }
-	    if (val == 0xfb29) { RETURN (false); }
-	    RETURN (true);
-
-	case 0xFC:
-	    RETURN (true);
-
-	case 0xFD:
-	    if (val <= 0xFD3d) { RETURN (true); }
-	    if (val <= 0xFD4F) { RETURN (false); }
+        case 0x4e:
+            RETURN ((true));
+
+        case 0x9f:
+            if (val <= 0x9fa4) { RETURN (false); }
+            RETURN (true);
+
+        case 0xA0:
+        case 0xA1:
+        case 0xA2:
+        case 0xA3:
+            RETURN (true);
+
+        case 0xA4:
+            if (val <= 0xa48f) { RETURN (true); }
+            RETURN (false);
+
+        case 0xA5:
+            RETURN (true);
+
+        case 0xAC:
+            RETURN (true);
+
+        case 0xD7:
+            RETURN (true);
+
+        case 0xF9:
+        case 0xFA:
+            RETURN (true);
+
+        case 0xFB:
+            if (val == 0xfb1e) { RETURN (false); }
+            if (val == 0xfb29) { RETURN (false); }
+            RETURN (true);
+
+        case 0xFC:
+            RETURN (true);
+
+        case 0xFD:
+            if (val <= 0xFD3d) { RETURN (true); }
+            if (val <= 0xFD4F) { RETURN (false); }
 #ifndef UNICODE_3_2
-	    if (val == 0xFDFC) { RETURN (false); }
-	    if (val == 0xFDFD) { RETURN (false); }
+            if (val == 0xFDFC) { RETURN (false); }
+            if (val == 0xFDFD) { RETURN (false); }
 #endif
-	    RETURN (true);
-
-	case 0xFE:
+            RETURN (true);
+
+        case 0xFE:
 #ifndef UNICODE_3_2
-	    if (val <= 0xFE0F) { RETURN (false); }
+            if (val <= 0xFE0F) { RETURN (false); }
 #endif
-	    if (val <= 0xFE1f) { RETURN (true); }
-	    if (val <= 0xFE6F) { RETURN (false); }
-	    if (val <= 0xFEFE) { RETURN (true); }
-	    RETURN (false);
-
-	case 0xFF:
-	    if (val <= 0xFF20) { RETURN (false); }
-	    if (val <= 0xFF3a) { RETURN (true); }
-	    if (val <= 0xFF40) { RETURN (false); }
-	    if (val <= 0xFF5a) { RETURN (true); }
-	    if (val <= 0xFF65) { RETURN (false); }
-	    if (val <= 0xFFdC) { RETURN (true); }
-	    RETURN (false);
-
-	case 0x100:
+            if (val <= 0xFE1f) { RETURN (true); }
+            if (val <= 0xFE6F) { RETURN (false); }
+            if (val <= 0xFEFE) { RETURN (true); }
+            RETURN (false);
+
+        case 0xFF:
+            if (val <= 0xFF20) { RETURN (false); }
+            if (val <= 0xFF3a) { RETURN (true); }
+            if (val <= 0xFF40) { RETURN (false); }
+            if (val <= 0xFF5a) { RETURN (true); }
+            if (val <= 0xFF65) { RETURN (false); }
+            if (val <= 0xFFdC) { RETURN (true); }
+            RETURN (false);
+
+        case 0x100:
 #ifndef UNICODE_3_2
-	    RETURN (true);
+            RETURN (true);
 #else
-	    RETURN (false);
+            RETURN (false);
 #endif
 
-	case 0x103:
-	    if (val <= 0x1031f) { RETURN (true); }
-	    if (val <= 0x1032F) { RETURN (false); }
-	    if (val <= 0x10349) { RETURN (true); }
+        case 0x103:
+            if (val <= 0x1031f) { RETURN (true); }
+            if (val <= 0x1032F) { RETURN (false); }
+            if (val <= 0x10349) { RETURN (true); }
 #ifndef UNICODE_3_2
-	    if (val <= 0x1037F) { RETURN (false); }
-	    if (val <= 0x1039E) { RETURN (true); }
+            if (val <= 0x1037F) { RETURN (false); }
+            if (val <= 0x1039E) { RETURN (true); }
 #endif
-	    RETURN (false);
-
-	case 0x104:
+            RETURN (false);
+
+        case 0x104:
 #ifndef UNICODE_3_2
-	    if (val <= 0x1049F) { RETURN (true); }
-	    if (val <= 0x104aF) { RETURN (false); }
+            if (val <= 0x1049F) { RETURN (true); }
+            if (val <= 0x104aF) { RETURN (false); }
 #endif
-	    RETURN (true);
-
-	case 0x108:
+            RETURN (true);
+
+        case 0x108:
 #ifndef UNICODE_3_2
-	    RETURN (true);
+            RETURN (true);
 #else
-	    RETURN (false);
+            RETURN (false);
 #endif
 
-	case 0x1D4:
-	case 0x1D5:
-	    RETURN (true);
-
-	case 0x1D6:
-	    if (val == 0x1d6c1) { RETURN (false); }
-	    if (val == 0x1d6db) { RETURN (false); }
-	    if (val == 0x1d6fb) { RETURN (false); }
-	    RETURN (true);
+        case 0x1D4:
+        case 0x1D5:
+            RETURN (true);
+
+        case 0x1D6:
+            if (val == 0x1d6c1) { RETURN (false); }
+            if (val == 0x1d6db) { RETURN (false); }
+            if (val == 0x1d6fb) { RETURN (false); }
+            RETURN (true);
     }
     RETURN (false);
 %}