Changeset 726

Show
Ignore:
Timestamp:
10/26/07 04:25:44 (7 years ago)
Author:
gyuque
Message:

lang/javascript/romkan-mini/romkan-mini.js

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/romkan-mini/romkan-mini.js

    r724 r726  
    22        vowels: "aiueo", 
    33        cons1: "kgsztdnhbpmyrwfjlx", 
    4         cons2: "qy\u0000ky\u0000sh\u0000sy\u0000ch\u0000ty\u0000cy\u0000gy\u0000jy\u0000zy\u0000ts", 
     4        cons2: "qy\u0000ky\u0000sh\u0000sy\u0000ch\u0000ty\u0000cy\u0000ny\u0000hy\u0000gy\u0000jy\u0000zy\u0000dy\u0000dh\u0000ts", 
    55        con_kanas: [0x304b, 0x304c, 0x3055, 0x3056, 0x305f,  
    66                0x3060, 0x306a, 0x306f, 0x3070, 0x3071,  
     
    99                 21: 2, // shi -> si 
    1010                 41: 4, // chi -> ti 
    11                 102: 4  // tsu -> tu 
     11                142: 4  // tsu -> tu 
    1212        }, 
    1313 
     
    2525        }, 
    2626 
    27         con2_map_y: { 
    28                 0: 'く', 
    29                 1: 'き', 
    30                 2: 'し', 
    31                 3: 'し', 
    32                 4: 'ち', 
    33                 5: 'ち', 
    34                 6: 'ち', 
    35                 7: 'ぎ', 
    36                 8: 'じ', 
    37                 9: 'じ', 
    38         }, 
     27        con2_map_y: 'くきししちちちにひぎじじぢで', 
    3928 
    4029        to_kana: function(s) { 
     
    5342                        return -1; 
    5443 
    55                 if (s.charAt(start) == '-') 
     44                if (s[start] == '-') 
    5645                { 
    5746                        out.unshift('\u30fc'); 
     
    6857                                if (ci >= 0) 
    6958                                { 
    70                                         var ci_nrm = this.ntbl[ci*10+vi]; 
    71                                         if (ci_nrm != void(0)) 
     59                                        var key = ci*10+vi; 
     60                                        var ci_nrm; 
     61                                        if (ci_nrm = this.ntbl[key]) 
    7262                                        { 
    7363                                                c1_normalized = true; 
     
    7767                                        else 
    7868                                        { 
    79                                                 var sp = this.con2_special_tbl[ci*10+vi]; 
     69                                                var sp = this.con2_special_tbl[key]; 
    8070                                                if (sp != void(0)) 
    8171                                                        out.unshift(sp); 
     
    8676                                                } 
    8777 
    88                                                 if (start > 2 && s.charAt(start-2) == s.charAt(start-3)) 
     78                                                if (start > 2 && s[start-2] == s[start-3] && 'n' != s[start-2]) 
    8979                                                { 
    9080                                                        out.unshift('\u3063'); 
     
    10595                                        if (ci == 6 && start > 1) 
    10696                                        { 
    107                                                 if (s.charAt(start - 2) == 'n') 
    108                                                 { 
    109                                                         if (start < 3 || s.charAt(start - 3) != 'n') 
     97                                                if (s[start - 2] == 'n') 
     98                                                { 
     99                                                        if (start < 3 || s[start - 3] != 'n') 
    110100                                                        { 
    111101                                                                out.unshift(this._get_c1v1(-1, vi)); 
     
    116106                                        } 
    117107 
    118                                         if (start > 1 && "lx".indexOf(s.charAt(start-2)) >= 0) 
     108                                        if (start > 1 && "lx".indexOf(s[start-2]) >= 0) 
    119109                                        { 
    120110                                                if (ci == 4 && vi == 2) 
     
    127117                                        out.unshift(this._get_c1v1(ci, vi)); 
    128118 
    129                                         if (start > 1 && s.charAt(start-1) == s.charAt(start-2) && 'n' != s.charAt(start-2)) 
     119                                        if (start > 1 && s[start-1] == s[start-2] && 'n' != s[start-2]) 
    130120                                        { 
    131121                                                out.unshift('\u3063'); 
     
    142132                else 
    143133                { 
    144                         if (s.charAt(start) == 'n') 
     134                        if (s[start] == 'n') 
    145135                        { 
    146136                                out.unshift('\u3093'); 
    147                                 return start - ((s.charAt(start-1) == 'n') ? 2 : 1); 
     137                                return start - ((s[start-1] == 'n') ? 2 : 1); 
    148138                        } 
    149139                } 
    150140 
    151                 out.unshift(s.charAt(start)); 
     141                out.unshift(s[start]); 
    152142 
    153143                return start-1; 
     
    181171                                shift = -1; 
    182172 
    183                         if (ci == 6 || ci == 10 || ci == 11 || ci == 12 || ci == 13) 
     173                        if (ci == 6 || (ci >= 10 && ci <= 13)) 
    184174                                fct = 1; 
    185                         else if (ci == 7 || ci == 8 || ci == 9) 
     175                        else if (ci >= 7 && ci <= 9) 
    186176                                fct = 3; 
    187177 
     
    209199                        return -1; 
    210200 
    211                 var p = tbl.indexOf(s.charAt(start)); 
     201                var p = tbl.indexOf(s[start]); 
    212202                if (p < 0) 
    213203                        return -1;