guint16 ch;
gchar data[7];
} casefold_table[] = {
-{ 0xb5, "μ" },
+{ 0xb5, "\xce\xbc" },
{ 0xdf, "ss" },
{ 0x131, "i" },
-{ 0x149, "ʼn" },
+{ 0x149, "\xca\xbcn" },
{ 0x17f, "s" },
-{ 0x1f0, "ǰ" },
-{ 0x345, "ι" },
-{ 0x390, "ΐ" },
-{ 0x3b0, "ΰ" },
-{ 0x3c2, "σ" },
-{ 0x3d0, "β" },
-{ 0x3d1, "θ" },
-{ 0x3d5, "φ" },
-{ 0x3d6, "π" },
-{ 0x3f0, "κ" },
-{ 0x3f1, "ρ" },
-{ 0x3f2, "σ" },
-{ 0x3f5, "ε" },
-{ 0x587, "եւ" },
-{ 0x1e96, "ẖ" },
-{ 0x1e97, "ẗ" },
-{ 0x1e98, "ẘ" },
-{ 0x1e99, "ẙ" },
-{ 0x1e9a, "aʾ" },
-{ 0x1e9b, "ṡ" },
-{ 0x1f50, "ὐ" },
-{ 0x1f52, "ὒ" },
-{ 0x1f54, "ὔ" },
-{ 0x1f56, "ὖ" },
-{ 0x1f80, "ἀι" },
-{ 0x1f81, "ἁι" },
-{ 0x1f82, "ἂι" },
-{ 0x1f83, "ἃι" },
-{ 0x1f84, "ἄι" },
-{ 0x1f85, "ἅι" },
-{ 0x1f86, "ἆι" },
-{ 0x1f87, "ἇι" },
-{ 0x1f88, "ἀι" },
-{ 0x1f89, "ἁι" },
-{ 0x1f8a, "ἂι" },
-{ 0x1f8b, "ἃι" },
-{ 0x1f8c, "ἄι" },
-{ 0x1f8d, "ἅι" },
-{ 0x1f8e, "ἆι" },
-{ 0x1f8f, "ἇι" },
-{ 0x1f90, "ἠι" },
-{ 0x1f91, "ἡι" },
-{ 0x1f92, "ἢι" },
-{ 0x1f93, "ἣι" },
-{ 0x1f94, "ἤι" },
-{ 0x1f95, "ἥι" },
-{ 0x1f96, "ἦι" },
-{ 0x1f97, "ἧι" },
-{ 0x1f98, "ἠι" },
-{ 0x1f99, "ἡι" },
-{ 0x1f9a, "ἢι" },
-{ 0x1f9b, "ἣι" },
-{ 0x1f9c, "ἤι" },
-{ 0x1f9d, "ἥι" },
-{ 0x1f9e, "ἦι" },
-{ 0x1f9f, "ἧι" },
-{ 0x1fa0, "ὠι" },
-{ 0x1fa1, "ὡι" },
-{ 0x1fa2, "ὢι" },
-{ 0x1fa3, "ὣι" },
-{ 0x1fa4, "ὤι" },
-{ 0x1fa5, "ὥι" },
-{ 0x1fa6, "ὦι" },
-{ 0x1fa7, "ὧι" },
-{ 0x1fa8, "ὠι" },
-{ 0x1fa9, "ὡι" },
-{ 0x1faa, "ὢι" },
-{ 0x1fab, "ὣι" },
-{ 0x1fac, "ὤι" },
-{ 0x1fad, "ὥι" },
-{ 0x1fae, "ὦι" },
-{ 0x1faf, "ὧι" },
-{ 0x1fb2, "ὰι" },
-{ 0x1fb3, "αι" },
-{ 0x1fb4, "άι" },
-{ 0x1fb6, "ᾶ" },
-{ 0x1fb7, "ᾶι" },
-{ 0x1fbc, "αι" },
-{ 0x1fbe, "ι" },
-{ 0x1fc2, "ὴι" },
-{ 0x1fc3, "ηι" },
-{ 0x1fc4, "ήι" },
-{ 0x1fc6, "ῆ" },
-{ 0x1fc7, "ῆι" },
-{ 0x1fcc, "ηι" },
-{ 0x1fd2, "ῒ" },
-{ 0x1fd3, "ΐ" },
-{ 0x1fd6, "ῖ" },
-{ 0x1fd7, "ῗ" },
-{ 0x1fe2, "ῢ" },
-{ 0x1fe3, "ΰ" },
-{ 0x1fe4, "ῤ" },
-{ 0x1fe6, "ῦ" },
-{ 0x1fe7, "ῧ" },
-{ 0x1ff2, "ὼι" },
-{ 0x1ff3, "ωι" },
-{ 0x1ff4, "ώι" },
-{ 0x1ff6, "ῶ" },
-{ 0x1ff7, "ῶι" },
-{ 0x1ffc, "ωι" },
-{ 0x2160, "ⅰ" },
-{ 0x2161, "ⅱ" },
-{ 0x2162, "ⅲ" },
-{ 0x2163, "ⅳ" },
-{ 0x2164, "ⅴ" },
-{ 0x2165, "ⅵ" },
-{ 0x2166, "ⅶ" },
-{ 0x2167, "ⅷ" },
-{ 0x2168, "ⅸ" },
-{ 0x2169, "ⅹ" },
-{ 0x216a, "ⅺ" },
-{ 0x216b, "ⅻ" },
-{ 0x216c, "ⅼ" },
-{ 0x216d, "ⅽ" },
-{ 0x216e, "ⅾ" },
-{ 0x216f, "ⅿ" },
-{ 0x24b6, "ⓐ" },
-{ 0x24b7, "ⓑ" },
-{ 0x24b8, "ⓒ" },
-{ 0x24b9, "ⓓ" },
-{ 0x24ba, "ⓔ" },
-{ 0x24bb, "ⓕ" },
-{ 0x24bc, "ⓖ" },
-{ 0x24bd, "ⓗ" },
-{ 0x24be, "ⓘ" },
-{ 0x24bf, "ⓙ" },
-{ 0x24c0, "ⓚ" },
-{ 0x24c1, "ⓛ" },
-{ 0x24c2, "ⓜ" },
-{ 0x24c3, "ⓝ" },
-{ 0x24c4, "ⓞ" },
-{ 0x24c5, "ⓟ" },
-{ 0x24c6, "ⓠ" },
-{ 0x24c7, "ⓡ" },
-{ 0x24c8, "ⓢ" },
-{ 0x24c9, "ⓣ" },
-{ 0x24ca, "ⓤ" },
-{ 0x24cb, "ⓥ" },
-{ 0x24cc, "ⓦ" },
-{ 0x24cd, "ⓧ" },
-{ 0x24ce, "ⓨ" },
-{ 0x24cf, "ⓩ" },
+{ 0x1f0, "j\xcc\x8c" },
+{ 0x345, "\xce\xb9" },
+{ 0x390, "\xce\xb9\xcc\x88\xcc\x81" },
+{ 0x3b0, "\xcf\x85\xcc\x88\xcc\x81" },
+{ 0x3c2, "\xcf\x83" },
+{ 0x3d0, "\xce\xb2" },
+{ 0x3d1, "\xce\xb8" },
+{ 0x3d5, "\xcf\x86" },
+{ 0x3d6, "\xcf\x80" },
+{ 0x3f0, "\xce\xba" },
+{ 0x3f1, "\xcf\x81" },
+{ 0x3f2, "\xcf\x83" },
+{ 0x3f5, "\xce\xb5" },
+{ 0x587, "\xd5\xa5\xd6\x82" },
+{ 0x1e96, "h\xcc\xb1" },
+{ 0x1e97, "t\xcc\x88" },
+{ 0x1e98, "w\xcc\x8a" },
+{ 0x1e99, "y\xcc\x8a" },
+{ 0x1e9a, "a\xca\xbe" },
+{ 0x1e9b, "\xe1\xb9\xa1" },
+{ 0x1f50, "\xcf\x85\xcc\x93" },
+{ 0x1f52, "\xcf\x85\xcc\x93\xcc\x80" },
+{ 0x1f54, "\xcf\x85\xcc\x93\xcc\x81" },
+{ 0x1f56, "\xcf\x85\xcc\x93\xcd\x82" },
+{ 0x1f80, "\xe1\xbc\x80\xce\xb9" },
+{ 0x1f81, "\xe1\xbc\x81\xce\xb9" },
+{ 0x1f82, "\xe1\xbc\x82\xce\xb9" },
+{ 0x1f83, "\xe1\xbc\x83\xce\xb9" },
+{ 0x1f84, "\xe1\xbc\x84\xce\xb9" },
+{ 0x1f85, "\xe1\xbc\x85\xce\xb9" },
+{ 0x1f86, "\xe1\xbc\x86\xce\xb9" },
+{ 0x1f87, "\xe1\xbc\x87\xce\xb9" },
+{ 0x1f88, "\xe1\xbc\x80\xce\xb9" },
+{ 0x1f89, "\xe1\xbc\x81\xce\xb9" },
+{ 0x1f8a, "\xe1\xbc\x82\xce\xb9" },
+{ 0x1f8b, "\xe1\xbc\x83\xce\xb9" },
+{ 0x1f8c, "\xe1\xbc\x84\xce\xb9" },
+{ 0x1f8d, "\xe1\xbc\x85\xce\xb9" },
+{ 0x1f8e, "\xe1\xbc\x86\xce\xb9" },
+{ 0x1f8f, "\xe1\xbc\x87\xce\xb9" },
+{ 0x1f90, "\xe1\xbc\xa0\xce\xb9" },
+{ 0x1f91, "\xe1\xbc\xa1\xce\xb9" },
+{ 0x1f92, "\xe1\xbc\xa2\xce\xb9" },
+{ 0x1f93, "\xe1\xbc\xa3\xce\xb9" },
+{ 0x1f94, "\xe1\xbc\xa4\xce\xb9" },
+{ 0x1f95, "\xe1\xbc\xa5\xce\xb9" },
+{ 0x1f96, "\xe1\xbc\xa6\xce\xb9" },
+{ 0x1f97, "\xe1\xbc\xa7\xce\xb9" },
+{ 0x1f98, "\xe1\xbc\xa0\xce\xb9" },
+{ 0x1f99, "\xe1\xbc\xa1\xce\xb9" },
+{ 0x1f9a, "\xe1\xbc\xa2\xce\xb9" },
+{ 0x1f9b, "\xe1\xbc\xa3\xce\xb9" },
+{ 0x1f9c, "\xe1\xbc\xa4\xce\xb9" },
+{ 0x1f9d, "\xe1\xbc\xa5\xce\xb9" },
+{ 0x1f9e, "\xe1\xbc\xa6\xce\xb9" },
+{ 0x1f9f, "\xe1\xbc\xa7\xce\xb9" },
+{ 0x1fa0, "\xe1\xbd\xa0\xce\xb9" },
+{ 0x1fa1, "\xe1\xbd\xa1\xce\xb9" },
+{ 0x1fa2, "\xe1\xbd\xa2\xce\xb9" },
+{ 0x1fa3, "\xe1\xbd\xa3\xce\xb9" },
+{ 0x1fa4, "\xe1\xbd\xa4\xce\xb9" },
+{ 0x1fa5, "\xe1\xbd\xa5\xce\xb9" },
+{ 0x1fa6, "\xe1\xbd\xa6\xce\xb9" },
+{ 0x1fa7, "\xe1\xbd\xa7\xce\xb9" },
+{ 0x1fa8, "\xe1\xbd\xa0\xce\xb9" },
+{ 0x1fa9, "\xe1\xbd\xa1\xce\xb9" },
+{ 0x1faa, "\xe1\xbd\xa2\xce\xb9" },
+{ 0x1fab, "\xe1\xbd\xa3\xce\xb9" },
+{ 0x1fac, "\xe1\xbd\xa4\xce\xb9" },
+{ 0x1fad, "\xe1\xbd\xa5\xce\xb9" },
+{ 0x1fae, "\xe1\xbd\xa6\xce\xb9" },
+{ 0x1faf, "\xe1\xbd\xa7\xce\xb9" },
+{ 0x1fb2, "\xe1\xbd\xb0\xce\xb9" },
+{ 0x1fb3, "\xce\xb1\xce\xb9" },
+{ 0x1fb4, "\xce\xac\xce\xb9" },
+{ 0x1fb6, "\xce\xb1\xcd\x82" },
+{ 0x1fb7, "\xce\xb1\xcd\x82\xce\xb9" },
+{ 0x1fbc, "\xce\xb1\xce\xb9" },
+{ 0x1fbe, "\xce\xb9" },
+{ 0x1fc2, "\xe1\xbd\xb4\xce\xb9" },
+{ 0x1fc3, "\xce\xb7\xce\xb9" },
+{ 0x1fc4, "\xce\xae\xce\xb9" },
+{ 0x1fc6, "\xce\xb7\xcd\x82" },
+{ 0x1fc7, "\xce\xb7\xcd\x82\xce\xb9" },
+{ 0x1fcc, "\xce\xb7\xce\xb9" },
+{ 0x1fd2, "\xce\xb9\xcc\x88\xcc\x80" },
+{ 0x1fd3, "\xce\xb9\xcc\x88\xcc\x81" },
+{ 0x1fd6, "\xce\xb9\xcd\x82" },
+{ 0x1fd7, "\xce\xb9\xcc\x88\xcd\x82" },
+{ 0x1fe2, "\xcf\x85\xcc\x88\xcc\x80" },
+{ 0x1fe3, "\xcf\x85\xcc\x88\xcc\x81" },
+{ 0x1fe4, "\xcf\x81\xcc\x93" },
+{ 0x1fe6, "\xcf\x85\xcd\x82" },
+{ 0x1fe7, "\xcf\x85\xcc\x88\xcd\x82" },
+{ 0x1ff2, "\xe1\xbd\xbc\xce\xb9" },
+{ 0x1ff3, "\xcf\x89\xce\xb9" },
+{ 0x1ff4, "\xcf\x8e\xce\xb9" },
+{ 0x1ff6, "\xcf\x89\xcd\x82" },
+{ 0x1ff7, "\xcf\x89\xcd\x82\xce\xb9" },
+{ 0x1ffc, "\xcf\x89\xce\xb9" },
+{ 0x2160, "\xe2\x85\xb0" },
+{ 0x2161, "\xe2\x85\xb1" },
+{ 0x2162, "\xe2\x85\xb2" },
+{ 0x2163, "\xe2\x85\xb3" },
+{ 0x2164, "\xe2\x85\xb4" },
+{ 0x2165, "\xe2\x85\xb5" },
+{ 0x2166, "\xe2\x85\xb6" },
+{ 0x2167, "\xe2\x85\xb7" },
+{ 0x2168, "\xe2\x85\xb8" },
+{ 0x2169, "\xe2\x85\xb9" },
+{ 0x216a, "\xe2\x85\xba" },
+{ 0x216b, "\xe2\x85\xbb" },
+{ 0x216c, "\xe2\x85\xbc" },
+{ 0x216d, "\xe2\x85\xbd" },
+{ 0x216e, "\xe2\x85\xbe" },
+{ 0x216f, "\xe2\x85\xbf" },
+{ 0x24b6, "\xe2\x93\x90" },
+{ 0x24b7, "\xe2\x93\x91" },
+{ 0x24b8, "\xe2\x93\x92" },
+{ 0x24b9, "\xe2\x93\x93" },
+{ 0x24ba, "\xe2\x93\x94" },
+{ 0x24bb, "\xe2\x93\x95" },
+{ 0x24bc, "\xe2\x93\x96" },
+{ 0x24bd, "\xe2\x93\x97" },
+{ 0x24be, "\xe2\x93\x98" },
+{ 0x24bf, "\xe2\x93\x99" },
+{ 0x24c0, "\xe2\x93\x9a" },
+{ 0x24c1, "\xe2\x93\x9b" },
+{ 0x24c2, "\xe2\x93\x9c" },
+{ 0x24c3, "\xe2\x93\x9d" },
+{ 0x24c4, "\xe2\x93\x9e" },
+{ 0x24c5, "\xe2\x93\x9f" },
+{ 0x24c6, "\xe2\x93\xa0" },
+{ 0x24c7, "\xe2\x93\xa1" },
+{ 0x24c8, "\xe2\x93\xa2" },
+{ 0x24c9, "\xe2\x93\xa3" },
+{ 0x24ca, "\xe2\x93\xa4" },
+{ 0x24cb, "\xe2\x93\xa5" },
+{ 0x24cc, "\xe2\x93\xa6" },
+{ 0x24cd, "\xe2\x93\xa7" },
+{ 0x24ce, "\xe2\x93\xa8" },
+{ 0x24cf, "\xe2\x93\xa9" },
{ 0xfb00, "ff" },
{ 0xfb01, "fi" },
{ 0xfb02, "fl" },
{ 0xfb04, "ffl" },
{ 0xfb05, "st" },
{ 0xfb06, "st" },
-{ 0xfb13, "մն" },
-{ 0xfb14, "մե" },
-{ 0xfb15, "մի" },
-{ 0xfb16, "վն" },
-{ 0xfb17, "մխ" },
+{ 0xfb13, "\xd5\xb4\xd5\xb6" },
+{ 0xfb14, "\xd5\xb4\xd5\xa5" },
+{ 0xfb15, "\xd5\xb4\xd5\xab" },
+{ 0xfb16, "\xd5\xbe\xd5\xb6" },
+{ 0xfb17, "\xd5\xb4\xd5\xad" },
};
#endif /* CHARTABLES_H */
TEST_MATCH("*?*x", "yx", TRUE);
TEST_MATCH("*?*x", "xxxx", TRUE);
TEST_MATCH("x*??", "xyzw", TRUE);
- TEST_MATCH("*x", "Äx", TRUE);
- TEST_MATCH("?x", "Äx", TRUE);
- TEST_MATCH("??x", "Äx", FALSE);
- TEST_MATCH("abäö", "abäö", TRUE);
- TEST_MATCH("abäö", "abao", FALSE);
- TEST_MATCH("ab?ö", "abäö", TRUE);
- TEST_MATCH("ab?ö", "abao", FALSE);
- TEST_MATCH("abä?", "abäö", TRUE);
- TEST_MATCH("abä?", "abao", FALSE);
- TEST_MATCH("ab??", "abäö", TRUE);
- TEST_MATCH("ab*", "abäö", TRUE);
- TEST_MATCH("ab*ö", "abäö", TRUE);
- TEST_MATCH("ab*ö", "abaöxö", TRUE);
+ TEST_MATCH("*x", "\xc4x", TRUE);
+ TEST_MATCH("?x", "\xc4x", TRUE);
+ TEST_MATCH("??x", "\xc4x", FALSE);
+ TEST_MATCH("ab\xe4\xf6", "ab\xe4\xf6", TRUE);
+ TEST_MATCH("ab\xe4\xf6", "abao", FALSE);
+ TEST_MATCH("ab?\xf6", "ab\xe4\xf6", TRUE);
+ TEST_MATCH("ab?\xf6", "abao", FALSE);
+ TEST_MATCH("ab\xe4?", "ab\xe4\xf6", TRUE);
+ TEST_MATCH("ab\xe4?", "abao", FALSE);
+ TEST_MATCH("ab??", "ab\xe4\xf6", TRUE);
+ TEST_MATCH("ab*", "ab\xe4\xf6", TRUE);
+ TEST_MATCH("ab*\xf6", "ab\xe4\xf6", TRUE);
+ TEST_MATCH("ab*\xf6", "aba\xf6x\xf6", TRUE);
g_print ("\n%u tests passed, %u failed\n", passed, failed);