]> gitweb.fperrin.net Git - Dictionary.git/blob - jars/icu4j-4_4_2-src/tools/misc/src/com/ibm/icu/dev/tool/ime/indic/MalayalamInputMethodDescriptor.java
go
[Dictionary.git] / jars / icu4j-4_4_2-src / tools / misc / src / com / ibm / icu / dev / tool / ime / indic / MalayalamInputMethodDescriptor.java
1 /*\r
2  *******************************************************************************\r
3  * Copyright (C) 2000-2004, International Business Machines Corporation and    *\r
4  * others. All Rights Reserved.                                                *\r
5  *******************************************************************************\r
6  */\r
7 \r
8 package com.ibm.icu.dev.tool.ime.indic;\r
9 \r
10 import java.util.Locale;\r
11 \r
12 public class MalayalamInputMethodDescriptor extends IndicIMDescriptor\r
13 {\r
14     private static final Locale MALAYALAM = new Locale("ml", "IN");\r
15 \r
16     public MalayalamInputMethodDescriptor() {\r
17     super(MALAYALAM, "Malayalam");\r
18     }\r
19 \r
20     private static char[] keyboardMap;\r
21     private static char[][] substitutionTable;\r
22     \r
23     protected IndicInputMethodImpl getImpl() {\r
24     if (keyboardMap == null) {\r
25         keyboardMap = new char[] {\r
26         /* 00 */ '\u0000',\r
27         /* 01 */ '\u0001',\r
28         /* 02 */ '\u0002',\r
29         /* 03 */ '\u0003',\r
30         /* 04 */ '\u0004',\r
31         /* 05 */ '\u0005',\r
32         /* 06 */ '\u0006',\r
33         /* 07 */ '\u0007',\r
34         /* 08 */ '\u0008',\r
35         /* 09 */ '\u0009',\r
36         /* 0A */ '\012',\r
37         /* 0B */ '\u000B',\r
38         /* 0C */ '\u000C',\r
39         /* 0D */ '\015',\r
40         /* 0E */ '\u000E',\r
41         /* 0F */ '\u000F',\r
42         /* 10 */ '\u0010',\r
43         /* 11 */ '\u0011',\r
44         /* 12 */ '\u0012',\r
45         /* 13 */ '\u0013',\r
46         /* 14 */ '\u0014',\r
47         /* 15 */ '\u0015',\r
48         /* 16 */ '\u0016',\r
49         /* 17 */ '\u0017',\r
50         /* 18 */ '\u0018',\r
51         /* 19 */ '\u0019',\r
52         /* 1A */ '\u001A',\r
53         /* 1B */ '\u001B',\r
54         /* 1C */ '\u001C',\r
55         /* 1D */ '\u001D',\r
56         /* 1E */ '\u001E',\r
57         /* 1F */ '\u001F',\r
58         /* 20 */ '\u0020',\r
59         /* 21 */ '\uFFFF',   // '!'\r
60         /* 22 */ '\u0D20',   // '"'\r
61         /* 23 */ '\uFF00',   // '#'\r
62         /* 24 */ '\uFFFF',   // '$'\r
63         /* 25 */ '\uFFFF',   // '%'\r
64         /* 26 */ '\uFFFF',   // '&'\r
65         /* 27 */ '\u0D1F',   // '''\r
66         /* 28 */ '\u0028',   // '('\r
67         /* 29 */ '\u0029',   // ')'\r
68         /* 2A */ '\uFF01',   // '*'\r
69         /* 2B */ '\u0D0B',   // '+'\r
70         /* 2C */ '\u002C',   // ','\r
71         /* 2D */ '\u002D',   // '-'\r
72         /* 2E */ '\u002E',   // '.'\r
73         /* 2F */ '\u0D2F',   // '/'\r
74         /* 30 */ '\u0D66',   // '0'\r
75         /* 31 */ '\u0D67',   // '1'\r
76         /* 32 */ '\u0D68',   // '2'\r
77         /* 33 */ '\u0D69',   // '3'\r
78         /* 34 */ '\u0D6A',   // '4'\r
79         /* 35 */ '\u0D6B',   // '5'\r
80         /* 36 */ '\u0D6C',   // '6'\r
81         /* 37 */ '\u0D6D',   // '7'\r
82         /* 38 */ '\u0D6E',   // '8'\r
83         /* 39 */ '\u0D6F',   // '9'\r
84         /* 3A */ '\u0D1B',   // ':'\r
85         /* 3B */ '\u0D1A',   // ';'\r
86         /* 3C */ '\u0D37',   // '<'\r
87         /* 3D */ '\u0D43',   // '='\r
88         /* 3E */ '\uFFFF',   // '>'\r
89         /* 3F */ '\uFFFF',   // '?'\r
90         /* 40 */ '\uFFFF',   // '@'\r
91         /* 41 */ '\u0D13',   // 'A'\r
92         /* 42 */ '\u0D34',   // 'B'\r
93         /* 43 */ '\u0D23',   // 'C'\r
94         /* 44 */ '\u0D05',   // 'D'\r
95         /* 45 */ '\u0D06',   // 'E'\r
96         /* 46 */ '\u0D07',   // 'F'\r
97         /* 47 */ '\u0D09',   // 'G'\r
98         /* 48 */ '\u0D2B',   // 'H'\r
99         /* 49 */ '\u0D18',   // 'I'\r
100         /* 4A */ '\u0D31',   // 'J'\r
101         /* 4B */ '\u0D16',   // 'K'\r
102         /* 4C */ '\u0D25',   // 'L'\r
103         /* 4D */ '\u0D36',   // 'M'\r
104         /* 4E */ '\u0D33',   // 'N'\r
105         /* 4F */ '\u0D27',   // 'O'\r
106         /* 50 */ '\u0D1D',   // 'P'\r
107         /* 51 */ '\u0D14',   // 'Q'\r
108         /* 52 */ '\u0D08',   // 'R'\r
109         /* 53 */ '\u0D0F',   // 'S'\r
110         /* 54 */ '\u0D0A',   // 'T'\r
111         /* 55 */ '\u0D19',   // 'U'\r
112         /* 56 */ '\uFFFF',   // 'V'\r
113         /* 57 */ '\u0D10',   // 'W'\r
114         /* 58 */ '\uFFFF',   // 'X'\r
115         /* 59 */ '\u0D2D',   // 'Y'\r
116         /* 5A */ '\u0D0E',   // 'Z'\r
117         /* 5B */ '\u0D21',   // '['\r
118         /* 5C */ '\uFFFF',   // '\'\r
119         /* 5D */ '\uFFFF',   // ']' (nukta - no Unicode code value)\r
120         /* 5E */ '\uFFFF',   // '^'\r
121         /* 5F */ '\u0D03',   // '_'\r
122         /* 60 */ '\u0D4A',   // '`'\r
123         /* 61 */ '\u0D4B',   // 'a'\r
124         /* 62 */ '\u0D35',   // 'b'\r
125         /* 63 */ '\u0D2E',   // 'c'\r
126         /* 64 */ '\u0D4D',   // 'd'\r
127         /* 65 */ '\u0D3E',   // 'e'\r
128         /* 66 */ '\u0D3F',   // 'f'\r
129         /* 67 */ '\u0D41',   // 'g'\r
130         /* 68 */ '\u0D2A',   // 'h'\r
131         /* 69 */ '\u0D17',   // 'i'\r
132         /* 6A */ '\u0D30',   // 'j'\r
133         /* 6B */ '\u0D15',   // 'k'\r
134         /* 6C */ '\u0D24',   // 'l'\r
135         /* 6D */ '\u0D38',   // 'm'\r
136         /* 6E */ '\u0D32',   // 'n'\r
137         /* 6F */ '\u0D26',   // 'o'\r
138         /* 70 */ '\u0D1C',   // 'p'\r
139         /* 71 */ '\u0D4C',   // 'q'\r
140         /* 72 */ '\u0D40',   // 'r'\r
141         /* 73 */ '\u0D47',   // 's'\r
142         /* 74 */ '\u0D42',   // 't'\r
143         /* 75 */ '\u0D39',   // 'u'\r
144         /* 76 */ '\u0D28',   // 'v'\r
145         /* 77 */ '\u0D48',   // 'w'\r
146         /* 78 */ '\u0D02',   // 'x'\r
147         /* 79 */ '\u0D2C',   // 'y'\r
148         /* 7A */ '\u0D46',   // 'z'\r
149         /* 7B */ '\u0D22',   // '{'\r
150         /* 7C */ '\uFFFF',   // '|'\r
151         /* 7D */ '\u0D1E',   // '}'\r
152         /* 7E */ '\u0D12',   // '~'\r
153         /* 7F */ '\u007F'    // '\7f'\r
154         };\r
155 \r
156         char[] RA_SUB = {'\u0D4D', '\u0D30'};\r
157         char[] CONJ_KA_SSA = {'\u0D15', '\u0D4D', '\u0D37'};\r
158 \r
159         substitutionTable = new char[][] {\r
160         RA_SUB, CONJ_KA_SSA\r
161         };\r
162     }\r
163 \r
164         return new IndicInputMethodImpl(keyboardMap, null, null, substitutionTable);\r
165     }\r
166 }\r