svnno****@sourc*****
svnno****@sourc*****
2016年 10月 27日 (木) 12:06:43 JST
Revision: 6514 http://sourceforge.jp/projects/ttssh2/scm/svn/commits/6514 Author: doda Date: 2016-10-27 12:06:43 +0900 (Thu, 27 Oct 2016) Log Message: ----------- ファイル名 / 変数名等を実態を表すわかりやすい物に変更 HFS+ では NFD を使っているが、HFS+ のみで使う特別な処理というわけではなく、やっている事自体は結合文字の処理。 そういう意味では漢字コード設定の UTF-8m ってのもちょっと気になる Modified Paths: -------------- trunk/teraterm/teraterm/vtterm.c Added Paths: ----------- trunk/teraterm/teraterm/uni_combining.map Removed Paths: ------------- trunk/teraterm/teraterm/hfs_plus.map -------------- next part -------------- Deleted: trunk/teraterm/teraterm/hfs_plus.map =================================================================== --- trunk/teraterm/teraterm/hfs_plus.map 2016-10-27 03:06:40 UTC (rev 6513) +++ trunk/teraterm/teraterm/hfs_plus.map 2016-10-27 03:06:43 UTC (rev 6514) @@ -1,686 +0,0 @@ -typedef struct hfsplus_codemap { - unsigned short illegal_code; - unsigned short first_code; - unsigned short second_code; -} hfsplus_codemap_t; - -/* - * cf. http://developer.apple.com/technotes/tn/tn1150table.html - * - */ -static hfsplus_codemap_t mapHFSPlusUnicode[] = { - {0x00C0, 0x0041, 0x0300}, - {0x00C1, 0x0041, 0x0301}, - {0x00C2, 0x0041, 0x0302}, - {0x00C3, 0x0041, 0x0303}, - {0x00C4, 0x0041, 0x0308}, - {0x00C5, 0x0041, 0x030A}, - {0x0100, 0x0041, 0x0304}, - {0x0102, 0x0041, 0x0306}, - {0x0104, 0x0041, 0x0328}, - {0x01CD, 0x0041, 0x030C}, - {0x0200, 0x0041, 0x030F}, - {0x0202, 0x0041, 0x0311}, - {0x1E00, 0x0041, 0x0325}, - {0x1EA0, 0x0041, 0x0323}, - {0x1EA2, 0x0041, 0x0309}, - {0x1E02, 0x0042, 0x0307}, - {0x1E04, 0x0042, 0x0323}, - {0x1E06, 0x0042, 0x0331}, - {0x00C7, 0x0043, 0x0327}, - {0x0106, 0x0043, 0x0301}, - {0x0108, 0x0043, 0x0302}, - {0x010A, 0x0043, 0x0307}, - {0x010C, 0x0043, 0x030C}, - {0x010E, 0x0044, 0x030C}, - {0x1E0A, 0x0044, 0x0307}, - {0x1E0C, 0x0044, 0x0323}, - {0x1E0E, 0x0044, 0x0331}, - {0x1E10, 0x0044, 0x0327}, - {0x1E12, 0x0044, 0x032D}, - {0x00C8, 0x0045, 0x0300}, - {0x00C9, 0x0045, 0x0301}, - {0x00CA, 0x0045, 0x0302}, - {0x00CB, 0x0045, 0x0308}, - {0x0112, 0x0045, 0x0304}, - {0x0114, 0x0045, 0x0306}, - {0x0116, 0x0045, 0x0307}, - {0x0118, 0x0045, 0x0328}, - {0x011A, 0x0045, 0x030C}, - {0x0204, 0x0045, 0x030F}, - {0x0206, 0x0045, 0x0311}, - {0x1E18, 0x0045, 0x032D}, - {0x1E1A, 0x0045, 0x0330}, - {0x1EB8, 0x0045, 0x0323}, - {0x1EBA, 0x0045, 0x0309}, - {0x1EBC, 0x0045, 0x0303}, - {0x1E1E, 0x0046, 0x0307}, - {0x011C, 0x0047, 0x0302}, - {0x011E, 0x0047, 0x0306}, - {0x0120, 0x0047, 0x0307}, - {0x0122, 0x0047, 0x0327}, - {0x01E6, 0x0047, 0x030C}, - {0x01F4, 0x0047, 0x0301}, - {0x1E20, 0x0047, 0x0304}, - {0x0124, 0x0048, 0x0302}, - {0x1E22, 0x0048, 0x0307}, - {0x1E24, 0x0048, 0x0323}, - {0x1E26, 0x0048, 0x0308}, - {0x1E28, 0x0048, 0x0327}, - {0x1E2A, 0x0048, 0x032E}, - {0x00CC, 0x0049, 0x0300}, - {0x00CD, 0x0049, 0x0301}, - {0x00CE, 0x0049, 0x0302}, - {0x00CF, 0x0049, 0x0308}, - {0x0128, 0x0049, 0x0303}, - {0x012A, 0x0049, 0x0304}, - {0x012C, 0x0049, 0x0306}, - {0x012E, 0x0049, 0x0328}, - {0x0130, 0x0049, 0x0307}, - {0x01CF, 0x0049, 0x030C}, - {0x0208, 0x0049, 0x030F}, - {0x020A, 0x0049, 0x0311}, - {0x1E2C, 0x0049, 0x0330}, - {0x1EC8, 0x0049, 0x0309}, - {0x1ECA, 0x0049, 0x0323}, - {0x0134, 0x004A, 0x0302}, - {0x0136, 0x004B, 0x0327}, - {0x01E8, 0x004B, 0x030C}, - {0x1E30, 0x004B, 0x0301}, - {0x1E32, 0x004B, 0x0323}, - {0x1E34, 0x004B, 0x0331}, - {0x0139, 0x004C, 0x0301}, - {0x013B, 0x004C, 0x0327}, - {0x013D, 0x004C, 0x030C}, - {0x1E36, 0x004C, 0x0323}, - {0x1E3A, 0x004C, 0x0331}, - {0x1E3C, 0x004C, 0x032D}, - {0x1E3E, 0x004D, 0x0301}, - {0x1E40, 0x004D, 0x0307}, - {0x1E42, 0x004D, 0x0323}, - {0x00D1, 0x004E, 0x0303}, - {0x0143, 0x004E, 0x0301}, - {0x0145, 0x004E, 0x0327}, - {0x0147, 0x004E, 0x030C}, - {0x1E44, 0x004E, 0x0307}, - {0x1E46, 0x004E, 0x0323}, - {0x1E48, 0x004E, 0x0331}, - {0x1E4A, 0x004E, 0x032D}, - {0x00D2, 0x004F, 0x0300}, - {0x00D3, 0x004F, 0x0301}, - {0x00D4, 0x004F, 0x0302}, - {0x00D5, 0x004F, 0x0303}, - {0x00D6, 0x004F, 0x0308}, - {0x014C, 0x004F, 0x0304}, - {0x014E, 0x004F, 0x0306}, - {0x0150, 0x004F, 0x030B}, - {0x01A0, 0x004F, 0x031B}, - {0x01D1, 0x004F, 0x030C}, - {0x01EA, 0x004F, 0x0328}, - {0x020C, 0x004F, 0x030F}, - {0x020E, 0x004F, 0x0311}, - {0x1ECC, 0x004F, 0x0323}, - {0x1ECE, 0x004F, 0x0309}, - {0x1E54, 0x0050, 0x0301}, - {0x1E56, 0x0050, 0x0307}, - {0x0154, 0x0052, 0x0301}, - {0x0156, 0x0052, 0x0327}, - {0x0158, 0x0052, 0x030C}, - {0x0210, 0x0052, 0x030F}, - {0x0212, 0x0052, 0x0311}, - {0x1E58, 0x0052, 0x0307}, - {0x1E5A, 0x0052, 0x0323}, - {0x1E5E, 0x0052, 0x0331}, - {0x015A, 0x0053, 0x0301}, - {0x015C, 0x0053, 0x0302}, - {0x015E, 0x0053, 0x0327}, - {0x0160, 0x0053, 0x030C}, - {0x1E60, 0x0053, 0x0307}, - {0x1E62, 0x0053, 0x0323}, - {0x0162, 0x0054, 0x0327}, - {0x0164, 0x0054, 0x030C}, - {0x1E6A, 0x0054, 0x0307}, - {0x1E6C, 0x0054, 0x0323}, - {0x1E6E, 0x0054, 0x0331}, - {0x1E70, 0x0054, 0x032D}, - {0x00D9, 0x0055, 0x0300}, - {0x00DA, 0x0055, 0x0301}, - {0x00DB, 0x0055, 0x0302}, - {0x00DC, 0x0055, 0x0308}, - {0x0168, 0x0055, 0x0303}, - {0x016A, 0x0055, 0x0304}, - {0x016C, 0x0055, 0x0306}, - {0x016E, 0x0055, 0x030A}, - {0x0170, 0x0055, 0x030B}, - {0x0172, 0x0055, 0x0328}, - {0x01AF, 0x0055, 0x031B}, - {0x01D3, 0x0055, 0x030C}, - {0x0214, 0x0055, 0x030F}, - {0x0216, 0x0055, 0x0311}, - {0x1E72, 0x0055, 0x0324}, - {0x1E74, 0x0055, 0x0330}, - {0x1E76, 0x0055, 0x032D}, - {0x1EE4, 0x0055, 0x0323}, - {0x1EE6, 0x0055, 0x0309}, - {0x1E7C, 0x0056, 0x0303}, - {0x1E7E, 0x0056, 0x0323}, - {0x0174, 0x0057, 0x0302}, - {0x1E80, 0x0057, 0x0300}, - {0x1E82, 0x0057, 0x0301}, - {0x1E84, 0x0057, 0x0308}, - {0x1E86, 0x0057, 0x0307}, - {0x1E88, 0x0057, 0x0323}, - {0x1E8A, 0x0058, 0x0307}, - {0x1E8C, 0x0058, 0x0308}, - {0x00DD, 0x0059, 0x0301}, - {0x0176, 0x0059, 0x0302}, - {0x0178, 0x0059, 0x0308}, - {0x1E8E, 0x0059, 0x0307}, - {0x1EF2, 0x0059, 0x0300}, - {0x1EF4, 0x0059, 0x0323}, - {0x1EF6, 0x0059, 0x0309}, - {0x1EF8, 0x0059, 0x0303}, - {0x0179, 0x005A, 0x0301}, - {0x017B, 0x005A, 0x0307}, - {0x017D, 0x005A, 0x030C}, - {0x1E90, 0x005A, 0x0302}, - {0x1E92, 0x005A, 0x0323}, - {0x1E94, 0x005A, 0x0331}, - {0x00E0, 0x0061, 0x0300}, - {0x00E1, 0x0061, 0x0301}, - {0x00E2, 0x0061, 0x0302}, - {0x00E3, 0x0061, 0x0303}, - {0x00E4, 0x0061, 0x0308}, - {0x00E5, 0x0061, 0x030A}, - {0x0101, 0x0061, 0x0304}, - {0x0103, 0x0061, 0x0306}, - {0x0105, 0x0061, 0x0328}, - {0x01CE, 0x0061, 0x030C}, - {0x0201, 0x0061, 0x030F}, - {0x0203, 0x0061, 0x0311}, - {0x1E01, 0x0061, 0x0325}, - {0x1EA1, 0x0061, 0x0323}, - {0x1EA3, 0x0061, 0x0309}, - {0x1E03, 0x0062, 0x0307}, - {0x1E05, 0x0062, 0x0323}, - {0x1E07, 0x0062, 0x0331}, - {0x00E7, 0x0063, 0x0327}, - {0x0107, 0x0063, 0x0301}, - {0x0109, 0x0063, 0x0302}, - {0x010B, 0x0063, 0x0307}, - {0x010D, 0x0063, 0x030C}, - {0x010F, 0x0064, 0x030C}, - {0x1E0B, 0x0064, 0x0307}, - {0x1E0D, 0x0064, 0x0323}, - {0x1E0F, 0x0064, 0x0331}, - {0x1E11, 0x0064, 0x0327}, - {0x1E13, 0x0064, 0x032D}, - {0x00E8, 0x0065, 0x0300}, - {0x00E9, 0x0065, 0x0301}, - {0x00EA, 0x0065, 0x0302}, - {0x00EB, 0x0065, 0x0308}, - {0x0113, 0x0065, 0x0304}, - {0x0115, 0x0065, 0x0306}, - {0x0117, 0x0065, 0x0307}, - {0x0119, 0x0065, 0x0328}, - {0x011B, 0x0065, 0x030C}, - {0x0205, 0x0065, 0x030F}, - {0x0207, 0x0065, 0x0311}, - {0x1E19, 0x0065, 0x032D}, - {0x1E1B, 0x0065, 0x0330}, - {0x1EB9, 0x0065, 0x0323}, - {0x1EBB, 0x0065, 0x0309}, - {0x1EBD, 0x0065, 0x0303}, - {0x1E1F, 0x0066, 0x0307}, - {0x011D, 0x0067, 0x0302}, - {0x011F, 0x0067, 0x0306}, - {0x0121, 0x0067, 0x0307}, - {0x0123, 0x0067, 0x0327}, - {0x01E7, 0x0067, 0x030C}, - {0x01F5, 0x0067, 0x0301}, - {0x1E21, 0x0067, 0x0304}, - {0x0125, 0x0068, 0x0302}, - {0x1E23, 0x0068, 0x0307}, - {0x1E25, 0x0068, 0x0323}, - {0x1E27, 0x0068, 0x0308}, - {0x1E29, 0x0068, 0x0327}, - {0x1E2B, 0x0068, 0x032E}, - {0x1E96, 0x0068, 0x0331}, - {0x00EC, 0x0069, 0x0300}, - {0x00ED, 0x0069, 0x0301}, - {0x00EE, 0x0069, 0x0302}, - {0x00EF, 0x0069, 0x0308}, - {0x0129, 0x0069, 0x0303}, - {0x012B, 0x0069, 0x0304}, - {0x012D, 0x0069, 0x0306}, - {0x012F, 0x0069, 0x0328}, - {0x01D0, 0x0069, 0x030C}, - {0x0209, 0x0069, 0x030F}, - {0x020B, 0x0069, 0x0311}, - {0x1E2D, 0x0069, 0x0330}, - {0x1EC9, 0x0069, 0x0309}, - {0x1ECB, 0x0069, 0x0323}, - {0x0135, 0x006A, 0x0302}, - {0x01F0, 0x006A, 0x030C}, - {0x0137, 0x006B, 0x0327}, - {0x01E9, 0x006B, 0x030C}, - {0x1E31, 0x006B, 0x0301}, - {0x1E33, 0x006B, 0x0323}, - {0x1E35, 0x006B, 0x0331}, - {0x013A, 0x006C, 0x0301}, - {0x013C, 0x006C, 0x0327}, - {0x013E, 0x006C, 0x030C}, - {0x1E37, 0x006C, 0x0323}, - {0x1E3B, 0x006C, 0x0331}, - {0x1E3D, 0x006C, 0x032D}, - {0x1E3F, 0x006D, 0x0301}, - {0x1E41, 0x006D, 0x0307}, - {0x1E43, 0x006D, 0x0323}, - {0x00F1, 0x006E, 0x0303}, - {0x0144, 0x006E, 0x0301}, - {0x0146, 0x006E, 0x0327}, - {0x0148, 0x006E, 0x030C}, - {0x1E45, 0x006E, 0x0307}, - {0x1E47, 0x006E, 0x0323}, - {0x1E49, 0x006E, 0x0331}, - {0x1E4B, 0x006E, 0x032D}, - {0x00F2, 0x006F, 0x0300}, - {0x00F3, 0x006F, 0x0301}, - {0x00F4, 0x006F, 0x0302}, - {0x00F5, 0x006F, 0x0303}, - {0x00F6, 0x006F, 0x0308}, - {0x014D, 0x006F, 0x0304}, - {0x014F, 0x006F, 0x0306}, - {0x0151, 0x006F, 0x030B}, - {0x01A1, 0x006F, 0x031B}, - {0x01D2, 0x006F, 0x030C}, - {0x01EB, 0x006F, 0x0328}, - {0x020D, 0x006F, 0x030F}, - {0x020F, 0x006F, 0x0311}, - {0x1ECD, 0x006F, 0x0323}, - {0x1ECF, 0x006F, 0x0309}, - {0x1E55, 0x0070, 0x0301}, - {0x1E57, 0x0070, 0x0307}, - {0x0155, 0x0072, 0x0301}, - {0x0157, 0x0072, 0x0327}, - {0x0159, 0x0072, 0x030C}, - {0x0211, 0x0072, 0x030F}, - {0x0213, 0x0072, 0x0311}, - {0x1E59, 0x0072, 0x0307}, - {0x1E5B, 0x0072, 0x0323}, - {0x1E5F, 0x0072, 0x0331}, - {0x015B, 0x0073, 0x0301}, - {0x015D, 0x0073, 0x0302}, - {0x015F, 0x0073, 0x0327}, - {0x0161, 0x0073, 0x030C}, - {0x1E61, 0x0073, 0x0307}, - {0x1E63, 0x0073, 0x0323}, - {0x0163, 0x0074, 0x0327}, - {0x0165, 0x0074, 0x030C}, - {0x1E6B, 0x0074, 0x0307}, - {0x1E6D, 0x0074, 0x0323}, - {0x1E6F, 0x0074, 0x0331}, - {0x1E71, 0x0074, 0x032D}, - {0x1E97, 0x0074, 0x0308}, - {0x00F9, 0x0075, 0x0300}, - {0x00FA, 0x0075, 0x0301}, - {0x00FB, 0x0075, 0x0302}, - {0x00FC, 0x0075, 0x0308}, - {0x0169, 0x0075, 0x0303}, - {0x016B, 0x0075, 0x0304}, - {0x016D, 0x0075, 0x0306}, - {0x016F, 0x0075, 0x030A}, - {0x0171, 0x0075, 0x030B}, - {0x0173, 0x0075, 0x0328}, - {0x01B0, 0x0075, 0x031B}, - {0x01D4, 0x0075, 0x030C}, - {0x0215, 0x0075, 0x030F}, - {0x0217, 0x0075, 0x0311}, - {0x1E73, 0x0075, 0x0324}, - {0x1E75, 0x0075, 0x0330}, - {0x1E77, 0x0075, 0x032D}, - {0x1EE5, 0x0075, 0x0323}, - {0x1EE7, 0x0075, 0x0309}, - {0x1E7D, 0x0076, 0x0303}, - {0x1E7F, 0x0076, 0x0323}, - {0x0175, 0x0077, 0x0302}, - {0x1E81, 0x0077, 0x0300}, - {0x1E83, 0x0077, 0x0301}, - {0x1E85, 0x0077, 0x0308}, - {0x1E87, 0x0077, 0x0307}, - {0x1E89, 0x0077, 0x0323}, - {0x1E98, 0x0077, 0x030A}, - {0x1E8B, 0x0078, 0x0307}, - {0x1E8D, 0x0078, 0x0308}, - {0x00FD, 0x0079, 0x0301}, - {0x00FF, 0x0079, 0x0308}, - {0x0177, 0x0079, 0x0302}, - {0x1E8F, 0x0079, 0x0307}, - {0x1E99, 0x0079, 0x030A}, - {0x1EF3, 0x0079, 0x0300}, - {0x1EF5, 0x0079, 0x0323}, - {0x1EF7, 0x0079, 0x0309}, - {0x1EF9, 0x0079, 0x0303}, - {0x017A, 0x007A, 0x0301}, - {0x017C, 0x007A, 0x0307}, - {0x017E, 0x007A, 0x030C}, - {0x1E91, 0x007A, 0x0302}, - {0x1E93, 0x007A, 0x0323}, - {0x1E95, 0x007A, 0x0331}, - {0x0385, 0x00A8, 0x030D}, - {0x1FC1, 0x00A8, 0x0342}, - {0x1FED, 0x00A8, 0x0300}, - {0x1FEE, 0x00A8, 0x0301}, - {0x01E2, 0x00C6, 0x0304}, - {0x01FC, 0x00C6, 0x0301}, - {0x01FE, 0x00D8, 0x0301}, - {0x01E3, 0x00E6, 0x0304}, - {0x01FD, 0x00E6, 0x0301}, - {0x01FF, 0x00F8, 0x0301}, - {0x1E9B, 0x017F, 0x0307}, - {0x04DA, 0x018F, 0x0308}, - {0x04EA, 0x019F, 0x0308}, - {0x01EE, 0x01B7, 0x030C}, - {0x04DB, 0x0259, 0x0308}, - {0x04EB, 0x0275, 0x0308}, - {0x01EF, 0x0292, 0x030C}, - {0x0310, 0x0306, 0x0307}, - {0x0344, 0x0308, 0x030D}, - {0x0386, 0x0391, 0x030D}, - {0x1F08, 0x0391, 0x0313}, - {0x1F09, 0x0391, 0x0314}, - {0x1FB8, 0x0391, 0x0306}, - {0x1FB9, 0x0391, 0x0304}, - {0x1FBA, 0x0391, 0x0300}, - {0x1FBB, 0x0391, 0x0301}, - {0x1FBC, 0x0391, 0x0345}, - {0x0388, 0x0395, 0x030D}, - {0x1F18, 0x0395, 0x0313}, - {0x1F19, 0x0395, 0x0314}, - {0x1FC8, 0x0395, 0x0300}, - {0x1FC9, 0x0395, 0x0301}, - {0x0389, 0x0397, 0x030D}, - {0x1F28, 0x0397, 0x0313}, - {0x1F29, 0x0397, 0x0314}, - {0x1FCA, 0x0397, 0x0300}, - {0x1FCB, 0x0397, 0x0301}, - {0x1FCC, 0x0397, 0x0345}, - {0x038A, 0x0399, 0x030D}, - {0x03AA, 0x0399, 0x0308}, - {0x1F38, 0x0399, 0x0313}, - {0x1F39, 0x0399, 0x0314}, - {0x1FD8, 0x0399, 0x0306}, - {0x1FD9, 0x0399, 0x0304}, - {0x1FDA, 0x0399, 0x0300}, - {0x1FDB, 0x0399, 0x0301}, - {0x038C, 0x039F, 0x030D}, - {0x1F48, 0x039F, 0x0313}, - {0x1F49, 0x039F, 0x0314}, - {0x1FF8, 0x039F, 0x0300}, - {0x1FF9, 0x039F, 0x0301}, - {0x1FEC, 0x03A1, 0x0314}, - {0x038E, 0x03A5, 0x030D}, - {0x03AB, 0x03A5, 0x0308}, - {0x1F59, 0x03A5, 0x0314}, - {0x1FE8, 0x03A5, 0x0306}, - {0x1FE9, 0x03A5, 0x0304}, - {0x1FEA, 0x03A5, 0x0300}, - {0x1FEB, 0x03A5, 0x0301}, - {0x038F, 0x03A9, 0x030D}, - {0x1F68, 0x03A9, 0x0313}, - {0x1F69, 0x03A9, 0x0314}, - {0x1FFA, 0x03A9, 0x0300}, - {0x1FFB, 0x03A9, 0x0301}, - {0x1FFC, 0x03A9, 0x0345}, - {0x03AC, 0x03B1, 0x030D}, - {0x1F00, 0x03B1, 0x0313}, - {0x1F01, 0x03B1, 0x0314}, - {0x1F70, 0x03B1, 0x0300}, - {0x1F71, 0x03B1, 0x0301}, - {0x1FB0, 0x03B1, 0x0306}, - {0x1FB1, 0x03B1, 0x0304}, - {0x1FB3, 0x03B1, 0x0345}, - {0x1FB6, 0x03B1, 0x0342}, - {0x03AD, 0x03B5, 0x030D}, - {0x1F10, 0x03B5, 0x0313}, - {0x1F11, 0x03B5, 0x0314}, - {0x1F72, 0x03B5, 0x0300}, - {0x1F73, 0x03B5, 0x0301}, - {0x03AE, 0x03B7, 0x030D}, - {0x1F20, 0x03B7, 0x0313}, - {0x1F21, 0x03B7, 0x0314}, - {0x1F74, 0x03B7, 0x0300}, - {0x1F75, 0x03B7, 0x0301}, - {0x1FC3, 0x03B7, 0x0345}, - {0x1FC6, 0x03B7, 0x0342}, - {0x03AF, 0x03B9, 0x030D}, - {0x03CA, 0x03B9, 0x0308}, - {0x1F30, 0x03B9, 0x0313}, - {0x1F31, 0x03B9, 0x0314}, - {0x1F76, 0x03B9, 0x0300}, - {0x1F77, 0x03B9, 0x0301}, - {0x1FD0, 0x03B9, 0x0306}, - {0x1FD1, 0x03B9, 0x0304}, - {0x1FD6, 0x03B9, 0x0342}, - {0x03CC, 0x03BF, 0x030D}, - {0x1F40, 0x03BF, 0x0313}, - {0x1F41, 0x03BF, 0x0314}, - {0x1F78, 0x03BF, 0x0300}, - {0x1F79, 0x03BF, 0x0301}, - {0x1FE4, 0x03C1, 0x0313}, - {0x1FE5, 0x03C1, 0x0314}, - {0x03CB, 0x03C5, 0x0308}, - {0x03CD, 0x03C5, 0x030D}, - {0x1F50, 0x03C5, 0x0313}, - {0x1F51, 0x03C5, 0x0314}, - {0x1F7A, 0x03C5, 0x0300}, - {0x1F7B, 0x03C5, 0x0301}, - {0x1FE0, 0x03C5, 0x0306}, - {0x1FE1, 0x03C5, 0x0304}, - {0x1FE6, 0x03C5, 0x0342}, - {0x03CE, 0x03C9, 0x030D}, - {0x1F60, 0x03C9, 0x0313}, - {0x1F61, 0x03C9, 0x0314}, - {0x1F7C, 0x03C9, 0x0300}, - {0x1F7D, 0x03C9, 0x0301}, - {0x1FF3, 0x03C9, 0x0345}, - {0x1FF6, 0x03C9, 0x0342}, - {0x03D3, 0x03D2, 0x030D}, - {0x03D4, 0x03D2, 0x0308}, - {0x0407, 0x0406, 0x0308}, - {0x04D0, 0x0410, 0x0306}, - {0x04D2, 0x0410, 0x0308}, - {0x0403, 0x0413, 0x0301}, - {0x0401, 0x0415, 0x0308}, - {0x04D6, 0x0415, 0x0306}, - {0x04C1, 0x0416, 0x0306}, - {0x04DC, 0x0416, 0x0308}, - {0x04DE, 0x0417, 0x0308}, - {0x0419, 0x0418, 0x0306}, - {0x04E2, 0x0418, 0x0304}, - {0x04E4, 0x0418, 0x0308}, - {0x040C, 0x041A, 0x0301}, - {0x04E6, 0x041E, 0x0308}, - {0x040E, 0x0423, 0x0306}, - {0x04EE, 0x0423, 0x0304}, - {0x04F0, 0x0423, 0x0308}, - {0x04F2, 0x0423, 0x030B}, - {0x04F4, 0x0427, 0x0308}, - {0x04F8, 0x042B, 0x0308}, - {0x04D1, 0x0430, 0x0306}, - {0x04D3, 0x0430, 0x0308}, - {0x0453, 0x0433, 0x0301}, - {0x0451, 0x0435, 0x0308}, - {0x04D7, 0x0435, 0x0306}, - {0x04C2, 0x0436, 0x0306}, - {0x04DD, 0x0436, 0x0308}, - {0x04DF, 0x0437, 0x0308}, - {0x0439, 0x0438, 0x0306}, - {0x04E3, 0x0438, 0x0304}, - {0x04E5, 0x0438, 0x0308}, - {0x045C, 0x043A, 0x0301}, - {0x04E7, 0x043E, 0x0308}, - {0x045E, 0x0443, 0x0306}, - {0x04EF, 0x0443, 0x0304}, - {0x04F1, 0x0443, 0x0308}, - {0x04F3, 0x0443, 0x030B}, - {0x04F5, 0x0447, 0x0308}, - {0x04F9, 0x044B, 0x0308}, - {0x0457, 0x0456, 0x0308}, - {0x0476, 0x0474, 0x030F}, - {0x0477, 0x0475, 0x030F}, - {0xFB2E, 0x05D0, 0x05B7}, - {0xFB2F, 0x05D0, 0x05B8}, - {0xFB30, 0x05D0, 0x05BC}, - {0xFB31, 0x05D1, 0x05BC}, - {0xFB4C, 0x05D1, 0x05BF}, - {0xFB32, 0x05D2, 0x05BC}, - {0xFB33, 0x05D3, 0x05BC}, - {0xFB34, 0x05D4, 0x05BC}, - {0xFB35, 0x05D5, 0x05BC}, - {0xFB4B, 0x05D5, 0x05B9}, - {0xFB36, 0x05D6, 0x05BC}, - {0xFB38, 0x05D8, 0x05BC}, - {0xFB39, 0x05D9, 0x05BC}, - {0xFB3A, 0x05DA, 0x05BC}, - {0xFB3B, 0x05DB, 0x05BC}, - {0xFB4D, 0x05DB, 0x05BF}, - {0xFB3C, 0x05DC, 0x05BC}, - {0xFB3E, 0x05DE, 0x05BC}, - {0xFB40, 0x05E0, 0x05BC}, - {0xFB41, 0x05E1, 0x05BC}, - {0xFB43, 0x05E3, 0x05BC}, - {0xFB44, 0x05E4, 0x05BC}, - {0xFB4E, 0x05E4, 0x05BF}, - {0xFB46, 0x05E6, 0x05BC}, - {0xFB47, 0x05E7, 0x05BC}, - {0xFB48, 0x05E8, 0x05BC}, - {0xFB2A, 0x05E9, 0x05C1}, - {0xFB2B, 0x05E9, 0x05C2}, - {0xFB49, 0x05E9, 0x05BC}, - {0xFB4A, 0x05EA, 0x05BC}, - {0xFB1F, 0x05F2, 0x05B7}, - {0x0958, 0x0915, 0x093C}, - {0x0959, 0x0916, 0x093C}, - {0x095A, 0x0917, 0x093C}, - {0x095B, 0x091C, 0x093C}, - {0x095C, 0x0921, 0x093C}, - {0x095D, 0x0922, 0x093C}, - {0x0929, 0x0928, 0x093C}, - {0x095E, 0x092B, 0x093C}, - {0x095F, 0x092F, 0x093C}, - {0x0931, 0x0930, 0x093C}, - {0x0934, 0x0933, 0x093C}, - {0x09DC, 0x09A1, 0x09BC}, - {0x09DD, 0x09A2, 0x09BC}, - {0x09B0, 0x09AC, 0x09BC}, - {0x09DF, 0x09AF, 0x09BC}, - {0x09CB, 0x09C7, 0x09BE}, - {0x09CC, 0x09C7, 0x09D7}, - {0x0A59, 0x0A16, 0x0A3C}, - {0x0A5A, 0x0A17, 0x0A3C}, - {0x0A5B, 0x0A1C, 0x0A3C}, - {0x0A5C, 0x0A21, 0x0A3C}, - {0x0A5E, 0x0A2B, 0x0A3C}, - {0x0B5C, 0x0B21, 0x0B3C}, - {0x0B5D, 0x0B22, 0x0B3C}, - {0x0B5F, 0x0B2F, 0x0B3C}, - {0x0B48, 0x0B47, 0x0B56}, - {0x0B4B, 0x0B47, 0x0B3E}, - {0x0B4C, 0x0B47, 0x0B57}, - {0x0B94, 0x0B92, 0x0BD7}, - {0x0BCA, 0x0BC6, 0x0BBE}, - {0x0BCC, 0x0BC6, 0x0BD7}, - {0x0BCB, 0x0BC7, 0x0BBE}, - {0x0C48, 0x0C46, 0x0C56}, - {0x0CC0, 0x0CBF, 0x0CD5}, - {0x0CC7, 0x0CC6, 0x0CD5}, - {0x0CC8, 0x0CC6, 0x0CD6}, - {0x0CCA, 0x0CC6, 0x0CC2}, - {0x0D4A, 0x0D46, 0x0D3E}, - {0x0D4C, 0x0D46, 0x0D57}, - {0x0D4B, 0x0D47, 0x0D3E}, - {0x0E33, 0x0E4D, 0x0E32}, - {0x0EB3, 0x0ECD, 0x0EB2}, - {0x0F69, 0x0F40, 0x0FB5}, - {0x0F43, 0x0F42, 0x0FB7}, - {0x0F4D, 0x0F4C, 0x0FB7}, - {0x0F52, 0x0F51, 0x0FB7}, - {0x0F57, 0x0F56, 0x0FB7}, - {0x0F5C, 0x0F5B, 0x0FB7}, - {0x0F73, 0x0F72, 0x0F71}, - {0x0F75, 0x0F74, 0x0F71}, - {0x0F81, 0x0F80, 0x0F71}, - {0x0FB9, 0x0F90, 0x0FB5}, - {0x0F93, 0x0F92, 0x0FB7}, - {0x0F9D, 0x0F9C, 0x0FB7}, - {0x0FA2, 0x0FA1, 0x0FB7}, - {0x0FA7, 0x0FA6, 0x0FB7}, - {0x0FAC, 0x0FAB, 0x0FB7}, - {0x0F76, 0x0FB2, 0x0F80}, - {0x0F78, 0x0FB3, 0x0F80}, - {0x1FCD, 0x1FBF, 0x0300}, - {0x1FCE, 0x1FBF, 0x0301}, - {0x1FCF, 0x1FBF, 0x0342}, - {0x1FDD, 0x1FFE, 0x0300}, - {0x1FDE, 0x1FFE, 0x0301}, - {0x1FDF, 0x1FFE, 0x0342}, - {0x3094, 0x3046, 0x3099}, - {0x304C, 0x304B, 0x3099}, - {0x304E, 0x304D, 0x3099}, - {0x3050, 0x304F, 0x3099}, - {0x3052, 0x3051, 0x3099}, - {0x3054, 0x3053, 0x3099}, - {0x3056, 0x3055, 0x3099}, - {0x3058, 0x3057, 0x3099}, - {0x305A, 0x3059, 0x3099}, - {0x305C, 0x305B, 0x3099}, - {0x305E, 0x305D, 0x3099}, - {0x3060, 0x305F, 0x3099}, - {0x3062, 0x3061, 0x3099}, - {0x3065, 0x3064, 0x3099}, - {0x3067, 0x3066, 0x3099}, - {0x3069, 0x3068, 0x3099}, - {0x3070, 0x306F, 0x3099}, - {0x3071, 0x306F, 0x309A}, - {0x3073, 0x3072, 0x3099}, - {0x3074, 0x3072, 0x309A}, - {0x3076, 0x3075, 0x3099}, - {0x3077, 0x3075, 0x309A}, - {0x3079, 0x3078, 0x3099}, - {0x307A, 0x3078, 0x309A}, - {0x307C, 0x307B, 0x3099}, - {0x307D, 0x307B, 0x309A}, - {0x309E, 0x309D, 0x3099}, - {0x30F4, 0x30A6, 0x3099}, - {0x30AC, 0x30AB, 0x3099}, - {0x30AE, 0x30AD, 0x3099}, - {0x30B0, 0x30AF, 0x3099}, - {0x30B2, 0x30B1, 0x3099}, - {0x30B4, 0x30B3, 0x3099}, - {0x30B6, 0x30B5, 0x3099}, - {0x30B8, 0x30B7, 0x3099}, - {0x30BA, 0x30B9, 0x3099}, - {0x30BC, 0x30BB, 0x3099}, - {0x30BE, 0x30BD, 0x3099}, - {0x30C0, 0x30BF, 0x3099}, - {0x30C2, 0x30C1, 0x3099}, - {0x30C5, 0x30C4, 0x3099}, - {0x30C7, 0x30C6, 0x3099}, - {0x30C9, 0x30C8, 0x3099}, - {0x30D0, 0x30CF, 0x3099}, - {0x30D1, 0x30CF, 0x309A}, - {0x30D3, 0x30D2, 0x3099}, - {0x30D4, 0x30D2, 0x309A}, - {0x30D6, 0x30D5, 0x3099}, - {0x30D7, 0x30D5, 0x309A}, - {0x30D9, 0x30D8, 0x3099}, - {0x30DA, 0x30D8, 0x309A}, - {0x30DC, 0x30DB, 0x3099}, - {0x30DD, 0x30DB, 0x309A}, - {0x30F7, 0x30EF, 0x3099}, - {0x30F8, 0x30F0, 0x3099}, - {0x30F9, 0x30F1, 0x3099}, - {0x30FA, 0x30F2, 0x3099}, - {0x30FE, 0x30FD, 0x3099}, -}; Copied: trunk/teraterm/teraterm/uni_combining.map (from rev 6513, trunk/teraterm/teraterm/hfs_plus.map) =================================================================== --- trunk/teraterm/teraterm/uni_combining.map (rev 0) +++ trunk/teraterm/teraterm/uni_combining.map 2016-10-27 03:06:43 UTC (rev 6514) @@ -0,0 +1,686 @@ +typedef struct combining_map { + unsigned short precomposed; + unsigned short first_code; + unsigned short second_code; +} combining_map_t; + +/* + * cf. http://developer.apple.com/technotes/tn/tn1150table.html + * + */ +static combining_map_t mapCombiningToPrecomposed[] = { + {0x00C0, 0x0041, 0x0300}, + {0x00C1, 0x0041, 0x0301}, + {0x00C2, 0x0041, 0x0302}, + {0x00C3, 0x0041, 0x0303}, + {0x00C4, 0x0041, 0x0308}, + {0x00C5, 0x0041, 0x030A}, + {0x0100, 0x0041, 0x0304}, + {0x0102, 0x0041, 0x0306}, + {0x0104, 0x0041, 0x0328}, + {0x01CD, 0x0041, 0x030C}, + {0x0200, 0x0041, 0x030F}, + {0x0202, 0x0041, 0x0311}, + {0x1E00, 0x0041, 0x0325}, + {0x1EA0, 0x0041, 0x0323}, + {0x1EA2, 0x0041, 0x0309}, + {0x1E02, 0x0042, 0x0307}, + {0x1E04, 0x0042, 0x0323}, + {0x1E06, 0x0042, 0x0331}, + {0x00C7, 0x0043, 0x0327}, + {0x0106, 0x0043, 0x0301}, + {0x0108, 0x0043, 0x0302}, + {0x010A, 0x0043, 0x0307}, + {0x010C, 0x0043, 0x030C}, + {0x010E, 0x0044, 0x030C}, + {0x1E0A, 0x0044, 0x0307}, + {0x1E0C, 0x0044, 0x0323}, + {0x1E0E, 0x0044, 0x0331}, + {0x1E10, 0x0044, 0x0327}, + {0x1E12, 0x0044, 0x032D}, + {0x00C8, 0x0045, 0x0300}, + {0x00C9, 0x0045, 0x0301}, + {0x00CA, 0x0045, 0x0302}, + {0x00CB, 0x0045, 0x0308}, + {0x0112, 0x0045, 0x0304}, + {0x0114, 0x0045, 0x0306}, + {0x0116, 0x0045, 0x0307}, + {0x0118, 0x0045, 0x0328}, + {0x011A, 0x0045, 0x030C}, + {0x0204, 0x0045, 0x030F}, + {0x0206, 0x0045, 0x0311}, + {0x1E18, 0x0045, 0x032D}, + {0x1E1A, 0x0045, 0x0330}, + {0x1EB8, 0x0045, 0x0323}, + {0x1EBA, 0x0045, 0x0309}, + {0x1EBC, 0x0045, 0x0303}, + {0x1E1E, 0x0046, 0x0307}, + {0x011C, 0x0047, 0x0302}, + {0x011E, 0x0047, 0x0306}, + {0x0120, 0x0047, 0x0307}, + {0x0122, 0x0047, 0x0327}, + {0x01E6, 0x0047, 0x030C}, + {0x01F4, 0x0047, 0x0301}, + {0x1E20, 0x0047, 0x0304}, + {0x0124, 0x0048, 0x0302}, + {0x1E22, 0x0048, 0x0307}, + {0x1E24, 0x0048, 0x0323}, + {0x1E26, 0x0048, 0x0308}, + {0x1E28, 0x0048, 0x0327}, + {0x1E2A, 0x0048, 0x032E}, + {0x00CC, 0x0049, 0x0300}, + {0x00CD, 0x0049, 0x0301}, + {0x00CE, 0x0049, 0x0302}, + {0x00CF, 0x0049, 0x0308}, + {0x0128, 0x0049, 0x0303}, + {0x012A, 0x0049, 0x0304}, + {0x012C, 0x0049, 0x0306}, + {0x012E, 0x0049, 0x0328}, + {0x0130, 0x0049, 0x0307}, + {0x01CF, 0x0049, 0x030C}, + {0x0208, 0x0049, 0x030F}, + {0x020A, 0x0049, 0x0311}, + {0x1E2C, 0x0049, 0x0330}, + {0x1EC8, 0x0049, 0x0309}, + {0x1ECA, 0x0049, 0x0323}, + {0x0134, 0x004A, 0x0302}, + {0x0136, 0x004B, 0x0327}, + {0x01E8, 0x004B, 0x030C}, + {0x1E30, 0x004B, 0x0301}, + {0x1E32, 0x004B, 0x0323}, + {0x1E34, 0x004B, 0x0331}, + {0x0139, 0x004C, 0x0301}, + {0x013B, 0x004C, 0x0327}, + {0x013D, 0x004C, 0x030C}, + {0x1E36, 0x004C, 0x0323}, + {0x1E3A, 0x004C, 0x0331}, + {0x1E3C, 0x004C, 0x032D}, + {0x1E3E, 0x004D, 0x0301}, + {0x1E40, 0x004D, 0x0307}, + {0x1E42, 0x004D, 0x0323}, + {0x00D1, 0x004E, 0x0303}, + {0x0143, 0x004E, 0x0301}, + {0x0145, 0x004E, 0x0327}, + {0x0147, 0x004E, 0x030C}, + {0x1E44, 0x004E, 0x0307}, + {0x1E46, 0x004E, 0x0323}, + {0x1E48, 0x004E, 0x0331}, + {0x1E4A, 0x004E, 0x032D}, + {0x00D2, 0x004F, 0x0300}, + {0x00D3, 0x004F, 0x0301}, + {0x00D4, 0x004F, 0x0302}, + {0x00D5, 0x004F, 0x0303}, + {0x00D6, 0x004F, 0x0308}, + {0x014C, 0x004F, 0x0304}, + {0x014E, 0x004F, 0x0306}, + {0x0150, 0x004F, 0x030B}, + {0x01A0, 0x004F, 0x031B}, + {0x01D1, 0x004F, 0x030C}, + {0x01EA, 0x004F, 0x0328}, + {0x020C, 0x004F, 0x030F}, + {0x020E, 0x004F, 0x0311}, + {0x1ECC, 0x004F, 0x0323}, + {0x1ECE, 0x004F, 0x0309}, + {0x1E54, 0x0050, 0x0301}, + {0x1E56, 0x0050, 0x0307}, + {0x0154, 0x0052, 0x0301}, + {0x0156, 0x0052, 0x0327}, + {0x0158, 0x0052, 0x030C}, + {0x0210, 0x0052, 0x030F}, + {0x0212, 0x0052, 0x0311}, + {0x1E58, 0x0052, 0x0307}, + {0x1E5A, 0x0052, 0x0323}, + {0x1E5E, 0x0052, 0x0331}, + {0x015A, 0x0053, 0x0301}, + {0x015C, 0x0053, 0x0302}, + {0x015E, 0x0053, 0x0327}, + {0x0160, 0x0053, 0x030C}, + {0x1E60, 0x0053, 0x0307}, + {0x1E62, 0x0053, 0x0323}, + {0x0162, 0x0054, 0x0327}, + {0x0164, 0x0054, 0x030C}, + {0x1E6A, 0x0054, 0x0307}, + {0x1E6C, 0x0054, 0x0323}, + {0x1E6E, 0x0054, 0x0331}, + {0x1E70, 0x0054, 0x032D}, + {0x00D9, 0x0055, 0x0300}, + {0x00DA, 0x0055, 0x0301}, + {0x00DB, 0x0055, 0x0302}, + {0x00DC, 0x0055, 0x0308}, + {0x0168, 0x0055, 0x0303}, + {0x016A, 0x0055, 0x0304}, + {0x016C, 0x0055, 0x0306}, + {0x016E, 0x0055, 0x030A}, + {0x0170, 0x0055, 0x030B}, + {0x0172, 0x0055, 0x0328}, + {0x01AF, 0x0055, 0x031B}, + {0x01D3, 0x0055, 0x030C}, + {0x0214, 0x0055, 0x030F}, + {0x0216, 0x0055, 0x0311}, + {0x1E72, 0x0055, 0x0324}, + {0x1E74, 0x0055, 0x0330}, + {0x1E76, 0x0055, 0x032D}, + {0x1EE4, 0x0055, 0x0323}, + {0x1EE6, 0x0055, 0x0309}, + {0x1E7C, 0x0056, 0x0303}, + {0x1E7E, 0x0056, 0x0323}, + {0x0174, 0x0057, 0x0302}, + {0x1E80, 0x0057, 0x0300}, + {0x1E82, 0x0057, 0x0301}, + {0x1E84, 0x0057, 0x0308}, + {0x1E86, 0x0057, 0x0307}, + {0x1E88, 0x0057, 0x0323}, + {0x1E8A, 0x0058, 0x0307}, + {0x1E8C, 0x0058, 0x0308}, + {0x00DD, 0x0059, 0x0301}, + {0x0176, 0x0059, 0x0302}, + {0x0178, 0x0059, 0x0308}, + {0x1E8E, 0x0059, 0x0307}, + {0x1EF2, 0x0059, 0x0300}, + {0x1EF4, 0x0059, 0x0323}, + {0x1EF6, 0x0059, 0x0309}, + {0x1EF8, 0x0059, 0x0303}, + {0x0179, 0x005A, 0x0301}, + {0x017B, 0x005A, 0x0307}, + {0x017D, 0x005A, 0x030C}, + {0x1E90, 0x005A, 0x0302}, + {0x1E92, 0x005A, 0x0323}, + {0x1E94, 0x005A, 0x0331}, + {0x00E0, 0x0061, 0x0300}, + {0x00E1, 0x0061, 0x0301}, + {0x00E2, 0x0061, 0x0302}, + {0x00E3, 0x0061, 0x0303}, + {0x00E4, 0x0061, 0x0308}, + {0x00E5, 0x0061, 0x030A}, + {0x0101, 0x0061, 0x0304}, + {0x0103, 0x0061, 0x0306}, + {0x0105, 0x0061, 0x0328}, + {0x01CE, 0x0061, 0x030C}, + {0x0201, 0x0061, 0x030F}, + {0x0203, 0x0061, 0x0311}, + {0x1E01, 0x0061, 0x0325}, + {0x1EA1, 0x0061, 0x0323}, + {0x1EA3, 0x0061, 0x0309}, + {0x1E03, 0x0062, 0x0307}, + {0x1E05, 0x0062, 0x0323}, + {0x1E07, 0x0062, 0x0331}, + {0x00E7, 0x0063, 0x0327}, + {0x0107, 0x0063, 0x0301}, + {0x0109, 0x0063, 0x0302}, + {0x010B, 0x0063, 0x0307}, + {0x010D, 0x0063, 0x030C}, + {0x010F, 0x0064, 0x030C}, + {0x1E0B, 0x0064, 0x0307}, + {0x1E0D, 0x0064, 0x0323}, + {0x1E0F, 0x0064, 0x0331}, + {0x1E11, 0x0064, 0x0327}, + {0x1E13, 0x0064, 0x032D}, + {0x00E8, 0x0065, 0x0300}, + {0x00E9, 0x0065, 0x0301}, + {0x00EA, 0x0065, 0x0302}, + {0x00EB, 0x0065, 0x0308}, + {0x0113, 0x0065, 0x0304}, + {0x0115, 0x0065, 0x0306}, + {0x0117, 0x0065, 0x0307}, + {0x0119, 0x0065, 0x0328}, + {0x011B, 0x0065, 0x030C}, + {0x0205, 0x0065, 0x030F}, + {0x0207, 0x0065, 0x0311}, + {0x1E19, 0x0065, 0x032D}, + {0x1E1B, 0x0065, 0x0330}, + {0x1EB9, 0x0065, 0x0323}, + {0x1EBB, 0x0065, 0x0309}, + {0x1EBD, 0x0065, 0x0303}, + {0x1E1F, 0x0066, 0x0307}, + {0x011D, 0x0067, 0x0302}, + {0x011F, 0x0067, 0x0306}, + {0x0121, 0x0067, 0x0307}, + {0x0123, 0x0067, 0x0327}, + {0x01E7, 0x0067, 0x030C}, + {0x01F5, 0x0067, 0x0301}, + {0x1E21, 0x0067, 0x0304}, + {0x0125, 0x0068, 0x0302}, + {0x1E23, 0x0068, 0x0307}, + {0x1E25, 0x0068, 0x0323}, + {0x1E27, 0x0068, 0x0308}, + {0x1E29, 0x0068, 0x0327}, + {0x1E2B, 0x0068, 0x032E}, + {0x1E96, 0x0068, 0x0331}, + {0x00EC, 0x0069, 0x0300}, + {0x00ED, 0x0069, 0x0301}, + {0x00EE, 0x0069, 0x0302}, + {0x00EF, 0x0069, 0x0308}, + {0x0129, 0x0069, 0x0303}, + {0x012B, 0x0069, 0x0304}, + {0x012D, 0x0069, 0x0306}, + {0x012F, 0x0069, 0x0328}, + {0x01D0, 0x0069, 0x030C}, + {0x0209, 0x0069, 0x030F}, + {0x020B, 0x0069, 0x0311}, + {0x1E2D, 0x0069, 0x0330}, + {0x1EC9, 0x0069, 0x0309}, + {0x1ECB, 0x0069, 0x0323}, + {0x0135, 0x006A, 0x0302}, + {0x01F0, 0x006A, 0x030C}, + {0x0137, 0x006B, 0x0327}, + {0x01E9, 0x006B, 0x030C}, + {0x1E31, 0x006B, 0x0301}, + {0x1E33, 0x006B, 0x0323}, + {0x1E35, 0x006B, 0x0331}, + {0x013A, 0x006C, 0x0301}, + {0x013C, 0x006C, 0x0327}, + {0x013E, 0x006C, 0x030C}, + {0x1E37, 0x006C, 0x0323}, + {0x1E3B, 0x006C, 0x0331}, + {0x1E3D, 0x006C, 0x032D}, + {0x1E3F, 0x006D, 0x0301}, + {0x1E41, 0x006D, 0x0307}, + {0x1E43, 0x006D, 0x0323}, + {0x00F1, 0x006E, 0x0303}, + {0x0144, 0x006E, 0x0301}, + {0x0146, 0x006E, 0x0327}, + {0x0148, 0x006E, 0x030C}, + {0x1E45, 0x006E, 0x0307}, + {0x1E47, 0x006E, 0x0323}, + {0x1E49, 0x006E, 0x0331}, + {0x1E4B, 0x006E, 0x032D}, + {0x00F2, 0x006F, 0x0300}, + {0x00F3, 0x006F, 0x0301}, + {0x00F4, 0x006F, 0x0302}, + {0x00F5, 0x006F, 0x0303}, + {0x00F6, 0x006F, 0x0308}, + {0x014D, 0x006F, 0x0304}, + {0x014F, 0x006F, 0x0306}, + {0x0151, 0x006F, 0x030B}, + {0x01A1, 0x006F, 0x031B}, + {0x01D2, 0x006F, 0x030C}, + {0x01EB, 0x006F, 0x0328}, + {0x020D, 0x006F, 0x030F}, + {0x020F, 0x006F, 0x0311}, + {0x1ECD, 0x006F, 0x0323}, + {0x1ECF, 0x006F, 0x0309}, + {0x1E55, 0x0070, 0x0301}, + {0x1E57, 0x0070, 0x0307}, + {0x0155, 0x0072, 0x0301}, + {0x0157, 0x0072, 0x0327}, + {0x0159, 0x0072, 0x030C}, + {0x0211, 0x0072, 0x030F}, + {0x0213, 0x0072, 0x0311}, + {0x1E59, 0x0072, 0x0307}, + {0x1E5B, 0x0072, 0x0323}, + {0x1E5F, 0x0072, 0x0331}, + {0x015B, 0x0073, 0x0301}, + {0x015D, 0x0073, 0x0302}, + {0x015F, 0x0073, 0x0327}, + {0x0161, 0x0073, 0x030C}, + {0x1E61, 0x0073, 0x0307}, + {0x1E63, 0x0073, 0x0323}, + {0x0163, 0x0074, 0x0327}, + {0x0165, 0x0074, 0x030C}, + {0x1E6B, 0x0074, 0x0307}, + {0x1E6D, 0x0074, 0x0323}, + {0x1E6F, 0x0074, 0x0331}, + {0x1E71, 0x0074, 0x032D}, + {0x1E97, 0x0074, 0x0308}, + {0x00F9, 0x0075, 0x0300}, + {0x00FA, 0x0075, 0x0301}, + {0x00FB, 0x0075, 0x0302}, + {0x00FC, 0x0075, 0x0308}, + {0x0169, 0x0075, 0x0303}, + {0x016B, 0x0075, 0x0304}, + {0x016D, 0x0075, 0x0306}, + {0x016F, 0x0075, 0x030A}, + {0x0171, 0x0075, 0x030B}, + {0x0173, 0x0075, 0x0328}, + {0x01B0, 0x0075, 0x031B}, + {0x01D4, 0x0075, 0x030C}, + {0x0215, 0x0075, 0x030F}, + {0x0217, 0x0075, 0x0311}, + {0x1E73, 0x0075, 0x0324}, + {0x1E75, 0x0075, 0x0330}, + {0x1E77, 0x0075, 0x032D}, + {0x1EE5, 0x0075, 0x0323}, + {0x1EE7, 0x0075, 0x0309}, + {0x1E7D, 0x0076, 0x0303}, + {0x1E7F, 0x0076, 0x0323}, + {0x0175, 0x0077, 0x0302}, + {0x1E81, 0x0077, 0x0300}, + {0x1E83, 0x0077, 0x0301}, + {0x1E85, 0x0077, 0x0308}, + {0x1E87, 0x0077, 0x0307}, + {0x1E89, 0x0077, 0x0323}, + {0x1E98, 0x0077, 0x030A}, + {0x1E8B, 0x0078, 0x0307}, + {0x1E8D, 0x0078, 0x0308}, + {0x00FD, 0x0079, 0x0301}, + {0x00FF, 0x0079, 0x0308}, + {0x0177, 0x0079, 0x0302}, + {0x1E8F, 0x0079, 0x0307}, + {0x1E99, 0x0079, 0x030A}, + {0x1EF3, 0x0079, 0x0300}, + {0x1EF5, 0x0079, 0x0323}, + {0x1EF7, 0x0079, 0x0309}, + {0x1EF9, 0x0079, 0x0303}, + {0x017A, 0x007A, 0x0301}, + {0x017C, 0x007A, 0x0307}, + {0x017E, 0x007A, 0x030C}, + {0x1E91, 0x007A, 0x0302}, + {0x1E93, 0x007A, 0x0323}, + {0x1E95, 0x007A, 0x0331}, + {0x0385, 0x00A8, 0x030D}, + {0x1FC1, 0x00A8, 0x0342}, + {0x1FED, 0x00A8, 0x0300}, + {0x1FEE, 0x00A8, 0x0301}, + {0x01E2, 0x00C6, 0x0304}, + {0x01FC, 0x00C6, 0x0301}, + {0x01FE, 0x00D8, 0x0301}, + {0x01E3, 0x00E6, 0x0304}, + {0x01FD, 0x00E6, 0x0301}, + {0x01FF, 0x00F8, 0x0301}, + {0x1E9B, 0x017F, 0x0307}, + {0x04DA, 0x018F, 0x0308}, + {0x04EA, 0x019F, 0x0308}, + {0x01EE, 0x01B7, 0x030C}, + {0x04DB, 0x0259, 0x0308}, + {0x04EB, 0x0275, 0x0308}, + {0x01EF, 0x0292, 0x030C}, + {0x0310, 0x0306, 0x0307}, + {0x0344, 0x0308, 0x030D}, + {0x0386, 0x0391, 0x030D}, + {0x1F08, 0x0391, 0x0313}, + {0x1F09, 0x0391, 0x0314}, + {0x1FB8, 0x0391, 0x0306}, + {0x1FB9, 0x0391, 0x0304}, + {0x1FBA, 0x0391, 0x0300}, + {0x1FBB, 0x0391, 0x0301}, + {0x1FBC, 0x0391, 0x0345}, + {0x0388, 0x0395, 0x030D}, + {0x1F18, 0x0395, 0x0313}, + {0x1F19, 0x0395, 0x0314}, + {0x1FC8, 0x0395, 0x0300}, + {0x1FC9, 0x0395, 0x0301}, + {0x0389, 0x0397, 0x030D}, + {0x1F28, 0x0397, 0x0313}, + {0x1F29, 0x0397, 0x0314}, + {0x1FCA, 0x0397, 0x0300}, + {0x1FCB, 0x0397, 0x0301}, + {0x1FCC, 0x0397, 0x0345}, + {0x038A, 0x0399, 0x030D}, + {0x03AA, 0x0399, 0x0308}, + {0x1F38, 0x0399, 0x0313}, + {0x1F39, 0x0399, 0x0314}, + {0x1FD8, 0x0399, 0x0306}, + {0x1FD9, 0x0399, 0x0304}, + {0x1FDA, 0x0399, 0x0300}, + {0x1FDB, 0x0399, 0x0301}, + {0x038C, 0x039F, 0x030D}, + {0x1F48, 0x039F, 0x0313}, + {0x1F49, 0x039F, 0x0314}, + {0x1FF8, 0x039F, 0x0300}, + {0x1FF9, 0x039F, 0x0301}, + {0x1FEC, 0x03A1, 0x0314}, + {0x038E, 0x03A5, 0x030D}, + {0x03AB, 0x03A5, 0x0308}, + {0x1F59, 0x03A5, 0x0314}, + {0x1FE8, 0x03A5, 0x0306}, + {0x1FE9, 0x03A5, 0x0304}, + {0x1FEA, 0x03A5, 0x0300}, + {0x1FEB, 0x03A5, 0x0301}, + {0x038F, 0x03A9, 0x030D}, + {0x1F68, 0x03A9, 0x0313}, + {0x1F69, 0x03A9, 0x0314}, + {0x1FFA, 0x03A9, 0x0300}, + {0x1FFB, 0x03A9, 0x0301}, + {0x1FFC, 0x03A9, 0x0345}, + {0x03AC, 0x03B1, 0x030D}, + {0x1F00, 0x03B1, 0x0313}, + {0x1F01, 0x03B1, 0x0314}, + {0x1F70, 0x03B1, 0x0300}, + {0x1F71, 0x03B1, 0x0301}, + {0x1FB0, 0x03B1, 0x0306}, + {0x1FB1, 0x03B1, 0x0304}, + {0x1FB3, 0x03B1, 0x0345}, + {0x1FB6, 0x03B1, 0x0342}, + {0x03AD, 0x03B5, 0x030D}, + {0x1F10, 0x03B5, 0x0313}, + {0x1F11, 0x03B5, 0x0314}, + {0x1F72, 0x03B5, 0x0300}, + {0x1F73, 0x03B5, 0x0301}, + {0x03AE, 0x03B7, 0x030D}, + {0x1F20, 0x03B7, 0x0313}, + {0x1F21, 0x03B7, 0x0314}, + {0x1F74, 0x03B7, 0x0300}, + {0x1F75, 0x03B7, 0x0301}, + {0x1FC3, 0x03B7, 0x0345}, + {0x1FC6, 0x03B7, 0x0342}, + {0x03AF, 0x03B9, 0x030D}, + {0x03CA, 0x03B9, 0x0308}, + {0x1F30, 0x03B9, 0x0313}, + {0x1F31, 0x03B9, 0x0314}, + {0x1F76, 0x03B9, 0x0300}, + {0x1F77, 0x03B9, 0x0301}, + {0x1FD0, 0x03B9, 0x0306}, + {0x1FD1, 0x03B9, 0x0304}, + {0x1FD6, 0x03B9, 0x0342}, + {0x03CC, 0x03BF, 0x030D}, + {0x1F40, 0x03BF, 0x0313}, + {0x1F41, 0x03BF, 0x0314}, + {0x1F78, 0x03BF, 0x0300}, + {0x1F79, 0x03BF, 0x0301}, + {0x1FE4, 0x03C1, 0x0313}, + {0x1FE5, 0x03C1, 0x0314}, + {0x03CB, 0x03C5, 0x0308}, + {0x03CD, 0x03C5, 0x030D}, + {0x1F50, 0x03C5, 0x0313}, + {0x1F51, 0x03C5, 0x0314}, + {0x1F7A, 0x03C5, 0x0300}, + {0x1F7B, 0x03C5, 0x0301}, + {0x1FE0, 0x03C5, 0x0306}, + {0x1FE1, 0x03C5, 0x0304}, + {0x1FE6, 0x03C5, 0x0342}, + {0x03CE, 0x03C9, 0x030D}, + {0x1F60, 0x03C9, 0x0313}, + {0x1F61, 0x03C9, 0x0314}, + {0x1F7C, 0x03C9, 0x0300}, + {0x1F7D, 0x03C9, 0x0301}, + {0x1FF3, 0x03C9, 0x0345}, + {0x1FF6, 0x03C9, 0x0342}, + {0x03D3, 0x03D2, 0x030D}, + {0x03D4, 0x03D2, 0x0308}, + {0x0407, 0x0406, 0x0308}, + {0x04D0, 0x0410, 0x0306}, + {0x04D2, 0x0410, 0x0308}, + {0x0403, 0x0413, 0x0301}, + {0x0401, 0x0415, 0x0308}, + {0x04D6, 0x0415, 0x0306}, + {0x04C1, 0x0416, 0x0306}, + {0x04DC, 0x0416, 0x0308}, + {0x04DE, 0x0417, 0x0308}, + {0x0419, 0x0418, 0x0306}, + {0x04E2, 0x0418, 0x0304}, + {0x04E4, 0x0418, 0x0308}, + {0x040C, 0x041A, 0x0301}, + {0x04E6, 0x041E, 0x0308}, + {0x040E, 0x0423, 0x0306}, + {0x04EE, 0x0423, 0x0304}, + {0x04F0, 0x0423, 0x0308}, + {0x04F2, 0x0423, 0x030B}, + {0x04F4, 0x0427, 0x0308}, + {0x04F8, 0x042B, 0x0308}, + {0x04D1, 0x0430, 0x0306}, + {0x04D3, 0x0430, 0x0308}, + {0x0453, 0x0433, 0x0301}, + {0x0451, 0x0435, 0x0308}, + {0x04D7, 0x0435, 0x0306}, + {0x04C2, 0x0436, 0x0306}, + {0x04DD, 0x0436, 0x0308}, + {0x04DF, 0x0437, 0x0308}, + {0x0439, 0x0438, 0x0306}, + {0x04E3, 0x0438, 0x0304}, + {0x04E5, 0x0438, 0x0308}, + {0x045C, 0x043A, 0x0301}, + {0x04E7, 0x043E, 0x0308}, + {0x045E, 0x0443, 0x0306}, + {0x04EF, 0x0443, 0x0304}, + {0x04F1, 0x0443, 0x0308}, + {0x04F3, 0x0443, 0x030B}, + {0x04F5, 0x0447, 0x0308}, + {0x04F9, 0x044B, 0x0308}, + {0x0457, 0x0456, 0x0308}, + {0x0476, 0x0474, 0x030F}, + {0x0477, 0x0475, 0x030F}, + {0xFB2E, 0x05D0, 0x05B7}, + {0xFB2F, 0x05D0, 0x05B8}, + {0xFB30, 0x05D0, 0x05BC}, + {0xFB31, 0x05D1, 0x05BC}, + {0xFB4C, 0x05D1, 0x05BF}, + {0xFB32, 0x05D2, 0x05BC}, + {0xFB33, 0x05D3, 0x05BC}, + {0xFB34, 0x05D4, 0x05BC}, + {0xFB35, 0x05D5, 0x05BC}, + {0xFB4B, 0x05D5, 0x05B9}, + {0xFB36, 0x05D6, 0x05BC}, + {0xFB38, 0x05D8, 0x05BC}, + {0xFB39, 0x05D9, 0x05BC}, + {0xFB3A, 0x05DA, 0x05BC}, + {0xFB3B, 0x05DB, 0x05BC}, + {0xFB4D, 0x05DB, 0x05BF}, + {0xFB3C, 0x05DC, 0x05BC}, + {0xFB3E, 0x05DE, 0x05BC}, + {0xFB40, 0x05E0, 0x05BC}, + {0xFB41, 0x05E1, 0x05BC}, + {0xFB43, 0x05E3, 0x05BC}, + {0xFB44, 0x05E4, 0x05BC}, + {0xFB4E, 0x05E4, 0x05BF}, + {0xFB46, 0x05E6, 0x05BC}, + {0xFB47, 0x05E7, 0x05BC}, + {0xFB48, 0x05E8, 0x05BC}, + {0xFB2A, 0x05E9, 0x05C1}, + {0xFB2B, 0x05E9, 0x05C2}, + {0xFB49, 0x05E9, 0x05BC}, + {0xFB4A, 0x05EA, 0x05BC}, + {0xFB1F, 0x05F2, 0x05B7}, + {0x0958, 0x0915, 0x093C}, + {0x0959, 0x0916, 0x093C}, + {0x095A, 0x0917, 0x093C}, + {0x095B, 0x091C, 0x093C}, + {0x095C, 0x0921, 0x093C}, + {0x095D, 0x0922, 0x093C}, + {0x0929, 0x0928, 0x093C}, + {0x095E, 0x092B, 0x093C}, + {0x095F, 0x092F, 0x093C}, + {0x0931, 0x0930, 0x093C}, + {0x0934, 0x0933, 0x093C}, + {0x09DC, 0x09A1, 0x09BC}, + {0x09DD, 0x09A2, 0x09BC}, + {0x09B0, 0x09AC, 0x09BC}, + {0x09DF, 0x09AF, 0x09BC}, + {0x09CB, 0x09C7, 0x09BE}, + {0x09CC, 0x09C7, 0x09D7}, + {0x0A59, 0x0A16, 0x0A3C}, + {0x0A5A, 0x0A17, 0x0A3C}, + {0x0A5B, 0x0A1C, 0x0A3C}, + {0x0A5C, 0x0A21, 0x0A3C}, + {0x0A5E, 0x0A2B, 0x0A3C}, + {0x0B5C, 0x0B21, 0x0B3C}, + {0x0B5D, 0x0B22, 0x0B3C}, + {0x0B5F, 0x0B2F, 0x0B3C}, + {0x0B48, 0x0B47, 0x0B56}, + {0x0B4B, 0x0B47, 0x0B3E}, + {0x0B4C, 0x0B47, 0x0B57}, + {0x0B94, 0x0B92, 0x0BD7}, + {0x0BCA, 0x0BC6, 0x0BBE}, + {0x0BCC, 0x0BC6, 0x0BD7}, + {0x0BCB, 0x0BC7, 0x0BBE}, + {0x0C48, 0x0C46, 0x0C56}, + {0x0CC0, 0x0CBF, 0x0CD5}, + {0x0CC7, 0x0CC6, 0x0CD5}, + {0x0CC8, 0x0CC6, 0x0CD6}, + {0x0CCA, 0x0CC6, 0x0CC2}, + {0x0D4A, 0x0D46, 0x0D3E}, + {0x0D4C, 0x0D46, 0x0D57}, + {0x0D4B, 0x0D47, 0x0D3E}, + {0x0E33, 0x0E4D, 0x0E32}, + {0x0EB3, 0x0ECD, 0x0EB2}, + {0x0F69, 0x0F40, 0x0FB5}, + {0x0F43, 0x0F42, 0x0FB7}, + {0x0F4D, 0x0F4C, 0x0FB7}, + {0x0F52, 0x0F51, 0x0FB7}, + {0x0F57, 0x0F56, 0x0FB7}, + {0x0F5C, 0x0F5B, 0x0FB7}, + {0x0F73, 0x0F72, 0x0F71}, + {0x0F75, 0x0F74, 0x0F71}, + {0x0F81, 0x0F80, 0x0F71}, + {0x0FB9, 0x0F90, 0x0FB5}, + {0x0F93, 0x0F92, 0x0FB7}, + {0x0F9D, 0x0F9C, 0x0FB7}, + {0x0FA2, 0x0FA1, 0x0FB7}, + {0x0FA7, 0x0FA6, 0x0FB7}, + {0x0FAC, 0x0FAB, 0x0FB7}, + {0x0F76, 0x0FB2, 0x0F80}, + {0x0F78, 0x0FB3, 0x0F80}, + {0x1FCD, 0x1FBF, 0x0300}, + {0x1FCE, 0x1FBF, 0x0301}, + {0x1FCF, 0x1FBF, 0x0342}, + {0x1FDD, 0x1FFE, 0x0300}, + {0x1FDE, 0x1FFE, 0x0301}, + {0x1FDF, 0x1FFE, 0x0342}, + {0x3094, 0x3046, 0x3099}, + {0x304C, 0x304B, 0x3099}, + {0x304E, 0x304D, 0x3099}, + {0x3050, 0x304F, 0x3099}, + {0x3052, 0x3051, 0x3099}, + {0x3054, 0x3053, 0x3099}, + {0x3056, 0x3055, 0x3099}, + {0x3058, 0x3057, 0x3099}, + {0x305A, 0x3059, 0x3099}, + {0x305C, 0x305B, 0x3099}, + {0x305E, 0x305D, 0x3099}, + {0x3060, 0x305F, 0x3099}, + {0x3062, 0x3061, 0x3099}, + {0x3065, 0x3064, 0x3099}, + {0x3067, 0x3066, 0x3099}, + {0x3069, 0x3068, 0x3099}, + {0x3070, 0x306F, 0x3099}, + {0x3071, 0x306F, 0x309A}, + {0x3073, 0x3072, 0x3099}, + {0x3074, 0x3072, 0x309A}, + {0x3076, 0x3075, 0x3099}, + {0x3077, 0x3075, 0x309A}, + {0x3079, 0x3078, 0x3099}, + {0x307A, 0x3078, 0x309A}, + {0x307C, 0x307B, 0x3099}, + {0x307D, 0x307B, 0x309A}, + {0x309E, 0x309D, 0x3099}, + {0x30F4, 0x30A6, 0x3099}, + {0x30AC, 0x30AB, 0x3099}, + {0x30AE, 0x30AD, 0x3099}, + {0x30B0, 0x30AF, 0x3099}, + {0x30B2, 0x30B1, 0x3099}, + {0x30B4, 0x30B3, 0x3099}, + {0x30B6, 0x30B5, 0x3099}, + {0x30B8, 0x30B7, 0x3099}, + {0x30BA, 0x30B9, 0x3099}, + {0x30BC, 0x30BB, 0x3099}, + {0x30BE, 0x30BD, 0x3099}, + {0x30C0, 0x30BF, 0x3099}, + {0x30C2, 0x30C1, 0x3099}, + {0x30C5, 0x30C4, 0x3099}, + {0x30C7, 0x30C6, 0x3099}, + {0x30C9, 0x30C8, 0x3099}, + {0x30D0, 0x30CF, 0x3099}, + {0x30D1, 0x30CF, 0x309A}, + {0x30D3, 0x30D2, 0x3099}, + {0x30D4, 0x30D2, 0x309A}, + {0x30D6, 0x30D5, 0x3099}, + {0x30D7, 0x30D5, 0x309A}, + {0x30D9, 0x30D8, 0x3099}, + {0x30DA, 0x30D8, 0x309A}, + {0x30DC, 0x30DB, 0x3099}, + {0x30DD, 0x30DB, 0x309A}, + {0x30F7, 0x30EF, 0x3099}, + {0x30F8, 0x30F0, 0x3099}, + {0x30F9, 0x30F1, 0x3099}, + {0x30FA, 0x30F2, 0x3099}, + {0x30FE, 0x30FD, 0x3099}, +}; Modified: trunk/teraterm/teraterm/vtterm.c =================================================================== --- trunk/teraterm/teraterm/vtterm.c 2016-10-27 03:06:40 UTC (rev 6513) +++ trunk/teraterm/teraterm/vtterm.c 2016-10-27 03:06:43 UTC (rev 6514) @@ -5187,12 +5187,12 @@ // -// UTF-8 for Mac OS X(HFS plus) +// Unicode Combining Character Support // -#include "hfs_plus.map" +#include "uni_combining.map" -unsigned short GetIllegalUnicode(int start_index, unsigned short first_code, unsigned short code, - hfsplus_codemap_t *table, int tmax) +unsigned short GetPrecomposedChar(int start_index, unsigned short first_code, unsigned short code, + combining_map_t *table, int tmax) { unsigned short result = 0; int i; @@ -5203,7 +5203,7 @@ } if (table[i].second_code == code) { - result = table[i].illegal_code; + result = table[i].precomposed; break; } } @@ -5211,7 +5211,7 @@ return (result); } -int GetIndexOfHFSPlusFirstCode(unsigned short code, hfsplus_codemap_t *table, int tmax) +int GetIndexOfCombiningFirstCode(unsigned short code, combining_map_t *table, int tmax) { int low, mid, high; int index = -1; @@ -5296,13 +5296,13 @@ } // UTF-8\x82Ŏ\xF3\x90M\x83f\x81[\x83^\x82\xF0\x8F\x88\x97\x9D\x82\xB7\x82\xE9 -BOOL ParseFirstUTF8(BYTE b, int hfsplus_mode) +BOOL ParseFirstUTF8(BYTE b, int proc_combining) // returns TRUE if b is processed // (actually allways returns TRUE) { static BYTE buf[3]; static int count = 0; - static int maybe_hfsplus = 0; + static int can_combining = 0; static unsigned int first_code; static int first_code_index; @@ -5317,9 +5317,9 @@ // 1\x83o\x83C\x83g\x96ڂ\xA8\x82\xE6\x82\xD12\x83o\x83C\x83g\x96ڂ\xAAASCII\x82̏ꍇ\x82́A\x82\xB7\x82ׂ\xC4ASCII\x8Fo\x97͂Ƃ\xB7\x82\xE9\x81B // 1\x83o\x83C\x83g\x96ڂ\xAAC1\x90\xA7\x8C䕶\x8E\x9A(0x80-0x9f)\x82̏ꍇ\x82\xE0\x93\xAF\x97l\x81B if (count == 0 || count == 1) { - if (hfsplus_mode == 1 && maybe_hfsplus == 1) { + if (proc_combining == 1 && can_combining == 1) { UnicodeToCP932(first_code); - maybe_hfsplus = 0; + can_combining = 0; } if (count == 1) { @@ -5343,9 +5343,9 @@ if ((buf[0] & 0xe0) == 0xc0) { if ((buf[1] & 0xc0) == 0x80) { - if (hfsplus_mode == 1 && maybe_hfsplus == 1) { + if (proc_combining == 1 && can_combining == 1) { UnicodeToCP932(first_code); - maybe_hfsplus = 0; + can_combining = 0; } code = ((buf[0] & 0x1f) << 6); @@ -5378,32 +5378,32 @@ code |= ((buf[1] & 0x3f) << 6); code |= ((buf[2] & 0x3f)); - if (hfsplus_mode == 1) { - if (maybe_hfsplus == 0) { - if ((first_code_index = GetIndexOfHFSPlusFirstCode( - code, mapHFSPlusUnicode, MAPSIZE(mapHFSPlusUnicode) + if (proc_combining == 1) { + if (can_combining == 0) { + if ((first_code_index = GetIndexOfCombiningFirstCode( + code, mapCombiningToPrecomposed, MAPSIZE(mapCombiningToPrecomposed) )) != -1) { - maybe_hfsplus = 1; + can_combining = 1; first_code = code; count = 0; return (TRUE); } } else { - maybe_hfsplus = 0; - cset = GetIllegalUnicode(first_code_index, first_code, code, mapHFSPlusUnicode, MAPSIZE(mapHFSPlusUnicode)); + can_combining = 0; + cset = GetPrecomposedChar(first_code_index, first_code, code, mapCombiningToPrecomposed, MAPSIZE(mapCombiningToPrecomposed)); if (cset != 0) { // success code = cset; } else { // error // 2\x82߂̕\xB6\x8E\x9A\x82\xAA\x94\xBC\x91\xF7\x93_\x82\xCC1\x95\xB6\x8E\x9A\x96ڂɑ\x8A\x93\x96\x82\xB7\x82\xE9\x8Fꍇ\x82́A\x8Dēx\x8C\x9F\x8D\xF5\x82𑱂\xAF\x82\xE9\x81B(2005.10.15 yutaka) - if ((first_code_index = GetIndexOfHFSPlusFirstCode( - code, mapHFSPlusUnicode, MAPSIZE(mapHFSPlusUnicode) + if ((first_code_index = GetIndexOfCombiningFirstCode( + code, mapCombiningToPrecomposed, MAPSIZE(mapCombiningToPrecomposed) )) != -1) { // 1\x82߂̕\xB6\x8E\x9A\x82͂\xBB\x82̂܂o\x97͂\xB7\x82\xE9 UnicodeToCP932(first_code); - maybe_hfsplus = 1; + can_combining = 1; first_code = code; count = 0; return (TRUE);