Index: src/unicode.m ================================================================== --- src/unicode.m +++ src/unicode.m @@ -520,11 +520,11 @@ 11264, 11265, 11266, 11267, 11268, 11269, 11270, 11271, 11272, 11273, 11274, 11275, 11276, 11277, 11278, 11279, 11280, 11281, 11282, 11283, 11284, 11285, 11286, 11287, 11288, 11289, 11290, 11291, 11292, 11293, 11294, 11295, 11296, 11297, 11298, 11299, 11300, 11301, 11302, 11303, - 11304, 11305, 11306, 11307, 11308, 11309, 11310, 0, + 11304, 11305, 11306, 11307, 11308, 11309, 11310, 11311, 0, 11360, 0, 0, 0, 570, 574, 0, 11367, 0, 11369, 0, 11371, 0, 0, 0, 0, 0, 0, 11378, 0, 0, 11381, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11392, 0, 11394, 0, 11396, 0, 11398, @@ -638,14 +638,14 @@ 0, 42904, 0, 42906, 0, 42908, 0, 42910, 0, 42912, 0, 42914, 0, 42916, 0, 42918, 0, 42920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 42932, 0, 42934, 0, 42936, 0, 42938, 0, 42940, 0, 42942, - 0, 0, 0, 42946, 0, 0, 0, 0, + 0, 42944, 0, 42946, 0, 0, 0, 0, 42951, 0, 42953, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + 0, 42960, 0, 0, 0, 0, 0, 42966, + 0, 42968, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 42997, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; @@ -752,10 +752,45 @@ 66744, 66745, 66746, 66747, 66748, 66749, 66750, 66751, 66752, 66753, 66754, 66755, 66756, 66757, 66758, 66759, 66760, 66761, 66762, 66763, 66764, 66765, 66766, 66767, 66768, 66769, 66770, 66771, 0, 0, 0, 0, }; + +static const OFUnichar uppercasePage261[0x100] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 66928, + 66929, 66930, 66931, 66932, 66933, 66934, 66935, 66936, + 66937, 66938, 0, 66940, 66941, 66942, 66943, 66944, + 66945, 66946, 66947, 66948, 66949, 66950, 66951, 66952, + 66953, 66954, 0, 66956, 66957, 66958, 66959, 66960, + 66961, 66962, 0, 66964, 66965, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; static const OFUnichar uppercasePage268[0x100] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1354,11 +1389,11 @@ 11312, 11313, 11314, 11315, 11316, 11317, 11318, 11319, 11320, 11321, 11322, 11323, 11324, 11325, 11326, 11327, 11328, 11329, 11330, 11331, 11332, 11333, 11334, 11335, 11336, 11337, 11338, 11339, 11340, 11341, 11342, 11343, 11344, 11345, 11346, 11347, 11348, 11349, 11350, 11351, - 11352, 11353, 11354, 11355, 11356, 11357, 11358, 0, + 11352, 11353, 11354, 11355, 11356, 11357, 11358, 11359, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1443,14 +1478,14 @@ 42905, 0, 42907, 0, 42909, 0, 42911, 0, 42913, 0, 42915, 0, 42917, 0, 42919, 0, 42921, 0, 614, 604, 609, 620, 618, 0, 670, 647, 669, 43859, 42933, 0, 42935, 0, 42937, 0, 42939, 0, 42941, 0, 42943, 0, - 0, 0, 42947, 0, 42900, 642, 7566, 42952, + 42945, 0, 42947, 0, 42900, 642, 7566, 42952, 0, 42954, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + 42961, 0, 0, 0, 0, 0, 42967, 0, + 42969, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 42998, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; @@ -1516,10 +1551,45 @@ 66776, 66777, 66778, 66779, 66780, 66781, 66782, 66783, 66784, 66785, 66786, 66787, 66788, 66789, 66790, 66791, 66792, 66793, 66794, 66795, 66796, 66797, 66798, 66799, 66800, 66801, 66802, 66803, 66804, 66805, 66806, 66807, 66808, 66809, 66810, 66811, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; + +static const OFUnichar lowercasePage261[0x100] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 66967, 66968, 66969, 66970, 66971, 66972, 66973, 66974, + 66975, 66976, 66977, 0, 66979, 66980, 66981, 66982, + 66983, 66984, 66985, 66986, 66987, 66988, 66989, 66990, + 66991, 66992, 66993, 0, 66995, 66996, 66997, 66998, + 66999, 67000, 67001, 0, 67003, 67004, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -10388,12 +10458,12 @@ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, - NULL, NULL, + "\x43", "\x46", + "\x51", NULL, NULL, NULL, "\xC4\xA6", "\xC5\x93", NULL, NULL, NULL, NULL, NULL, NULL, @@ -11182,10 +11252,141 @@ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, }; + +static const char *const decompCompatPage263[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xCB\x90", + "\xCB\x91", "\xC3\xA6", + "\xCA\x99", "\xC9\x93", + NULL, "\xCA\xA3", + "\xEA\xAD\xA6", "\xCA\xA5", + "\xCA\xA4", "\xC9\x96", + "\xC9\x97", "\xE1\xB6\x91", + "\xC9\x98", "\xC9\x9E", + "\xCA\xA9", "\xC9\xA4", + "\xC9\xA2", "\xC9\xA0", + "\xCA\x9B", "\xC4\xA7", + "\xCA\x9C", "\xC9\xA7", + "\xCA\x84", "\xCA\xAA", + "\xCA\xAB", "\xC9\xAC", + "\xF0\x9D\xBC\x84", "\xEA\x9E\x8E", + "\xC9\xAE", "\xF0\x9D\xBC\x85", + "\xCA\x8E", "\xF0\x9D\xBC\x86", + "\xC3\xB8", "\xC9\xB6", + "\xC9\xB7", "\x71", + "\xC9\xBA", "\xF0\x9D\xBC\x88", + "\xC9\xBD", "\xC9\xBE", + "\xCA\x80", "\xCA\xA8", + "\xCA\xA6", "\xEA\xAD\xA7", + "\xCA\xA7", "\xCA\x88", + "\xE2\xB1\xB1", NULL, + "\xCA\x8F", "\xCA\xA1", + "\xCA\xA2", "\xCA\x98", + "\xC7\x80", "\xC7\x81", + "\xC7\x82", "\xF0\x9D\xBC\x8A", + "\xF0\x9D\xBC\x9E", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; static const char *const decompCompatPage465[0x100] = { NULL, NULL, NULL, NULL, NULL, NULL, @@ -11837,10 +12038,141 @@ "\x32", "\x33", "\x34", "\x35", "\x36", "\x37", "\x38", "\x39", }; + +static const char *const decompCompatPage480[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xD0\xB0", "\xD0\xB1", + "\xD0\xB2", "\xD0\xB3", + "\xD0\xB4", "\xD0\xB5", + "\xD0\xB6", "\xD0\xB7", + "\xD0\xB8", "\xD0\xBA", + "\xD0\xBB", "\xD0\xBC", + "\xD0\xBE", "\xD0\xBF", + "\xD1\x80", "\xD1\x81", + "\xD1\x82", "\xD1\x83", + "\xD1\x84", "\xD1\x85", + "\xD1\x86", "\xD1\x87", + "\xD1\x88", "\xD1\x8B", + "\xD1\x8D", "\xD1\x8E", + "\xEA\x9A\x89", "\xD3\x99", + "\xD1\x96", "\xD1\x98", + "\xD3\xA9", "\xD2\xAF", + "\xD3\x8F", "\xD0\xB0", + "\xD0\xB1", "\xD0\xB2", + "\xD0\xB3", "\xD0\xB4", + "\xD0\xB5", "\xD0\xB6", + "\xD0\xB7", "\xD0\xB8", + "\xD0\xBA", "\xD0\xBB", + "\xD0\xBE", "\xD0\xBF", + "\xD1\x81", "\xD1\x83", + "\xD1\x84", "\xD1\x85", + "\xD1\x86", "\xD1\x87", + "\xD1\x88", "\xD1\x8A", + "\xD1\x8B", "\xD2\x91", + "\xD1\x96", "\xD1\x95", + "\xD1\x9F", "\xD2\xAB", + "\xEA\x99\x91", "\xD2\xB1", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; static const char *const decompCompatPage494[0x100] = { "\xD8\xA7", "\xD8\xA8", "\xD8\xAC", "\xD8\xAF", NULL, "\xD9\x88", @@ -12428,11 +12760,11 @@ emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, uppercasePage255, emptyPage, emptyPage, emptyPage, emptyPage, - uppercasePage260, emptyPage, emptyPage, emptyPage, + uppercasePage260, uppercasePage261, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, uppercasePage268, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, uppercasePage280, emptyPage, emptyPage, emptyPage, @@ -12554,11 +12886,11 @@ emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, lowercasePage255, emptyPage, emptyPage, emptyPage, emptyPage, - lowercasePage260, emptyPage, emptyPage, emptyPage, + lowercasePage260, lowercasePage261, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, lowercasePage268, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, lowercasePage280, emptyPage, emptyPage, emptyPage, @@ -12680,11 +13012,11 @@ emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, uppercasePage255, emptyPage, emptyPage, emptyPage, emptyPage, - uppercasePage260, emptyPage, emptyPage, emptyPage, + uppercasePage260, uppercasePage261, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, uppercasePage268, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, uppercasePage280, emptyPage, emptyPage, emptyPage, @@ -12828,11 +13160,11 @@ emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, lowercasePage255, emptyPage, emptyPage, emptyPage, emptyPage, lowercasePage260, - emptyPage, emptyPage, emptyPage, + lowercasePage261, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, lowercasePage268, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, @@ -13253,11 +13585,11 @@ emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, decompositionPage249, decompositionPage250, decompCompatPage251, decompCompatPage252, decompCompatPage253, decompCompatPage254, decompCompatPage255, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, - emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, decompCompatPage263, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, decompositionPage272, decompositionPage273, emptyDecompositionPage, decompositionPage275, decompositionPage276, decompositionPage277, emptyDecompositionPage, @@ -13326,11 +13658,11 @@ decompCompatPage465, emptyDecompositionPage, emptyDecompositionPage, decompCompatPage468, decompCompatPage469, decompCompatPage470, decompCompatPage471, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, - emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + decompCompatPage480, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, decompCompatPage494, emptyDecompositionPage, emptyDecompositionPage, decompCompatPage497,