1 /* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable. */
2 // KeyEvent code mapping pairs.
4 static __Uint16Pair __belgian_to_us_normal [] = {
5 { SCIM_KEY_exclam, SCIM_KEY_8 },
6 { SCIM_KEY_quotedbl, SCIM_KEY_3 },
7 { SCIM_KEY_dollar, SCIM_KEY_bracketright },
8 { SCIM_KEY_ampersand, SCIM_KEY_1 },
9 { SCIM_KEY_apostrophe, SCIM_KEY_4 },
10 { SCIM_KEY_parenleft, SCIM_KEY_5 },
11 { SCIM_KEY_parenright, SCIM_KEY_minus },
12 { SCIM_KEY_comma, SCIM_KEY_m },
13 { SCIM_KEY_minus, SCIM_KEY_equal },
14 { SCIM_KEY_colon, SCIM_KEY_period },
15 { SCIM_KEY_semicolon, SCIM_KEY_comma },
16 { SCIM_KEY_equal, SCIM_KEY_slash },
17 { SCIM_KEY_a, SCIM_KEY_q },
18 { SCIM_KEY_m, SCIM_KEY_semicolon },
19 { SCIM_KEY_q, SCIM_KEY_a },
20 { SCIM_KEY_w, SCIM_KEY_z },
21 { SCIM_KEY_z, SCIM_KEY_w },
22 { SCIM_KEY_section, SCIM_KEY_6 },
23 { SCIM_KEY_twosuperior, SCIM_KEY_grave },
24 { SCIM_KEY_mu, SCIM_KEY_backslash },
25 { SCIM_KEY_agrave, SCIM_KEY_0 },
26 { SCIM_KEY_ccedilla, SCIM_KEY_9 },
27 { SCIM_KEY_egrave, SCIM_KEY_7 },
28 { SCIM_KEY_eacute, SCIM_KEY_2 },
29 { SCIM_KEY_ugrave, SCIM_KEY_apostrophe },
30 { SCIM_KEY_dead_circumflex, SCIM_KEY_bracketleft },
33 static __Uint16Pair __us_to_belgian_normal [] = {
34 { SCIM_KEY_apostrophe, SCIM_KEY_ugrave },
35 { SCIM_KEY_comma, SCIM_KEY_semicolon },
36 { SCIM_KEY_minus, SCIM_KEY_parenright },
37 { SCIM_KEY_period, SCIM_KEY_colon },
38 { SCIM_KEY_slash, SCIM_KEY_equal },
39 { SCIM_KEY_0, SCIM_KEY_agrave },
40 { SCIM_KEY_1, SCIM_KEY_ampersand },
41 { SCIM_KEY_2, SCIM_KEY_eacute },
42 { SCIM_KEY_3, SCIM_KEY_quotedbl },
43 { SCIM_KEY_4, SCIM_KEY_apostrophe },
44 { SCIM_KEY_5, SCIM_KEY_parenleft },
45 { SCIM_KEY_6, SCIM_KEY_section },
46 { SCIM_KEY_7, SCIM_KEY_egrave },
47 { SCIM_KEY_8, SCIM_KEY_exclam },
48 { SCIM_KEY_9, SCIM_KEY_ccedilla },
49 { SCIM_KEY_semicolon, SCIM_KEY_m },
50 { SCIM_KEY_equal, SCIM_KEY_minus },
51 { SCIM_KEY_bracketleft, SCIM_KEY_dead_circumflex },
52 { SCIM_KEY_backslash, SCIM_KEY_mu },
53 { SCIM_KEY_bracketright, SCIM_KEY_dollar },
54 { SCIM_KEY_grave, SCIM_KEY_twosuperior },
55 { SCIM_KEY_a, SCIM_KEY_q },
56 { SCIM_KEY_m, SCIM_KEY_comma },
57 { SCIM_KEY_q, SCIM_KEY_a },
58 { SCIM_KEY_w, SCIM_KEY_z },
59 { SCIM_KEY_z, SCIM_KEY_w },
62 static __Uint16Pair __belgian_to_us_caps [] = {
63 { SCIM_KEY_exclam, SCIM_KEY_8 },
64 { SCIM_KEY_quotedbl, SCIM_KEY_3 },
65 { SCIM_KEY_dollar, SCIM_KEY_bracketright },
66 { SCIM_KEY_ampersand, SCIM_KEY_1 },
67 { SCIM_KEY_apostrophe, SCIM_KEY_4 },
68 { SCIM_KEY_parenleft, SCIM_KEY_5 },
69 { SCIM_KEY_parenright, SCIM_KEY_minus },
70 { SCIM_KEY_comma, SCIM_KEY_M },
71 { SCIM_KEY_minus, SCIM_KEY_equal },
72 { SCIM_KEY_colon, SCIM_KEY_period },
73 { SCIM_KEY_semicolon, SCIM_KEY_comma },
74 { SCIM_KEY_equal, SCIM_KEY_slash },
75 { SCIM_KEY_A, SCIM_KEY_Q },
76 { SCIM_KEY_M, SCIM_KEY_semicolon },
77 { SCIM_KEY_Q, SCIM_KEY_A },
78 { SCIM_KEY_W, SCIM_KEY_Z },
79 { SCIM_KEY_Z, SCIM_KEY_W },
80 { SCIM_KEY_section, SCIM_KEY_6 },
81 { SCIM_KEY_twosuperior, SCIM_KEY_grave },
82 { SCIM_KEY_mu, SCIM_KEY_backslash },
83 { SCIM_KEY_Agrave, SCIM_KEY_0 },
84 { SCIM_KEY_Ccedilla, SCIM_KEY_9 },
85 { SCIM_KEY_Egrave, SCIM_KEY_7 },
86 { SCIM_KEY_Eacute, SCIM_KEY_2 },
87 { SCIM_KEY_Ugrave, SCIM_KEY_apostrophe },
88 { SCIM_KEY_dead_circumflex, SCIM_KEY_bracketleft },
91 static __Uint16Pair __us_to_belgian_caps [] = {
92 { SCIM_KEY_apostrophe, SCIM_KEY_Ugrave },
93 { SCIM_KEY_comma, SCIM_KEY_semicolon },
94 { SCIM_KEY_minus, SCIM_KEY_parenright },
95 { SCIM_KEY_period, SCIM_KEY_colon },
96 { SCIM_KEY_slash, SCIM_KEY_equal },
97 { SCIM_KEY_0, SCIM_KEY_Agrave },
98 { SCIM_KEY_1, SCIM_KEY_ampersand },
99 { SCIM_KEY_2, SCIM_KEY_Eacute },
100 { SCIM_KEY_3, SCIM_KEY_quotedbl },
101 { SCIM_KEY_4, SCIM_KEY_apostrophe },
102 { SCIM_KEY_5, SCIM_KEY_parenleft },
103 { SCIM_KEY_6, SCIM_KEY_section },
104 { SCIM_KEY_7, SCIM_KEY_Egrave },
105 { SCIM_KEY_8, SCIM_KEY_exclam },
106 { SCIM_KEY_9, SCIM_KEY_Ccedilla },
107 { SCIM_KEY_semicolon, SCIM_KEY_M },
108 { SCIM_KEY_equal, SCIM_KEY_minus },
109 { SCIM_KEY_A, SCIM_KEY_Q },
110 { SCIM_KEY_M, SCIM_KEY_comma },
111 { SCIM_KEY_Q, SCIM_KEY_A },
112 { SCIM_KEY_W, SCIM_KEY_Z },
113 { SCIM_KEY_Z, SCIM_KEY_W },
114 { SCIM_KEY_bracketleft, SCIM_KEY_dead_circumflex },
115 { SCIM_KEY_backslash, SCIM_KEY_mu },
116 { SCIM_KEY_bracketright, SCIM_KEY_dollar },
117 { SCIM_KEY_grave, SCIM_KEY_twosuperior },
120 static __Uint16Pair __belgian_to_us_shift [] = {
121 { SCIM_KEY_percent, SCIM_KEY_quotedbl },
122 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
123 { SCIM_KEY_plus, SCIM_KEY_question },
124 { SCIM_KEY_period, SCIM_KEY_less },
125 { SCIM_KEY_slash, SCIM_KEY_greater },
126 { SCIM_KEY_0, SCIM_KEY_parenright },
127 { SCIM_KEY_1, SCIM_KEY_exclam },
128 { SCIM_KEY_2, SCIM_KEY_at },
129 { SCIM_KEY_3, SCIM_KEY_numbersign },
130 { SCIM_KEY_4, SCIM_KEY_dollar },
131 { SCIM_KEY_5, SCIM_KEY_percent },
132 { SCIM_KEY_6, SCIM_KEY_asciicircum },
133 { SCIM_KEY_7, SCIM_KEY_ampersand },
134 { SCIM_KEY_8, SCIM_KEY_asterisk },
135 { SCIM_KEY_9, SCIM_KEY_parenleft },
136 { SCIM_KEY_question, SCIM_KEY_M },
137 { SCIM_KEY_A, SCIM_KEY_Q },
138 { SCIM_KEY_M, SCIM_KEY_colon },
139 { SCIM_KEY_Q, SCIM_KEY_A },
140 { SCIM_KEY_W, SCIM_KEY_Z },
141 { SCIM_KEY_Z, SCIM_KEY_W },
142 { SCIM_KEY_underscore, SCIM_KEY_plus },
143 { SCIM_KEY_sterling, SCIM_KEY_bar },
144 { SCIM_KEY_degree, SCIM_KEY_underscore },
145 { SCIM_KEY_threesuperior, SCIM_KEY_asciitilde },
146 { SCIM_KEY_dead_diaeresis, SCIM_KEY_braceleft },
149 static __Uint16Pair __us_to_belgian_shift [] = {
150 { SCIM_KEY_exclam, SCIM_KEY_1 },
151 { SCIM_KEY_quotedbl, SCIM_KEY_percent },
152 { SCIM_KEY_numbersign, SCIM_KEY_3 },
153 { SCIM_KEY_dollar, SCIM_KEY_4 },
154 { SCIM_KEY_percent, SCIM_KEY_5 },
155 { SCIM_KEY_ampersand, SCIM_KEY_7 },
156 { SCIM_KEY_parenleft, SCIM_KEY_9 },
157 { SCIM_KEY_parenright, SCIM_KEY_0 },
158 { SCIM_KEY_asterisk, SCIM_KEY_8 },
159 { SCIM_KEY_plus, SCIM_KEY_underscore },
160 { SCIM_KEY_colon, SCIM_KEY_M },
161 { SCIM_KEY_less, SCIM_KEY_period },
162 { SCIM_KEY_greater, SCIM_KEY_slash },
163 { SCIM_KEY_question, SCIM_KEY_plus },
164 { SCIM_KEY_at, SCIM_KEY_2 },
165 { SCIM_KEY_A, SCIM_KEY_Q },
166 { SCIM_KEY_M, SCIM_KEY_question },
167 { SCIM_KEY_Q, SCIM_KEY_A },
168 { SCIM_KEY_W, SCIM_KEY_Z },
169 { SCIM_KEY_Z, SCIM_KEY_W },
170 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
171 { SCIM_KEY_underscore, SCIM_KEY_degree },
172 { SCIM_KEY_braceleft, SCIM_KEY_dead_diaeresis },
173 { SCIM_KEY_bar, SCIM_KEY_sterling },
174 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
175 { SCIM_KEY_asciitilde, SCIM_KEY_threesuperior },
178 static __Uint16Pair __belgian_to_us_caps_shift [] = {
179 { SCIM_KEY_percent, SCIM_KEY_quotedbl },
180 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
181 { SCIM_KEY_plus, SCIM_KEY_question },
182 { SCIM_KEY_period, SCIM_KEY_less },
183 { SCIM_KEY_slash, SCIM_KEY_greater },
184 { SCIM_KEY_0, SCIM_KEY_parenright },
185 { SCIM_KEY_1, SCIM_KEY_exclam },
186 { SCIM_KEY_2, SCIM_KEY_at },
187 { SCIM_KEY_3, SCIM_KEY_numbersign },
188 { SCIM_KEY_4, SCIM_KEY_dollar },
189 { SCIM_KEY_5, SCIM_KEY_percent },
190 { SCIM_KEY_6, SCIM_KEY_asciicircum },
191 { SCIM_KEY_7, SCIM_KEY_ampersand },
192 { SCIM_KEY_8, SCIM_KEY_asterisk },
193 { SCIM_KEY_9, SCIM_KEY_parenleft },
194 { SCIM_KEY_question, SCIM_KEY_m },
195 { SCIM_KEY_underscore, SCIM_KEY_plus },
196 { SCIM_KEY_a, SCIM_KEY_q },
197 { SCIM_KEY_m, SCIM_KEY_colon },
198 { SCIM_KEY_q, SCIM_KEY_a },
199 { SCIM_KEY_w, SCIM_KEY_z },
200 { SCIM_KEY_z, SCIM_KEY_w },
201 { SCIM_KEY_sterling, SCIM_KEY_bar },
202 { SCIM_KEY_degree, SCIM_KEY_underscore },
203 { SCIM_KEY_threesuperior, SCIM_KEY_asciitilde },
204 { SCIM_KEY_dead_diaeresis, SCIM_KEY_braceleft },
207 static __Uint16Pair __us_to_belgian_caps_shift [] = {
208 { SCIM_KEY_exclam, SCIM_KEY_1 },
209 { SCIM_KEY_quotedbl, SCIM_KEY_percent },
210 { SCIM_KEY_numbersign, SCIM_KEY_3 },
211 { SCIM_KEY_dollar, SCIM_KEY_4 },
212 { SCIM_KEY_percent, SCIM_KEY_5 },
213 { SCIM_KEY_ampersand, SCIM_KEY_7 },
214 { SCIM_KEY_parenleft, SCIM_KEY_9 },
215 { SCIM_KEY_parenright, SCIM_KEY_0 },
216 { SCIM_KEY_asterisk, SCIM_KEY_8 },
217 { SCIM_KEY_plus, SCIM_KEY_underscore },
218 { SCIM_KEY_colon, SCIM_KEY_m },
219 { SCIM_KEY_less, SCIM_KEY_period },
220 { SCIM_KEY_greater, SCIM_KEY_slash },
221 { SCIM_KEY_question, SCIM_KEY_plus },
222 { SCIM_KEY_at, SCIM_KEY_2 },
223 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
224 { SCIM_KEY_underscore, SCIM_KEY_degree },
225 { SCIM_KEY_a, SCIM_KEY_q },
226 { SCIM_KEY_m, SCIM_KEY_question },
227 { SCIM_KEY_q, SCIM_KEY_a },
228 { SCIM_KEY_w, SCIM_KEY_z },
229 { SCIM_KEY_z, SCIM_KEY_w },
230 { SCIM_KEY_braceleft, SCIM_KEY_dead_diaeresis },
231 { SCIM_KEY_bar, SCIM_KEY_sterling },
232 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
233 { SCIM_KEY_asciitilde, SCIM_KEY_threesuperior },
236 static __Uint16Pair __czech_to_us_normal [] = {
237 { SCIM_KEY_parenright, SCIM_KEY_bracketright },
238 { SCIM_KEY_plus, SCIM_KEY_1 },
239 { SCIM_KEY_minus, SCIM_KEY_slash },
240 { SCIM_KEY_semicolon, SCIM_KEY_grave },
241 { SCIM_KEY_equal, SCIM_KEY_minus },
242 { SCIM_KEY_y, SCIM_KEY_z },
243 { SCIM_KEY_z, SCIM_KEY_y },
244 { SCIM_KEY_section, SCIM_KEY_apostrophe },
245 { SCIM_KEY_aacute, SCIM_KEY_8 },
246 { SCIM_KEY_eacute, SCIM_KEY_0 },
247 { SCIM_KEY_iacute, SCIM_KEY_9 },
248 { SCIM_KEY_uacute, SCIM_KEY_bracketleft },
249 { SCIM_KEY_yacute, SCIM_KEY_7 },
250 { SCIM_KEY_scaron, SCIM_KEY_3 },
251 { SCIM_KEY_zcaron, SCIM_KEY_6 },
252 { SCIM_KEY_ccaron, SCIM_KEY_4 },
253 { SCIM_KEY_ecaron, SCIM_KEY_2 },
254 { SCIM_KEY_rcaron, SCIM_KEY_5 },
255 { SCIM_KEY_uring, SCIM_KEY_semicolon },
256 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
257 { SCIM_KEY_dead_diaeresis, SCIM_KEY_backslash },
260 static __Uint16Pair __us_to_czech_normal [] = {
261 { SCIM_KEY_apostrophe, SCIM_KEY_section },
262 { SCIM_KEY_minus, SCIM_KEY_equal },
263 { SCIM_KEY_slash, SCIM_KEY_minus },
264 { SCIM_KEY_0, SCIM_KEY_eacute },
265 { SCIM_KEY_1, SCIM_KEY_plus },
266 { SCIM_KEY_2, SCIM_KEY_ecaron },
267 { SCIM_KEY_3, SCIM_KEY_scaron },
268 { SCIM_KEY_4, SCIM_KEY_ccaron },
269 { SCIM_KEY_5, SCIM_KEY_rcaron },
270 { SCIM_KEY_6, SCIM_KEY_zcaron },
271 { SCIM_KEY_7, SCIM_KEY_yacute },
272 { SCIM_KEY_8, SCIM_KEY_aacute },
273 { SCIM_KEY_9, SCIM_KEY_iacute },
274 { SCIM_KEY_semicolon, SCIM_KEY_uring },
275 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
276 { SCIM_KEY_bracketleft, SCIM_KEY_uacute },
277 { SCIM_KEY_backslash, SCIM_KEY_dead_diaeresis },
278 { SCIM_KEY_bracketright, SCIM_KEY_parenright },
279 { SCIM_KEY_grave, SCIM_KEY_semicolon },
280 { SCIM_KEY_y, SCIM_KEY_z },
281 { SCIM_KEY_z, SCIM_KEY_y },
284 static __Uint16Pair __czech_to_us_caps [] = {
285 { SCIM_KEY_parenright, SCIM_KEY_bracketright },
286 { SCIM_KEY_plus, SCIM_KEY_1 },
287 { SCIM_KEY_minus, SCIM_KEY_slash },
288 { SCIM_KEY_semicolon, SCIM_KEY_grave },
289 { SCIM_KEY_equal, SCIM_KEY_minus },
290 { SCIM_KEY_Y, SCIM_KEY_Z },
291 { SCIM_KEY_Z, SCIM_KEY_Y },
292 { SCIM_KEY_section, SCIM_KEY_apostrophe },
293 { SCIM_KEY_Aacute, SCIM_KEY_8 },
294 { SCIM_KEY_Eacute, SCIM_KEY_0 },
295 { SCIM_KEY_Iacute, SCIM_KEY_9 },
296 { SCIM_KEY_Uacute, SCIM_KEY_bracketleft },
297 { SCIM_KEY_Yacute, SCIM_KEY_7 },
298 { SCIM_KEY_Scaron, SCIM_KEY_3 },
299 { SCIM_KEY_Zcaron, SCIM_KEY_6 },
300 { SCIM_KEY_Ccaron, SCIM_KEY_4 },
301 { SCIM_KEY_Ecaron, SCIM_KEY_2 },
302 { SCIM_KEY_Rcaron, SCIM_KEY_5 },
303 { SCIM_KEY_Uring, SCIM_KEY_semicolon },
304 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
305 { SCIM_KEY_dead_diaeresis, SCIM_KEY_backslash },
308 static __Uint16Pair __us_to_czech_caps [] = {
309 { SCIM_KEY_apostrophe, SCIM_KEY_section },
310 { SCIM_KEY_minus, SCIM_KEY_equal },
311 { SCIM_KEY_slash, SCIM_KEY_minus },
312 { SCIM_KEY_0, SCIM_KEY_Eacute },
313 { SCIM_KEY_1, SCIM_KEY_plus },
314 { SCIM_KEY_2, SCIM_KEY_Ecaron },
315 { SCIM_KEY_3, SCIM_KEY_Scaron },
316 { SCIM_KEY_4, SCIM_KEY_Ccaron },
317 { SCIM_KEY_5, SCIM_KEY_Rcaron },
318 { SCIM_KEY_6, SCIM_KEY_Zcaron },
319 { SCIM_KEY_7, SCIM_KEY_Yacute },
320 { SCIM_KEY_8, SCIM_KEY_Aacute },
321 { SCIM_KEY_9, SCIM_KEY_Iacute },
322 { SCIM_KEY_semicolon, SCIM_KEY_Uring },
323 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
324 { SCIM_KEY_Y, SCIM_KEY_Z },
325 { SCIM_KEY_Z, SCIM_KEY_Y },
326 { SCIM_KEY_bracketleft, SCIM_KEY_Uacute },
327 { SCIM_KEY_backslash, SCIM_KEY_dead_diaeresis },
328 { SCIM_KEY_bracketright, SCIM_KEY_parenright },
329 { SCIM_KEY_grave, SCIM_KEY_semicolon },
332 static __Uint16Pair __czech_to_us_shift [] = {
333 { SCIM_KEY_exclam, SCIM_KEY_quotedbl },
334 { SCIM_KEY_quotedbl, SCIM_KEY_colon },
335 { SCIM_KEY_percent, SCIM_KEY_underscore },
336 { SCIM_KEY_apostrophe, SCIM_KEY_bar },
337 { SCIM_KEY_parenleft, SCIM_KEY_braceright },
338 { SCIM_KEY_slash, SCIM_KEY_braceleft },
339 { SCIM_KEY_0, SCIM_KEY_parenright },
340 { SCIM_KEY_1, SCIM_KEY_exclam },
341 { SCIM_KEY_2, SCIM_KEY_at },
342 { SCIM_KEY_3, SCIM_KEY_numbersign },
343 { SCIM_KEY_4, SCIM_KEY_dollar },
344 { SCIM_KEY_5, SCIM_KEY_percent },
345 { SCIM_KEY_6, SCIM_KEY_asciicircum },
346 { SCIM_KEY_7, SCIM_KEY_ampersand },
347 { SCIM_KEY_8, SCIM_KEY_asterisk },
348 { SCIM_KEY_9, SCIM_KEY_parenleft },
349 { SCIM_KEY_colon, SCIM_KEY_greater },
350 { SCIM_KEY_question, SCIM_KEY_less },
351 { SCIM_KEY_Y, SCIM_KEY_Z },
352 { SCIM_KEY_Z, SCIM_KEY_Y },
353 { SCIM_KEY_underscore, SCIM_KEY_question },
354 { SCIM_KEY_dead_abovering, SCIM_KEY_asciitilde },
355 { SCIM_KEY_dead_caron, SCIM_KEY_plus },
358 static __Uint16Pair __us_to_czech_shift [] = {
359 { SCIM_KEY_exclam, SCIM_KEY_1 },
360 { SCIM_KEY_quotedbl, SCIM_KEY_exclam },
361 { SCIM_KEY_numbersign, SCIM_KEY_3 },
362 { SCIM_KEY_dollar, SCIM_KEY_4 },
363 { SCIM_KEY_percent, SCIM_KEY_5 },
364 { SCIM_KEY_ampersand, SCIM_KEY_7 },
365 { SCIM_KEY_parenleft, SCIM_KEY_9 },
366 { SCIM_KEY_parenright, SCIM_KEY_0 },
367 { SCIM_KEY_asterisk, SCIM_KEY_8 },
368 { SCIM_KEY_plus, SCIM_KEY_dead_caron },
369 { SCIM_KEY_colon, SCIM_KEY_quotedbl },
370 { SCIM_KEY_less, SCIM_KEY_question },
371 { SCIM_KEY_greater, SCIM_KEY_colon },
372 { SCIM_KEY_question, SCIM_KEY_underscore },
373 { SCIM_KEY_at, SCIM_KEY_2 },
374 { SCIM_KEY_Y, SCIM_KEY_Z },
375 { SCIM_KEY_Z, SCIM_KEY_Y },
376 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
377 { SCIM_KEY_underscore, SCIM_KEY_percent },
378 { SCIM_KEY_braceleft, SCIM_KEY_slash },
379 { SCIM_KEY_bar, SCIM_KEY_apostrophe },
380 { SCIM_KEY_braceright, SCIM_KEY_parenleft },
381 { SCIM_KEY_asciitilde, SCIM_KEY_dead_abovering },
384 static __Uint16Pair __czech_to_us_caps_shift [] = {
385 { SCIM_KEY_exclam, SCIM_KEY_quotedbl },
386 { SCIM_KEY_quotedbl, SCIM_KEY_colon },
387 { SCIM_KEY_percent, SCIM_KEY_underscore },
388 { SCIM_KEY_apostrophe, SCIM_KEY_bar },
389 { SCIM_KEY_parenleft, SCIM_KEY_braceright },
390 { SCIM_KEY_slash, SCIM_KEY_braceleft },
391 { SCIM_KEY_0, SCIM_KEY_parenright },
392 { SCIM_KEY_1, SCIM_KEY_exclam },
393 { SCIM_KEY_2, SCIM_KEY_at },
394 { SCIM_KEY_3, SCIM_KEY_numbersign },
395 { SCIM_KEY_4, SCIM_KEY_dollar },
396 { SCIM_KEY_5, SCIM_KEY_percent },
397 { SCIM_KEY_6, SCIM_KEY_asciicircum },
398 { SCIM_KEY_7, SCIM_KEY_ampersand },
399 { SCIM_KEY_8, SCIM_KEY_asterisk },
400 { SCIM_KEY_9, SCIM_KEY_parenleft },
401 { SCIM_KEY_colon, SCIM_KEY_greater },
402 { SCIM_KEY_question, SCIM_KEY_less },
403 { SCIM_KEY_underscore, SCIM_KEY_question },
404 { SCIM_KEY_y, SCIM_KEY_z },
405 { SCIM_KEY_z, SCIM_KEY_y },
406 { SCIM_KEY_dead_abovering, SCIM_KEY_asciitilde },
407 { SCIM_KEY_dead_caron, SCIM_KEY_plus },
410 static __Uint16Pair __us_to_czech_caps_shift [] = {
411 { SCIM_KEY_exclam, SCIM_KEY_1 },
412 { SCIM_KEY_quotedbl, SCIM_KEY_exclam },
413 { SCIM_KEY_numbersign, SCIM_KEY_3 },
414 { SCIM_KEY_dollar, SCIM_KEY_4 },
415 { SCIM_KEY_percent, SCIM_KEY_5 },
416 { SCIM_KEY_ampersand, SCIM_KEY_7 },
417 { SCIM_KEY_parenleft, SCIM_KEY_9 },
418 { SCIM_KEY_parenright, SCIM_KEY_0 },
419 { SCIM_KEY_asterisk, SCIM_KEY_8 },
420 { SCIM_KEY_plus, SCIM_KEY_dead_caron },
421 { SCIM_KEY_colon, SCIM_KEY_quotedbl },
422 { SCIM_KEY_less, SCIM_KEY_question },
423 { SCIM_KEY_greater, SCIM_KEY_colon },
424 { SCIM_KEY_question, SCIM_KEY_underscore },
425 { SCIM_KEY_at, SCIM_KEY_2 },
426 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
427 { SCIM_KEY_underscore, SCIM_KEY_percent },
428 { SCIM_KEY_y, SCIM_KEY_z },
429 { SCIM_KEY_z, SCIM_KEY_y },
430 { SCIM_KEY_braceleft, SCIM_KEY_slash },
431 { SCIM_KEY_bar, SCIM_KEY_apostrophe },
432 { SCIM_KEY_braceright, SCIM_KEY_parenleft },
433 { SCIM_KEY_asciitilde, SCIM_KEY_dead_abovering },
436 static __Uint16Pair __czech_qwerty_to_us_normal [] = {
437 { SCIM_KEY_parenright, SCIM_KEY_bracketright },
438 { SCIM_KEY_plus, SCIM_KEY_1 },
439 { SCIM_KEY_minus, SCIM_KEY_slash },
440 { SCIM_KEY_semicolon, SCIM_KEY_grave },
441 { SCIM_KEY_equal, SCIM_KEY_minus },
442 { SCIM_KEY_section, SCIM_KEY_apostrophe },
443 { SCIM_KEY_aacute, SCIM_KEY_8 },
444 { SCIM_KEY_eacute, SCIM_KEY_0 },
445 { SCIM_KEY_iacute, SCIM_KEY_9 },
446 { SCIM_KEY_uacute, SCIM_KEY_bracketleft },
447 { SCIM_KEY_yacute, SCIM_KEY_7 },
448 { SCIM_KEY_scaron, SCIM_KEY_3 },
449 { SCIM_KEY_zcaron, SCIM_KEY_6 },
450 { SCIM_KEY_ccaron, SCIM_KEY_4 },
451 { SCIM_KEY_ecaron, SCIM_KEY_2 },
452 { SCIM_KEY_rcaron, SCIM_KEY_5 },
453 { SCIM_KEY_uring, SCIM_KEY_semicolon },
454 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
455 { SCIM_KEY_dead_diaeresis, SCIM_KEY_backslash },
458 static __Uint16Pair __us_to_czech_qwerty_normal [] = {
459 { SCIM_KEY_apostrophe, SCIM_KEY_section },
460 { SCIM_KEY_minus, SCIM_KEY_equal },
461 { SCIM_KEY_slash, SCIM_KEY_minus },
462 { SCIM_KEY_0, SCIM_KEY_eacute },
463 { SCIM_KEY_1, SCIM_KEY_plus },
464 { SCIM_KEY_2, SCIM_KEY_ecaron },
465 { SCIM_KEY_3, SCIM_KEY_scaron },
466 { SCIM_KEY_4, SCIM_KEY_ccaron },
467 { SCIM_KEY_5, SCIM_KEY_rcaron },
468 { SCIM_KEY_6, SCIM_KEY_zcaron },
469 { SCIM_KEY_7, SCIM_KEY_yacute },
470 { SCIM_KEY_8, SCIM_KEY_aacute },
471 { SCIM_KEY_9, SCIM_KEY_iacute },
472 { SCIM_KEY_semicolon, SCIM_KEY_uring },
473 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
474 { SCIM_KEY_bracketleft, SCIM_KEY_uacute },
475 { SCIM_KEY_backslash, SCIM_KEY_dead_diaeresis },
476 { SCIM_KEY_bracketright, SCIM_KEY_parenright },
477 { SCIM_KEY_grave, SCIM_KEY_semicolon },
480 static __Uint16Pair __czech_qwerty_to_us_caps [] = {
481 { SCIM_KEY_parenright, SCIM_KEY_bracketright },
482 { SCIM_KEY_plus, SCIM_KEY_1 },
483 { SCIM_KEY_minus, SCIM_KEY_slash },
484 { SCIM_KEY_semicolon, SCIM_KEY_grave },
485 { SCIM_KEY_equal, SCIM_KEY_minus },
486 { SCIM_KEY_section, SCIM_KEY_apostrophe },
487 { SCIM_KEY_Aacute, SCIM_KEY_8 },
488 { SCIM_KEY_Eacute, SCIM_KEY_0 },
489 { SCIM_KEY_Iacute, SCIM_KEY_9 },
490 { SCIM_KEY_Uacute, SCIM_KEY_bracketleft },
491 { SCIM_KEY_Yacute, SCIM_KEY_7 },
492 { SCIM_KEY_Scaron, SCIM_KEY_3 },
493 { SCIM_KEY_Zcaron, SCIM_KEY_6 },
494 { SCIM_KEY_Ccaron, SCIM_KEY_4 },
495 { SCIM_KEY_Ecaron, SCIM_KEY_2 },
496 { SCIM_KEY_Rcaron, SCIM_KEY_5 },
497 { SCIM_KEY_Uring, SCIM_KEY_semicolon },
498 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
499 { SCIM_KEY_dead_diaeresis, SCIM_KEY_backslash },
502 static __Uint16Pair __us_to_czech_qwerty_caps [] = {
503 { SCIM_KEY_apostrophe, SCIM_KEY_section },
504 { SCIM_KEY_minus, SCIM_KEY_equal },
505 { SCIM_KEY_slash, SCIM_KEY_minus },
506 { SCIM_KEY_0, SCIM_KEY_Eacute },
507 { SCIM_KEY_1, SCIM_KEY_plus },
508 { SCIM_KEY_2, SCIM_KEY_Ecaron },
509 { SCIM_KEY_3, SCIM_KEY_Scaron },
510 { SCIM_KEY_4, SCIM_KEY_Ccaron },
511 { SCIM_KEY_5, SCIM_KEY_Rcaron },
512 { SCIM_KEY_6, SCIM_KEY_Zcaron },
513 { SCIM_KEY_7, SCIM_KEY_Yacute },
514 { SCIM_KEY_8, SCIM_KEY_Aacute },
515 { SCIM_KEY_9, SCIM_KEY_Iacute },
516 { SCIM_KEY_semicolon, SCIM_KEY_Uring },
517 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
518 { SCIM_KEY_bracketleft, SCIM_KEY_Uacute },
519 { SCIM_KEY_backslash, SCIM_KEY_dead_diaeresis },
520 { SCIM_KEY_bracketright, SCIM_KEY_parenright },
521 { SCIM_KEY_grave, SCIM_KEY_semicolon },
524 static __Uint16Pair __czech_qwerty_to_us_shift [] = {
525 { SCIM_KEY_exclam, SCIM_KEY_quotedbl },
526 { SCIM_KEY_quotedbl, SCIM_KEY_colon },
527 { SCIM_KEY_percent, SCIM_KEY_underscore },
528 { SCIM_KEY_apostrophe, SCIM_KEY_bar },
529 { SCIM_KEY_parenleft, SCIM_KEY_braceright },
530 { SCIM_KEY_slash, SCIM_KEY_braceleft },
531 { SCIM_KEY_0, SCIM_KEY_parenright },
532 { SCIM_KEY_1, SCIM_KEY_exclam },
533 { SCIM_KEY_2, SCIM_KEY_at },
534 { SCIM_KEY_3, SCIM_KEY_numbersign },
535 { SCIM_KEY_4, SCIM_KEY_dollar },
536 { SCIM_KEY_5, SCIM_KEY_percent },
537 { SCIM_KEY_6, SCIM_KEY_asciicircum },
538 { SCIM_KEY_7, SCIM_KEY_ampersand },
539 { SCIM_KEY_8, SCIM_KEY_asterisk },
540 { SCIM_KEY_9, SCIM_KEY_parenleft },
541 { SCIM_KEY_colon, SCIM_KEY_greater },
542 { SCIM_KEY_question, SCIM_KEY_less },
543 { SCIM_KEY_underscore, SCIM_KEY_question },
544 { SCIM_KEY_dead_abovering, SCIM_KEY_asciitilde },
545 { SCIM_KEY_dead_caron, SCIM_KEY_plus },
548 static __Uint16Pair __us_to_czech_qwerty_shift [] = {
549 { SCIM_KEY_exclam, SCIM_KEY_1 },
550 { SCIM_KEY_quotedbl, SCIM_KEY_exclam },
551 { SCIM_KEY_numbersign, SCIM_KEY_3 },
552 { SCIM_KEY_dollar, SCIM_KEY_4 },
553 { SCIM_KEY_percent, SCIM_KEY_5 },
554 { SCIM_KEY_ampersand, SCIM_KEY_7 },
555 { SCIM_KEY_parenleft, SCIM_KEY_9 },
556 { SCIM_KEY_parenright, SCIM_KEY_0 },
557 { SCIM_KEY_asterisk, SCIM_KEY_8 },
558 { SCIM_KEY_plus, SCIM_KEY_dead_caron },
559 { SCIM_KEY_colon, SCIM_KEY_quotedbl },
560 { SCIM_KEY_less, SCIM_KEY_question },
561 { SCIM_KEY_greater, SCIM_KEY_colon },
562 { SCIM_KEY_question, SCIM_KEY_underscore },
563 { SCIM_KEY_at, SCIM_KEY_2 },
564 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
565 { SCIM_KEY_underscore, SCIM_KEY_percent },
566 { SCIM_KEY_braceleft, SCIM_KEY_slash },
567 { SCIM_KEY_bar, SCIM_KEY_apostrophe },
568 { SCIM_KEY_braceright, SCIM_KEY_parenleft },
569 { SCIM_KEY_asciitilde, SCIM_KEY_dead_abovering },
572 static __Uint16Pair __czech_qwerty_to_us_caps_shift [] = {
573 { SCIM_KEY_exclam, SCIM_KEY_quotedbl },
574 { SCIM_KEY_quotedbl, SCIM_KEY_colon },
575 { SCIM_KEY_percent, SCIM_KEY_underscore },
576 { SCIM_KEY_apostrophe, SCIM_KEY_bar },
577 { SCIM_KEY_parenleft, SCIM_KEY_braceright },
578 { SCIM_KEY_slash, SCIM_KEY_braceleft },
579 { SCIM_KEY_0, SCIM_KEY_parenright },
580 { SCIM_KEY_1, SCIM_KEY_exclam },
581 { SCIM_KEY_2, SCIM_KEY_at },
582 { SCIM_KEY_3, SCIM_KEY_numbersign },
583 { SCIM_KEY_4, SCIM_KEY_dollar },
584 { SCIM_KEY_5, SCIM_KEY_percent },
585 { SCIM_KEY_6, SCIM_KEY_asciicircum },
586 { SCIM_KEY_7, SCIM_KEY_ampersand },
587 { SCIM_KEY_8, SCIM_KEY_asterisk },
588 { SCIM_KEY_9, SCIM_KEY_parenleft },
589 { SCIM_KEY_colon, SCIM_KEY_greater },
590 { SCIM_KEY_question, SCIM_KEY_less },
591 { SCIM_KEY_underscore, SCIM_KEY_question },
592 { SCIM_KEY_dead_abovering, SCIM_KEY_asciitilde },
593 { SCIM_KEY_dead_caron, SCIM_KEY_plus },
596 static __Uint16Pair __us_to_czech_qwerty_caps_shift [] = {
597 { SCIM_KEY_exclam, SCIM_KEY_1 },
598 { SCIM_KEY_quotedbl, SCIM_KEY_exclam },
599 { SCIM_KEY_numbersign, SCIM_KEY_3 },
600 { SCIM_KEY_dollar, SCIM_KEY_4 },
601 { SCIM_KEY_percent, SCIM_KEY_5 },
602 { SCIM_KEY_ampersand, SCIM_KEY_7 },
603 { SCIM_KEY_parenleft, SCIM_KEY_9 },
604 { SCIM_KEY_parenright, SCIM_KEY_0 },
605 { SCIM_KEY_asterisk, SCIM_KEY_8 },
606 { SCIM_KEY_plus, SCIM_KEY_dead_caron },
607 { SCIM_KEY_colon, SCIM_KEY_quotedbl },
608 { SCIM_KEY_less, SCIM_KEY_question },
609 { SCIM_KEY_greater, SCIM_KEY_colon },
610 { SCIM_KEY_question, SCIM_KEY_underscore },
611 { SCIM_KEY_at, SCIM_KEY_2 },
612 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
613 { SCIM_KEY_underscore, SCIM_KEY_percent },
614 { SCIM_KEY_braceleft, SCIM_KEY_slash },
615 { SCIM_KEY_bar, SCIM_KEY_apostrophe },
616 { SCIM_KEY_braceright, SCIM_KEY_parenleft },
617 { SCIM_KEY_asciitilde, SCIM_KEY_dead_abovering },
620 static __Uint16Pair __danish_to_us_normal [] = {
621 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
622 { SCIM_KEY_plus, SCIM_KEY_minus },
623 { SCIM_KEY_minus, SCIM_KEY_slash },
624 { SCIM_KEY_onehalf, SCIM_KEY_grave },
625 { SCIM_KEY_aring, SCIM_KEY_bracketleft },
626 { SCIM_KEY_ae, SCIM_KEY_semicolon },
627 { SCIM_KEY_oslash, SCIM_KEY_apostrophe },
628 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
629 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
632 static __Uint16Pair __us_to_danish_normal [] = {
633 { SCIM_KEY_apostrophe, SCIM_KEY_oslash },
634 { SCIM_KEY_minus, SCIM_KEY_plus },
635 { SCIM_KEY_slash, SCIM_KEY_minus },
636 { SCIM_KEY_semicolon, SCIM_KEY_ae },
637 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
638 { SCIM_KEY_bracketleft, SCIM_KEY_aring },
639 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
640 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
641 { SCIM_KEY_grave, SCIM_KEY_onehalf },
644 static __Uint16Pair __danish_to_us_caps [] = {
645 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
646 { SCIM_KEY_plus, SCIM_KEY_minus },
647 { SCIM_KEY_minus, SCIM_KEY_slash },
648 { SCIM_KEY_onehalf, SCIM_KEY_grave },
649 { SCIM_KEY_Aring, SCIM_KEY_bracketleft },
650 { SCIM_KEY_AE, SCIM_KEY_semicolon },
651 { SCIM_KEY_Ooblique, SCIM_KEY_apostrophe },
652 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
653 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
656 static __Uint16Pair __us_to_danish_caps [] = {
657 { SCIM_KEY_apostrophe, SCIM_KEY_Ooblique },
658 { SCIM_KEY_minus, SCIM_KEY_plus },
659 { SCIM_KEY_slash, SCIM_KEY_minus },
660 { SCIM_KEY_semicolon, SCIM_KEY_AE },
661 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
662 { SCIM_KEY_bracketleft, SCIM_KEY_Aring },
663 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
664 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
665 { SCIM_KEY_grave, SCIM_KEY_onehalf },
668 static __Uint16Pair __danish_to_us_shift [] = {
669 { SCIM_KEY_quotedbl, SCIM_KEY_at },
670 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
671 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
672 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
673 { SCIM_KEY_asterisk, SCIM_KEY_bar },
674 { SCIM_KEY_slash, SCIM_KEY_ampersand },
675 { SCIM_KEY_colon, SCIM_KEY_greater },
676 { SCIM_KEY_semicolon, SCIM_KEY_less },
677 { SCIM_KEY_equal, SCIM_KEY_parenright },
678 { SCIM_KEY_question, SCIM_KEY_underscore },
679 { SCIM_KEY_underscore, SCIM_KEY_question },
680 { SCIM_KEY_currency, SCIM_KEY_dollar },
681 { SCIM_KEY_section, SCIM_KEY_asciitilde },
682 { SCIM_KEY_Aring, SCIM_KEY_braceleft },
683 { SCIM_KEY_AE, SCIM_KEY_colon },
684 { SCIM_KEY_Ooblique, SCIM_KEY_quotedbl },
685 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
686 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceright },
689 static __Uint16Pair __us_to_danish_shift [] = {
690 { SCIM_KEY_quotedbl, SCIM_KEY_Ooblique },
691 { SCIM_KEY_dollar, SCIM_KEY_currency },
692 { SCIM_KEY_ampersand, SCIM_KEY_slash },
693 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
694 { SCIM_KEY_parenright, SCIM_KEY_equal },
695 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
696 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
697 { SCIM_KEY_colon, SCIM_KEY_AE },
698 { SCIM_KEY_less, SCIM_KEY_semicolon },
699 { SCIM_KEY_greater, SCIM_KEY_colon },
700 { SCIM_KEY_question, SCIM_KEY_underscore },
701 { SCIM_KEY_at, SCIM_KEY_quotedbl },
702 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
703 { SCIM_KEY_underscore, SCIM_KEY_question },
704 { SCIM_KEY_braceleft, SCIM_KEY_Aring },
705 { SCIM_KEY_bar, SCIM_KEY_asterisk },
706 { SCIM_KEY_braceright, SCIM_KEY_dead_circumflex },
707 { SCIM_KEY_asciitilde, SCIM_KEY_section },
710 static __Uint16Pair __danish_to_us_caps_shift [] = {
711 { SCIM_KEY_quotedbl, SCIM_KEY_at },
712 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
713 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
714 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
715 { SCIM_KEY_asterisk, SCIM_KEY_bar },
716 { SCIM_KEY_slash, SCIM_KEY_ampersand },
717 { SCIM_KEY_colon, SCIM_KEY_greater },
718 { SCIM_KEY_semicolon, SCIM_KEY_less },
719 { SCIM_KEY_equal, SCIM_KEY_parenright },
720 { SCIM_KEY_question, SCIM_KEY_underscore },
721 { SCIM_KEY_underscore, SCIM_KEY_question },
722 { SCIM_KEY_currency, SCIM_KEY_dollar },
723 { SCIM_KEY_section, SCIM_KEY_asciitilde },
724 { SCIM_KEY_aring, SCIM_KEY_braceleft },
725 { SCIM_KEY_ae, SCIM_KEY_colon },
726 { SCIM_KEY_oslash, SCIM_KEY_quotedbl },
727 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
728 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceright },
731 static __Uint16Pair __us_to_danish_caps_shift [] = {
732 { SCIM_KEY_quotedbl, SCIM_KEY_oslash },
733 { SCIM_KEY_dollar, SCIM_KEY_currency },
734 { SCIM_KEY_ampersand, SCIM_KEY_slash },
735 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
736 { SCIM_KEY_parenright, SCIM_KEY_equal },
737 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
738 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
739 { SCIM_KEY_colon, SCIM_KEY_ae },
740 { SCIM_KEY_less, SCIM_KEY_semicolon },
741 { SCIM_KEY_greater, SCIM_KEY_colon },
742 { SCIM_KEY_question, SCIM_KEY_underscore },
743 { SCIM_KEY_at, SCIM_KEY_quotedbl },
744 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
745 { SCIM_KEY_underscore, SCIM_KEY_question },
746 { SCIM_KEY_braceleft, SCIM_KEY_aring },
747 { SCIM_KEY_bar, SCIM_KEY_asterisk },
748 { SCIM_KEY_braceright, SCIM_KEY_dead_circumflex },
749 { SCIM_KEY_asciitilde, SCIM_KEY_section },
752 static __Uint16Pair __dvorak_to_us_normal [] = {
753 { SCIM_KEY_apostrophe, SCIM_KEY_q },
754 { SCIM_KEY_comma, SCIM_KEY_w },
755 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
756 { SCIM_KEY_period, SCIM_KEY_e },
757 { SCIM_KEY_slash, SCIM_KEY_bracketleft },
758 { SCIM_KEY_semicolon, SCIM_KEY_z },
759 { SCIM_KEY_equal, SCIM_KEY_bracketright },
760 { SCIM_KEY_bracketleft, SCIM_KEY_minus },
761 { SCIM_KEY_bracketright, SCIM_KEY_equal },
762 { SCIM_KEY_b, SCIM_KEY_n },
763 { SCIM_KEY_c, SCIM_KEY_i },
764 { SCIM_KEY_d, SCIM_KEY_h },
765 { SCIM_KEY_e, SCIM_KEY_d },
766 { SCIM_KEY_f, SCIM_KEY_y },
767 { SCIM_KEY_g, SCIM_KEY_u },
768 { SCIM_KEY_h, SCIM_KEY_j },
769 { SCIM_KEY_i, SCIM_KEY_g },
770 { SCIM_KEY_j, SCIM_KEY_c },
771 { SCIM_KEY_k, SCIM_KEY_v },
772 { SCIM_KEY_l, SCIM_KEY_p },
773 { SCIM_KEY_n, SCIM_KEY_l },
774 { SCIM_KEY_o, SCIM_KEY_s },
775 { SCIM_KEY_p, SCIM_KEY_r },
776 { SCIM_KEY_q, SCIM_KEY_x },
777 { SCIM_KEY_r, SCIM_KEY_o },
778 { SCIM_KEY_s, SCIM_KEY_semicolon },
779 { SCIM_KEY_t, SCIM_KEY_k },
780 { SCIM_KEY_u, SCIM_KEY_f },
781 { SCIM_KEY_v, SCIM_KEY_period },
782 { SCIM_KEY_w, SCIM_KEY_comma },
783 { SCIM_KEY_x, SCIM_KEY_b },
784 { SCIM_KEY_y, SCIM_KEY_t },
785 { SCIM_KEY_z, SCIM_KEY_slash },
788 static __Uint16Pair __us_to_dvorak_normal [] = {
789 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
790 { SCIM_KEY_comma, SCIM_KEY_w },
791 { SCIM_KEY_minus, SCIM_KEY_bracketleft },
792 { SCIM_KEY_period, SCIM_KEY_v },
793 { SCIM_KEY_slash, SCIM_KEY_z },
794 { SCIM_KEY_semicolon, SCIM_KEY_s },
795 { SCIM_KEY_equal, SCIM_KEY_bracketright },
796 { SCIM_KEY_bracketleft, SCIM_KEY_slash },
797 { SCIM_KEY_bracketright, SCIM_KEY_equal },
798 { SCIM_KEY_b, SCIM_KEY_x },
799 { SCIM_KEY_c, SCIM_KEY_j },
800 { SCIM_KEY_d, SCIM_KEY_e },
801 { SCIM_KEY_e, SCIM_KEY_period },
802 { SCIM_KEY_f, SCIM_KEY_u },
803 { SCIM_KEY_g, SCIM_KEY_i },
804 { SCIM_KEY_h, SCIM_KEY_d },
805 { SCIM_KEY_i, SCIM_KEY_c },
806 { SCIM_KEY_j, SCIM_KEY_h },
807 { SCIM_KEY_k, SCIM_KEY_t },
808 { SCIM_KEY_l, SCIM_KEY_n },
809 { SCIM_KEY_n, SCIM_KEY_b },
810 { SCIM_KEY_o, SCIM_KEY_r },
811 { SCIM_KEY_p, SCIM_KEY_l },
812 { SCIM_KEY_q, SCIM_KEY_apostrophe },
813 { SCIM_KEY_r, SCIM_KEY_p },
814 { SCIM_KEY_s, SCIM_KEY_o },
815 { SCIM_KEY_t, SCIM_KEY_y },
816 { SCIM_KEY_u, SCIM_KEY_g },
817 { SCIM_KEY_v, SCIM_KEY_k },
818 { SCIM_KEY_w, SCIM_KEY_comma },
819 { SCIM_KEY_x, SCIM_KEY_q },
820 { SCIM_KEY_y, SCIM_KEY_f },
821 { SCIM_KEY_z, SCIM_KEY_semicolon },
824 static __Uint16Pair __dvorak_to_us_caps [] = {
825 { SCIM_KEY_apostrophe, SCIM_KEY_Q },
826 { SCIM_KEY_comma, SCIM_KEY_W },
827 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
828 { SCIM_KEY_period, SCIM_KEY_E },
829 { SCIM_KEY_slash, SCIM_KEY_bracketleft },
830 { SCIM_KEY_semicolon, SCIM_KEY_Z },
831 { SCIM_KEY_equal, SCIM_KEY_bracketright },
832 { SCIM_KEY_B, SCIM_KEY_N },
833 { SCIM_KEY_C, SCIM_KEY_I },
834 { SCIM_KEY_D, SCIM_KEY_H },
835 { SCIM_KEY_E, SCIM_KEY_D },
836 { SCIM_KEY_F, SCIM_KEY_Y },
837 { SCIM_KEY_G, SCIM_KEY_U },
838 { SCIM_KEY_H, SCIM_KEY_J },
839 { SCIM_KEY_I, SCIM_KEY_G },
840 { SCIM_KEY_J, SCIM_KEY_C },
841 { SCIM_KEY_K, SCIM_KEY_V },
842 { SCIM_KEY_L, SCIM_KEY_P },
843 { SCIM_KEY_N, SCIM_KEY_L },
844 { SCIM_KEY_O, SCIM_KEY_S },
845 { SCIM_KEY_P, SCIM_KEY_R },
846 { SCIM_KEY_Q, SCIM_KEY_X },
847 { SCIM_KEY_R, SCIM_KEY_O },
848 { SCIM_KEY_S, SCIM_KEY_semicolon },
849 { SCIM_KEY_T, SCIM_KEY_K },
850 { SCIM_KEY_U, SCIM_KEY_F },
851 { SCIM_KEY_V, SCIM_KEY_period },
852 { SCIM_KEY_W, SCIM_KEY_comma },
853 { SCIM_KEY_X, SCIM_KEY_B },
854 { SCIM_KEY_Y, SCIM_KEY_T },
855 { SCIM_KEY_Z, SCIM_KEY_slash },
856 { SCIM_KEY_bracketleft, SCIM_KEY_minus },
857 { SCIM_KEY_bracketright, SCIM_KEY_equal },
860 static __Uint16Pair __us_to_dvorak_caps [] = {
861 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
862 { SCIM_KEY_comma, SCIM_KEY_W },
863 { SCIM_KEY_minus, SCIM_KEY_bracketleft },
864 { SCIM_KEY_period, SCIM_KEY_V },
865 { SCIM_KEY_slash, SCIM_KEY_Z },
866 { SCIM_KEY_semicolon, SCIM_KEY_S },
867 { SCIM_KEY_equal, SCIM_KEY_bracketright },
868 { SCIM_KEY_B, SCIM_KEY_X },
869 { SCIM_KEY_C, SCIM_KEY_J },
870 { SCIM_KEY_D, SCIM_KEY_E },
871 { SCIM_KEY_E, SCIM_KEY_period },
872 { SCIM_KEY_F, SCIM_KEY_U },
873 { SCIM_KEY_G, SCIM_KEY_I },
874 { SCIM_KEY_H, SCIM_KEY_D },
875 { SCIM_KEY_I, SCIM_KEY_C },
876 { SCIM_KEY_J, SCIM_KEY_H },
877 { SCIM_KEY_K, SCIM_KEY_T },
878 { SCIM_KEY_L, SCIM_KEY_N },
879 { SCIM_KEY_N, SCIM_KEY_B },
880 { SCIM_KEY_O, SCIM_KEY_R },
881 { SCIM_KEY_P, SCIM_KEY_L },
882 { SCIM_KEY_Q, SCIM_KEY_apostrophe },
883 { SCIM_KEY_R, SCIM_KEY_P },
884 { SCIM_KEY_S, SCIM_KEY_O },
885 { SCIM_KEY_T, SCIM_KEY_Y },
886 { SCIM_KEY_U, SCIM_KEY_G },
887 { SCIM_KEY_V, SCIM_KEY_K },
888 { SCIM_KEY_W, SCIM_KEY_comma },
889 { SCIM_KEY_X, SCIM_KEY_Q },
890 { SCIM_KEY_Y, SCIM_KEY_F },
891 { SCIM_KEY_Z, SCIM_KEY_semicolon },
892 { SCIM_KEY_bracketleft, SCIM_KEY_slash },
893 { SCIM_KEY_bracketright, SCIM_KEY_equal },
896 static __Uint16Pair __dvorak_to_us_shift [] = {
897 { SCIM_KEY_quotedbl, SCIM_KEY_Q },
898 { SCIM_KEY_plus, SCIM_KEY_braceright },
899 { SCIM_KEY_colon, SCIM_KEY_Z },
900 { SCIM_KEY_less, SCIM_KEY_W },
901 { SCIM_KEY_greater, SCIM_KEY_E },
902 { SCIM_KEY_question, SCIM_KEY_braceleft },
903 { SCIM_KEY_B, SCIM_KEY_N },
904 { SCIM_KEY_C, SCIM_KEY_I },
905 { SCIM_KEY_D, SCIM_KEY_H },
906 { SCIM_KEY_E, SCIM_KEY_D },
907 { SCIM_KEY_F, SCIM_KEY_Y },
908 { SCIM_KEY_G, SCIM_KEY_U },
909 { SCIM_KEY_H, SCIM_KEY_J },
910 { SCIM_KEY_I, SCIM_KEY_G },
911 { SCIM_KEY_J, SCIM_KEY_C },
912 { SCIM_KEY_K, SCIM_KEY_V },
913 { SCIM_KEY_L, SCIM_KEY_P },
914 { SCIM_KEY_N, SCIM_KEY_L },
915 { SCIM_KEY_O, SCIM_KEY_S },
916 { SCIM_KEY_P, SCIM_KEY_R },
917 { SCIM_KEY_Q, SCIM_KEY_X },
918 { SCIM_KEY_R, SCIM_KEY_O },
919 { SCIM_KEY_S, SCIM_KEY_colon },
920 { SCIM_KEY_T, SCIM_KEY_K },
921 { SCIM_KEY_U, SCIM_KEY_F },
922 { SCIM_KEY_V, SCIM_KEY_greater },
923 { SCIM_KEY_W, SCIM_KEY_less },
924 { SCIM_KEY_X, SCIM_KEY_B },
925 { SCIM_KEY_Y, SCIM_KEY_T },
926 { SCIM_KEY_Z, SCIM_KEY_question },
927 { SCIM_KEY_underscore, SCIM_KEY_quotedbl },
928 { SCIM_KEY_braceleft, SCIM_KEY_underscore },
929 { SCIM_KEY_braceright, SCIM_KEY_plus },
932 static __Uint16Pair __us_to_dvorak_shift [] = {
933 { SCIM_KEY_quotedbl, SCIM_KEY_underscore },
934 { SCIM_KEY_plus, SCIM_KEY_braceright },
935 { SCIM_KEY_colon, SCIM_KEY_S },
936 { SCIM_KEY_less, SCIM_KEY_W },
937 { SCIM_KEY_greater, SCIM_KEY_V },
938 { SCIM_KEY_question, SCIM_KEY_Z },
939 { SCIM_KEY_B, SCIM_KEY_X },
940 { SCIM_KEY_C, SCIM_KEY_J },
941 { SCIM_KEY_D, SCIM_KEY_E },
942 { SCIM_KEY_E, SCIM_KEY_greater },
943 { SCIM_KEY_F, SCIM_KEY_U },
944 { SCIM_KEY_G, SCIM_KEY_I },
945 { SCIM_KEY_H, SCIM_KEY_D },
946 { SCIM_KEY_I, SCIM_KEY_C },
947 { SCIM_KEY_J, SCIM_KEY_H },
948 { SCIM_KEY_K, SCIM_KEY_T },
949 { SCIM_KEY_L, SCIM_KEY_N },
950 { SCIM_KEY_N, SCIM_KEY_B },
951 { SCIM_KEY_O, SCIM_KEY_R },
952 { SCIM_KEY_P, SCIM_KEY_L },
953 { SCIM_KEY_Q, SCIM_KEY_quotedbl },
954 { SCIM_KEY_R, SCIM_KEY_P },
955 { SCIM_KEY_S, SCIM_KEY_O },
956 { SCIM_KEY_T, SCIM_KEY_Y },
957 { SCIM_KEY_U, SCIM_KEY_G },
958 { SCIM_KEY_V, SCIM_KEY_K },
959 { SCIM_KEY_W, SCIM_KEY_less },
960 { SCIM_KEY_X, SCIM_KEY_Q },
961 { SCIM_KEY_Y, SCIM_KEY_F },
962 { SCIM_KEY_Z, SCIM_KEY_colon },
963 { SCIM_KEY_underscore, SCIM_KEY_braceleft },
964 { SCIM_KEY_braceleft, SCIM_KEY_question },
965 { SCIM_KEY_braceright, SCIM_KEY_plus },
968 static __Uint16Pair __dvorak_to_us_caps_shift [] = {
969 { SCIM_KEY_quotedbl, SCIM_KEY_q },
970 { SCIM_KEY_plus, SCIM_KEY_braceright },
971 { SCIM_KEY_colon, SCIM_KEY_z },
972 { SCIM_KEY_less, SCIM_KEY_w },
973 { SCIM_KEY_greater, SCIM_KEY_e },
974 { SCIM_KEY_question, SCIM_KEY_braceleft },
975 { SCIM_KEY_underscore, SCIM_KEY_quotedbl },
976 { SCIM_KEY_b, SCIM_KEY_n },
977 { SCIM_KEY_c, SCIM_KEY_i },
978 { SCIM_KEY_d, SCIM_KEY_h },
979 { SCIM_KEY_e, SCIM_KEY_d },
980 { SCIM_KEY_f, SCIM_KEY_y },
981 { SCIM_KEY_g, SCIM_KEY_u },
982 { SCIM_KEY_h, SCIM_KEY_j },
983 { SCIM_KEY_i, SCIM_KEY_g },
984 { SCIM_KEY_j, SCIM_KEY_c },
985 { SCIM_KEY_k, SCIM_KEY_v },
986 { SCIM_KEY_l, SCIM_KEY_p },
987 { SCIM_KEY_n, SCIM_KEY_l },
988 { SCIM_KEY_o, SCIM_KEY_s },
989 { SCIM_KEY_p, SCIM_KEY_r },
990 { SCIM_KEY_q, SCIM_KEY_x },
991 { SCIM_KEY_r, SCIM_KEY_o },
992 { SCIM_KEY_s, SCIM_KEY_colon },
993 { SCIM_KEY_t, SCIM_KEY_k },
994 { SCIM_KEY_u, SCIM_KEY_f },
995 { SCIM_KEY_v, SCIM_KEY_greater },
996 { SCIM_KEY_w, SCIM_KEY_less },
997 { SCIM_KEY_x, SCIM_KEY_b },
998 { SCIM_KEY_y, SCIM_KEY_t },
999 { SCIM_KEY_z, SCIM_KEY_question },
1000 { SCIM_KEY_braceleft, SCIM_KEY_underscore },
1001 { SCIM_KEY_braceright, SCIM_KEY_plus },
1004 static __Uint16Pair __us_to_dvorak_caps_shift [] = {
1005 { SCIM_KEY_quotedbl, SCIM_KEY_underscore },
1006 { SCIM_KEY_plus, SCIM_KEY_braceright },
1007 { SCIM_KEY_colon, SCIM_KEY_s },
1008 { SCIM_KEY_less, SCIM_KEY_w },
1009 { SCIM_KEY_greater, SCIM_KEY_v },
1010 { SCIM_KEY_question, SCIM_KEY_z },
1011 { SCIM_KEY_underscore, SCIM_KEY_braceleft },
1012 { SCIM_KEY_b, SCIM_KEY_x },
1013 { SCIM_KEY_c, SCIM_KEY_j },
1014 { SCIM_KEY_d, SCIM_KEY_e },
1015 { SCIM_KEY_e, SCIM_KEY_greater },
1016 { SCIM_KEY_f, SCIM_KEY_u },
1017 { SCIM_KEY_g, SCIM_KEY_i },
1018 { SCIM_KEY_h, SCIM_KEY_d },
1019 { SCIM_KEY_i, SCIM_KEY_c },
1020 { SCIM_KEY_j, SCIM_KEY_h },
1021 { SCIM_KEY_k, SCIM_KEY_t },
1022 { SCIM_KEY_l, SCIM_KEY_n },
1023 { SCIM_KEY_n, SCIM_KEY_b },
1024 { SCIM_KEY_o, SCIM_KEY_r },
1025 { SCIM_KEY_p, SCIM_KEY_l },
1026 { SCIM_KEY_q, SCIM_KEY_quotedbl },
1027 { SCIM_KEY_r, SCIM_KEY_p },
1028 { SCIM_KEY_s, SCIM_KEY_o },
1029 { SCIM_KEY_t, SCIM_KEY_y },
1030 { SCIM_KEY_u, SCIM_KEY_g },
1031 { SCIM_KEY_v, SCIM_KEY_k },
1032 { SCIM_KEY_w, SCIM_KEY_less },
1033 { SCIM_KEY_x, SCIM_KEY_q },
1034 { SCIM_KEY_y, SCIM_KEY_f },
1035 { SCIM_KEY_z, SCIM_KEY_colon },
1036 { SCIM_KEY_braceleft, SCIM_KEY_question },
1037 { SCIM_KEY_braceright, SCIM_KEY_plus },
1040 static __Uint16Pair __estonian_to_us_normal [] = {
1041 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
1042 { SCIM_KEY_plus, SCIM_KEY_minus },
1043 { SCIM_KEY_minus, SCIM_KEY_slash },
1044 { SCIM_KEY_adiaeresis, SCIM_KEY_apostrophe },
1045 { SCIM_KEY_otilde, SCIM_KEY_bracketright },
1046 { SCIM_KEY_odiaeresis, SCIM_KEY_semicolon },
1047 { SCIM_KEY_udiaeresis, SCIM_KEY_bracketleft },
1048 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
1049 { SCIM_KEY_dead_caron, SCIM_KEY_grave },
1052 static __Uint16Pair __us_to_estonian_normal [] = {
1053 { SCIM_KEY_apostrophe, SCIM_KEY_adiaeresis },
1054 { SCIM_KEY_minus, SCIM_KEY_plus },
1055 { SCIM_KEY_slash, SCIM_KEY_minus },
1056 { SCIM_KEY_semicolon, SCIM_KEY_odiaeresis },
1057 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
1058 { SCIM_KEY_bracketleft, SCIM_KEY_udiaeresis },
1059 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
1060 { SCIM_KEY_bracketright, SCIM_KEY_otilde },
1061 { SCIM_KEY_grave, SCIM_KEY_dead_caron },
1064 static __Uint16Pair __estonian_to_us_caps [] = {
1065 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
1066 { SCIM_KEY_plus, SCIM_KEY_minus },
1067 { SCIM_KEY_minus, SCIM_KEY_slash },
1068 { SCIM_KEY_Adiaeresis, SCIM_KEY_apostrophe },
1069 { SCIM_KEY_Otilde, SCIM_KEY_bracketright },
1070 { SCIM_KEY_Odiaeresis, SCIM_KEY_semicolon },
1071 { SCIM_KEY_Udiaeresis, SCIM_KEY_bracketleft },
1072 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
1073 { SCIM_KEY_dead_caron, SCIM_KEY_grave },
1076 static __Uint16Pair __us_to_estonian_caps [] = {
1077 { SCIM_KEY_apostrophe, SCIM_KEY_Adiaeresis },
1078 { SCIM_KEY_minus, SCIM_KEY_plus },
1079 { SCIM_KEY_slash, SCIM_KEY_minus },
1080 { SCIM_KEY_semicolon, SCIM_KEY_Odiaeresis },
1081 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
1082 { SCIM_KEY_bracketleft, SCIM_KEY_Udiaeresis },
1083 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
1084 { SCIM_KEY_bracketright, SCIM_KEY_Otilde },
1085 { SCIM_KEY_grave, SCIM_KEY_dead_caron },
1088 static __Uint16Pair __estonian_to_us_shift [] = {
1089 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1090 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1091 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1092 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1093 { SCIM_KEY_asterisk, SCIM_KEY_bar },
1094 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1095 { SCIM_KEY_colon, SCIM_KEY_greater },
1096 { SCIM_KEY_semicolon, SCIM_KEY_less },
1097 { SCIM_KEY_equal, SCIM_KEY_parenright },
1098 { SCIM_KEY_question, SCIM_KEY_underscore },
1099 { SCIM_KEY_underscore, SCIM_KEY_question },
1100 { SCIM_KEY_currency, SCIM_KEY_dollar },
1101 { SCIM_KEY_Adiaeresis, SCIM_KEY_quotedbl },
1102 { SCIM_KEY_Otilde, SCIM_KEY_braceright },
1103 { SCIM_KEY_Odiaeresis, SCIM_KEY_colon },
1104 { SCIM_KEY_Udiaeresis, SCIM_KEY_braceleft },
1105 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
1106 { SCIM_KEY_dead_tilde, SCIM_KEY_asciitilde },
1109 static __Uint16Pair __us_to_estonian_shift [] = {
1110 { SCIM_KEY_quotedbl, SCIM_KEY_Adiaeresis },
1111 { SCIM_KEY_dollar, SCIM_KEY_currency },
1112 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1113 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1114 { SCIM_KEY_parenright, SCIM_KEY_equal },
1115 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1116 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
1117 { SCIM_KEY_colon, SCIM_KEY_Odiaeresis },
1118 { SCIM_KEY_less, SCIM_KEY_semicolon },
1119 { SCIM_KEY_greater, SCIM_KEY_colon },
1120 { SCIM_KEY_question, SCIM_KEY_underscore },
1121 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1122 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1123 { SCIM_KEY_underscore, SCIM_KEY_question },
1124 { SCIM_KEY_braceleft, SCIM_KEY_Udiaeresis },
1125 { SCIM_KEY_bar, SCIM_KEY_asterisk },
1126 { SCIM_KEY_braceright, SCIM_KEY_Otilde },
1127 { SCIM_KEY_asciitilde, SCIM_KEY_dead_tilde },
1130 static __Uint16Pair __estonian_to_us_caps_shift [] = {
1131 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1132 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1133 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1134 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1135 { SCIM_KEY_asterisk, SCIM_KEY_bar },
1136 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1137 { SCIM_KEY_colon, SCIM_KEY_greater },
1138 { SCIM_KEY_semicolon, SCIM_KEY_less },
1139 { SCIM_KEY_equal, SCIM_KEY_parenright },
1140 { SCIM_KEY_question, SCIM_KEY_underscore },
1141 { SCIM_KEY_underscore, SCIM_KEY_question },
1142 { SCIM_KEY_currency, SCIM_KEY_dollar },
1143 { SCIM_KEY_adiaeresis, SCIM_KEY_quotedbl },
1144 { SCIM_KEY_otilde, SCIM_KEY_braceright },
1145 { SCIM_KEY_odiaeresis, SCIM_KEY_colon },
1146 { SCIM_KEY_udiaeresis, SCIM_KEY_braceleft },
1147 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
1148 { SCIM_KEY_dead_tilde, SCIM_KEY_asciitilde },
1151 static __Uint16Pair __us_to_estonian_caps_shift [] = {
1152 { SCIM_KEY_quotedbl, SCIM_KEY_adiaeresis },
1153 { SCIM_KEY_dollar, SCIM_KEY_currency },
1154 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1155 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1156 { SCIM_KEY_parenright, SCIM_KEY_equal },
1157 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1158 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
1159 { SCIM_KEY_colon, SCIM_KEY_odiaeresis },
1160 { SCIM_KEY_less, SCIM_KEY_semicolon },
1161 { SCIM_KEY_greater, SCIM_KEY_colon },
1162 { SCIM_KEY_question, SCIM_KEY_underscore },
1163 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1164 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1165 { SCIM_KEY_underscore, SCIM_KEY_question },
1166 { SCIM_KEY_braceleft, SCIM_KEY_udiaeresis },
1167 { SCIM_KEY_bar, SCIM_KEY_asterisk },
1168 { SCIM_KEY_braceright, SCIM_KEY_otilde },
1169 { SCIM_KEY_asciitilde, SCIM_KEY_dead_tilde },
1172 static __Uint16Pair __finnish_to_us_normal [] = {
1173 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
1174 { SCIM_KEY_plus, SCIM_KEY_minus },
1175 { SCIM_KEY_minus, SCIM_KEY_slash },
1176 { SCIM_KEY_section, SCIM_KEY_grave },
1177 { SCIM_KEY_adiaeresis, SCIM_KEY_apostrophe },
1178 { SCIM_KEY_aring, SCIM_KEY_bracketleft },
1179 { SCIM_KEY_odiaeresis, SCIM_KEY_semicolon },
1180 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
1181 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
1184 static __Uint16Pair __us_to_finnish_normal [] = {
1185 { SCIM_KEY_apostrophe, SCIM_KEY_adiaeresis },
1186 { SCIM_KEY_minus, SCIM_KEY_plus },
1187 { SCIM_KEY_slash, SCIM_KEY_minus },
1188 { SCIM_KEY_semicolon, SCIM_KEY_odiaeresis },
1189 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
1190 { SCIM_KEY_bracketleft, SCIM_KEY_aring },
1191 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
1192 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
1193 { SCIM_KEY_grave, SCIM_KEY_section },
1196 static __Uint16Pair __finnish_to_us_caps [] = {
1197 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
1198 { SCIM_KEY_plus, SCIM_KEY_minus },
1199 { SCIM_KEY_minus, SCIM_KEY_slash },
1200 { SCIM_KEY_section, SCIM_KEY_grave },
1201 { SCIM_KEY_Adiaeresis, SCIM_KEY_apostrophe },
1202 { SCIM_KEY_Aring, SCIM_KEY_bracketleft },
1203 { SCIM_KEY_Odiaeresis, SCIM_KEY_semicolon },
1204 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
1205 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
1208 static __Uint16Pair __us_to_finnish_caps [] = {
1209 { SCIM_KEY_apostrophe, SCIM_KEY_Adiaeresis },
1210 { SCIM_KEY_minus, SCIM_KEY_plus },
1211 { SCIM_KEY_slash, SCIM_KEY_minus },
1212 { SCIM_KEY_semicolon, SCIM_KEY_Odiaeresis },
1213 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
1214 { SCIM_KEY_bracketleft, SCIM_KEY_Aring },
1215 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
1216 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
1217 { SCIM_KEY_grave, SCIM_KEY_section },
1220 static __Uint16Pair __finnish_to_us_shift [] = {
1221 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1222 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1223 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1224 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1225 { SCIM_KEY_asterisk, SCIM_KEY_bar },
1226 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1227 { SCIM_KEY_colon, SCIM_KEY_greater },
1228 { SCIM_KEY_semicolon, SCIM_KEY_less },
1229 { SCIM_KEY_equal, SCIM_KEY_parenright },
1230 { SCIM_KEY_question, SCIM_KEY_underscore },
1231 { SCIM_KEY_underscore, SCIM_KEY_question },
1232 { SCIM_KEY_currency, SCIM_KEY_dollar },
1233 { SCIM_KEY_onehalf, SCIM_KEY_asciitilde },
1234 { SCIM_KEY_Adiaeresis, SCIM_KEY_quotedbl },
1235 { SCIM_KEY_Aring, SCIM_KEY_braceleft },
1236 { SCIM_KEY_Odiaeresis, SCIM_KEY_colon },
1237 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
1238 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceright },
1241 static __Uint16Pair __us_to_finnish_shift [] = {
1242 { SCIM_KEY_quotedbl, SCIM_KEY_Adiaeresis },
1243 { SCIM_KEY_dollar, SCIM_KEY_currency },
1244 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1245 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1246 { SCIM_KEY_parenright, SCIM_KEY_equal },
1247 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1248 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
1249 { SCIM_KEY_colon, SCIM_KEY_Odiaeresis },
1250 { SCIM_KEY_less, SCIM_KEY_semicolon },
1251 { SCIM_KEY_greater, SCIM_KEY_colon },
1252 { SCIM_KEY_question, SCIM_KEY_underscore },
1253 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1254 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1255 { SCIM_KEY_underscore, SCIM_KEY_question },
1256 { SCIM_KEY_braceleft, SCIM_KEY_Aring },
1257 { SCIM_KEY_bar, SCIM_KEY_asterisk },
1258 { SCIM_KEY_braceright, SCIM_KEY_dead_circumflex },
1259 { SCIM_KEY_asciitilde, SCIM_KEY_onehalf },
1262 static __Uint16Pair __finnish_to_us_caps_shift [] = {
1263 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1264 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1265 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1266 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1267 { SCIM_KEY_asterisk, SCIM_KEY_bar },
1268 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1269 { SCIM_KEY_colon, SCIM_KEY_greater },
1270 { SCIM_KEY_semicolon, SCIM_KEY_less },
1271 { SCIM_KEY_equal, SCIM_KEY_parenright },
1272 { SCIM_KEY_question, SCIM_KEY_underscore },
1273 { SCIM_KEY_underscore, SCIM_KEY_question },
1274 { SCIM_KEY_currency, SCIM_KEY_dollar },
1275 { SCIM_KEY_onehalf, SCIM_KEY_asciitilde },
1276 { SCIM_KEY_adiaeresis, SCIM_KEY_quotedbl },
1277 { SCIM_KEY_aring, SCIM_KEY_braceleft },
1278 { SCIM_KEY_odiaeresis, SCIM_KEY_colon },
1279 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
1280 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceright },
1283 static __Uint16Pair __us_to_finnish_caps_shift [] = {
1284 { SCIM_KEY_quotedbl, SCIM_KEY_adiaeresis },
1285 { SCIM_KEY_dollar, SCIM_KEY_currency },
1286 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1287 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1288 { SCIM_KEY_parenright, SCIM_KEY_equal },
1289 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1290 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
1291 { SCIM_KEY_colon, SCIM_KEY_odiaeresis },
1292 { SCIM_KEY_less, SCIM_KEY_semicolon },
1293 { SCIM_KEY_greater, SCIM_KEY_colon },
1294 { SCIM_KEY_question, SCIM_KEY_underscore },
1295 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1296 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1297 { SCIM_KEY_underscore, SCIM_KEY_question },
1298 { SCIM_KEY_braceleft, SCIM_KEY_aring },
1299 { SCIM_KEY_bar, SCIM_KEY_asterisk },
1300 { SCIM_KEY_braceright, SCIM_KEY_dead_circumflex },
1301 { SCIM_KEY_asciitilde, SCIM_KEY_onehalf },
1304 static __Uint16Pair __french_to_us_normal [] = {
1305 { SCIM_KEY_exclam, SCIM_KEY_slash },
1306 { SCIM_KEY_quotedbl, SCIM_KEY_3 },
1307 { SCIM_KEY_dollar, SCIM_KEY_bracketright },
1308 { SCIM_KEY_ampersand, SCIM_KEY_1 },
1309 { SCIM_KEY_apostrophe, SCIM_KEY_4 },
1310 { SCIM_KEY_parenleft, SCIM_KEY_5 },
1311 { SCIM_KEY_parenright, SCIM_KEY_minus },
1312 { SCIM_KEY_asterisk, SCIM_KEY_backslash },
1313 { SCIM_KEY_comma, SCIM_KEY_m },
1314 { SCIM_KEY_minus, SCIM_KEY_6 },
1315 { SCIM_KEY_colon, SCIM_KEY_period },
1316 { SCIM_KEY_semicolon, SCIM_KEY_comma },
1317 { SCIM_KEY_underscore, SCIM_KEY_8 },
1318 { SCIM_KEY_a, SCIM_KEY_q },
1319 { SCIM_KEY_m, SCIM_KEY_semicolon },
1320 { SCIM_KEY_q, SCIM_KEY_a },
1321 { SCIM_KEY_w, SCIM_KEY_z },
1322 { SCIM_KEY_z, SCIM_KEY_w },
1323 { SCIM_KEY_twosuperior, SCIM_KEY_grave },
1324 { SCIM_KEY_agrave, SCIM_KEY_0 },
1325 { SCIM_KEY_ccedilla, SCIM_KEY_9 },
1326 { SCIM_KEY_egrave, SCIM_KEY_7 },
1327 { SCIM_KEY_eacute, SCIM_KEY_2 },
1328 { SCIM_KEY_ugrave, SCIM_KEY_apostrophe },
1329 { SCIM_KEY_dead_circumflex, SCIM_KEY_bracketleft },
1332 static __Uint16Pair __us_to_french_normal [] = {
1333 { SCIM_KEY_apostrophe, SCIM_KEY_ugrave },
1334 { SCIM_KEY_comma, SCIM_KEY_semicolon },
1335 { SCIM_KEY_minus, SCIM_KEY_parenright },
1336 { SCIM_KEY_period, SCIM_KEY_colon },
1337 { SCIM_KEY_slash, SCIM_KEY_exclam },
1338 { SCIM_KEY_0, SCIM_KEY_agrave },
1339 { SCIM_KEY_1, SCIM_KEY_ampersand },
1340 { SCIM_KEY_2, SCIM_KEY_eacute },
1341 { SCIM_KEY_3, SCIM_KEY_quotedbl },
1342 { SCIM_KEY_4, SCIM_KEY_apostrophe },
1343 { SCIM_KEY_5, SCIM_KEY_parenleft },
1344 { SCIM_KEY_6, SCIM_KEY_minus },
1345 { SCIM_KEY_7, SCIM_KEY_egrave },
1346 { SCIM_KEY_8, SCIM_KEY_underscore },
1347 { SCIM_KEY_9, SCIM_KEY_ccedilla },
1348 { SCIM_KEY_semicolon, SCIM_KEY_m },
1349 { SCIM_KEY_bracketleft, SCIM_KEY_dead_circumflex },
1350 { SCIM_KEY_backslash, SCIM_KEY_asterisk },
1351 { SCIM_KEY_bracketright, SCIM_KEY_dollar },
1352 { SCIM_KEY_grave, SCIM_KEY_twosuperior },
1353 { SCIM_KEY_a, SCIM_KEY_q },
1354 { SCIM_KEY_m, SCIM_KEY_comma },
1355 { SCIM_KEY_q, SCIM_KEY_a },
1356 { SCIM_KEY_w, SCIM_KEY_z },
1357 { SCIM_KEY_z, SCIM_KEY_w },
1360 static __Uint16Pair __french_to_us_caps [] = {
1361 { SCIM_KEY_exclam, SCIM_KEY_slash },
1362 { SCIM_KEY_quotedbl, SCIM_KEY_3 },
1363 { SCIM_KEY_dollar, SCIM_KEY_bracketright },
1364 { SCIM_KEY_ampersand, SCIM_KEY_1 },
1365 { SCIM_KEY_apostrophe, SCIM_KEY_4 },
1366 { SCIM_KEY_parenleft, SCIM_KEY_5 },
1367 { SCIM_KEY_parenright, SCIM_KEY_minus },
1368 { SCIM_KEY_asterisk, SCIM_KEY_backslash },
1369 { SCIM_KEY_comma, SCIM_KEY_M },
1370 { SCIM_KEY_minus, SCIM_KEY_6 },
1371 { SCIM_KEY_colon, SCIM_KEY_period },
1372 { SCIM_KEY_semicolon, SCIM_KEY_comma },
1373 { SCIM_KEY_A, SCIM_KEY_Q },
1374 { SCIM_KEY_M, SCIM_KEY_semicolon },
1375 { SCIM_KEY_Q, SCIM_KEY_A },
1376 { SCIM_KEY_W, SCIM_KEY_Z },
1377 { SCIM_KEY_Z, SCIM_KEY_W },
1378 { SCIM_KEY_underscore, SCIM_KEY_8 },
1379 { SCIM_KEY_twosuperior, SCIM_KEY_grave },
1380 { SCIM_KEY_Agrave, SCIM_KEY_0 },
1381 { SCIM_KEY_Ccedilla, SCIM_KEY_9 },
1382 { SCIM_KEY_Egrave, SCIM_KEY_7 },
1383 { SCIM_KEY_Eacute, SCIM_KEY_2 },
1384 { SCIM_KEY_Ugrave, SCIM_KEY_apostrophe },
1385 { SCIM_KEY_dead_circumflex, SCIM_KEY_bracketleft },
1388 static __Uint16Pair __us_to_french_caps [] = {
1389 { SCIM_KEY_apostrophe, SCIM_KEY_Ugrave },
1390 { SCIM_KEY_comma, SCIM_KEY_semicolon },
1391 { SCIM_KEY_minus, SCIM_KEY_parenright },
1392 { SCIM_KEY_period, SCIM_KEY_colon },
1393 { SCIM_KEY_slash, SCIM_KEY_exclam },
1394 { SCIM_KEY_0, SCIM_KEY_Agrave },
1395 { SCIM_KEY_1, SCIM_KEY_ampersand },
1396 { SCIM_KEY_2, SCIM_KEY_Eacute },
1397 { SCIM_KEY_3, SCIM_KEY_quotedbl },
1398 { SCIM_KEY_4, SCIM_KEY_apostrophe },
1399 { SCIM_KEY_5, SCIM_KEY_parenleft },
1400 { SCIM_KEY_6, SCIM_KEY_minus },
1401 { SCIM_KEY_7, SCIM_KEY_Egrave },
1402 { SCIM_KEY_8, SCIM_KEY_underscore },
1403 { SCIM_KEY_9, SCIM_KEY_Ccedilla },
1404 { SCIM_KEY_semicolon, SCIM_KEY_M },
1405 { SCIM_KEY_A, SCIM_KEY_Q },
1406 { SCIM_KEY_M, SCIM_KEY_comma },
1407 { SCIM_KEY_Q, SCIM_KEY_A },
1408 { SCIM_KEY_W, SCIM_KEY_Z },
1409 { SCIM_KEY_Z, SCIM_KEY_W },
1410 { SCIM_KEY_bracketleft, SCIM_KEY_dead_circumflex },
1411 { SCIM_KEY_backslash, SCIM_KEY_asterisk },
1412 { SCIM_KEY_bracketright, SCIM_KEY_dollar },
1413 { SCIM_KEY_grave, SCIM_KEY_twosuperior },
1416 static __Uint16Pair __french_to_us_shift [] = {
1417 { SCIM_KEY_percent, SCIM_KEY_quotedbl },
1418 { SCIM_KEY_period, SCIM_KEY_less },
1419 { SCIM_KEY_slash, SCIM_KEY_greater },
1420 { SCIM_KEY_0, SCIM_KEY_parenright },
1421 { SCIM_KEY_1, SCIM_KEY_exclam },
1422 { SCIM_KEY_2, SCIM_KEY_at },
1423 { SCIM_KEY_3, SCIM_KEY_numbersign },
1424 { SCIM_KEY_4, SCIM_KEY_dollar },
1425 { SCIM_KEY_5, SCIM_KEY_percent },
1426 { SCIM_KEY_6, SCIM_KEY_asciicircum },
1427 { SCIM_KEY_7, SCIM_KEY_ampersand },
1428 { SCIM_KEY_8, SCIM_KEY_asterisk },
1429 { SCIM_KEY_9, SCIM_KEY_parenleft },
1430 { SCIM_KEY_question, SCIM_KEY_M },
1431 { SCIM_KEY_A, SCIM_KEY_Q },
1432 { SCIM_KEY_M, SCIM_KEY_colon },
1433 { SCIM_KEY_Q, SCIM_KEY_A },
1434 { SCIM_KEY_W, SCIM_KEY_Z },
1435 { SCIM_KEY_Z, SCIM_KEY_W },
1436 { SCIM_KEY_sterling, SCIM_KEY_braceright },
1437 { SCIM_KEY_section, SCIM_KEY_question },
1438 { SCIM_KEY_degree, SCIM_KEY_underscore },
1439 { SCIM_KEY_mu, SCIM_KEY_bar },
1440 { SCIM_KEY_dead_diaeresis, SCIM_KEY_braceleft },
1443 static __Uint16Pair __us_to_french_shift [] = {
1444 { SCIM_KEY_exclam, SCIM_KEY_1 },
1445 { SCIM_KEY_quotedbl, SCIM_KEY_percent },
1446 { SCIM_KEY_numbersign, SCIM_KEY_3 },
1447 { SCIM_KEY_dollar, SCIM_KEY_4 },
1448 { SCIM_KEY_percent, SCIM_KEY_5 },
1449 { SCIM_KEY_ampersand, SCIM_KEY_7 },
1450 { SCIM_KEY_parenleft, SCIM_KEY_9 },
1451 { SCIM_KEY_parenright, SCIM_KEY_0 },
1452 { SCIM_KEY_asterisk, SCIM_KEY_8 },
1453 { SCIM_KEY_colon, SCIM_KEY_M },
1454 { SCIM_KEY_less, SCIM_KEY_period },
1455 { SCIM_KEY_greater, SCIM_KEY_slash },
1456 { SCIM_KEY_question, SCIM_KEY_section },
1457 { SCIM_KEY_at, SCIM_KEY_2 },
1458 { SCIM_KEY_A, SCIM_KEY_Q },
1459 { SCIM_KEY_M, SCIM_KEY_question },
1460 { SCIM_KEY_Q, SCIM_KEY_A },
1461 { SCIM_KEY_W, SCIM_KEY_Z },
1462 { SCIM_KEY_Z, SCIM_KEY_W },
1463 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
1464 { SCIM_KEY_underscore, SCIM_KEY_degree },
1465 { SCIM_KEY_braceleft, SCIM_KEY_dead_diaeresis },
1466 { SCIM_KEY_bar, SCIM_KEY_mu },
1467 { SCIM_KEY_braceright, SCIM_KEY_sterling },
1470 static __Uint16Pair __french_to_us_caps_shift [] = {
1471 { SCIM_KEY_percent, SCIM_KEY_quotedbl },
1472 { SCIM_KEY_period, SCIM_KEY_less },
1473 { SCIM_KEY_slash, SCIM_KEY_greater },
1474 { SCIM_KEY_0, SCIM_KEY_parenright },
1475 { SCIM_KEY_1, SCIM_KEY_exclam },
1476 { SCIM_KEY_2, SCIM_KEY_at },
1477 { SCIM_KEY_3, SCIM_KEY_numbersign },
1478 { SCIM_KEY_4, SCIM_KEY_dollar },
1479 { SCIM_KEY_5, SCIM_KEY_percent },
1480 { SCIM_KEY_6, SCIM_KEY_asciicircum },
1481 { SCIM_KEY_7, SCIM_KEY_ampersand },
1482 { SCIM_KEY_8, SCIM_KEY_asterisk },
1483 { SCIM_KEY_9, SCIM_KEY_parenleft },
1484 { SCIM_KEY_question, SCIM_KEY_m },
1485 { SCIM_KEY_a, SCIM_KEY_q },
1486 { SCIM_KEY_m, SCIM_KEY_colon },
1487 { SCIM_KEY_q, SCIM_KEY_a },
1488 { SCIM_KEY_w, SCIM_KEY_z },
1489 { SCIM_KEY_z, SCIM_KEY_w },
1490 { SCIM_KEY_sterling, SCIM_KEY_braceright },
1491 { SCIM_KEY_section, SCIM_KEY_question },
1492 { SCIM_KEY_degree, SCIM_KEY_underscore },
1493 { SCIM_KEY_mu, SCIM_KEY_bar },
1494 { SCIM_KEY_dead_diaeresis, SCIM_KEY_braceleft },
1497 static __Uint16Pair __us_to_french_caps_shift [] = {
1498 { SCIM_KEY_exclam, SCIM_KEY_1 },
1499 { SCIM_KEY_quotedbl, SCIM_KEY_percent },
1500 { SCIM_KEY_numbersign, SCIM_KEY_3 },
1501 { SCIM_KEY_dollar, SCIM_KEY_4 },
1502 { SCIM_KEY_percent, SCIM_KEY_5 },
1503 { SCIM_KEY_ampersand, SCIM_KEY_7 },
1504 { SCIM_KEY_parenleft, SCIM_KEY_9 },
1505 { SCIM_KEY_parenright, SCIM_KEY_0 },
1506 { SCIM_KEY_asterisk, SCIM_KEY_8 },
1507 { SCIM_KEY_colon, SCIM_KEY_m },
1508 { SCIM_KEY_less, SCIM_KEY_period },
1509 { SCIM_KEY_greater, SCIM_KEY_slash },
1510 { SCIM_KEY_question, SCIM_KEY_section },
1511 { SCIM_KEY_at, SCIM_KEY_2 },
1512 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
1513 { SCIM_KEY_underscore, SCIM_KEY_degree },
1514 { SCIM_KEY_a, SCIM_KEY_q },
1515 { SCIM_KEY_m, SCIM_KEY_question },
1516 { SCIM_KEY_q, SCIM_KEY_a },
1517 { SCIM_KEY_w, SCIM_KEY_z },
1518 { SCIM_KEY_z, SCIM_KEY_w },
1519 { SCIM_KEY_braceleft, SCIM_KEY_dead_diaeresis },
1520 { SCIM_KEY_bar, SCIM_KEY_mu },
1521 { SCIM_KEY_braceright, SCIM_KEY_sterling },
1524 static __Uint16Pair __french_switzerland_to_us_normal [] = {
1525 { SCIM_KEY_dollar, SCIM_KEY_backslash },
1526 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
1527 { SCIM_KEY_minus, SCIM_KEY_slash },
1528 { SCIM_KEY_y, SCIM_KEY_z },
1529 { SCIM_KEY_z, SCIM_KEY_y },
1530 { SCIM_KEY_section, SCIM_KEY_grave },
1531 { SCIM_KEY_agrave, SCIM_KEY_apostrophe },
1532 { SCIM_KEY_egrave, SCIM_KEY_bracketleft },
1533 { SCIM_KEY_eacute, SCIM_KEY_semicolon },
1534 { SCIM_KEY_dead_circumflex, SCIM_KEY_equal },
1535 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
1538 static __Uint16Pair __us_to_french_switzerland_normal [] = {
1539 { SCIM_KEY_apostrophe, SCIM_KEY_agrave },
1540 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
1541 { SCIM_KEY_slash, SCIM_KEY_minus },
1542 { SCIM_KEY_semicolon, SCIM_KEY_eacute },
1543 { SCIM_KEY_equal, SCIM_KEY_dead_circumflex },
1544 { SCIM_KEY_bracketleft, SCIM_KEY_egrave },
1545 { SCIM_KEY_backslash, SCIM_KEY_dollar },
1546 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
1547 { SCIM_KEY_grave, SCIM_KEY_section },
1548 { SCIM_KEY_y, SCIM_KEY_z },
1549 { SCIM_KEY_z, SCIM_KEY_y },
1552 static __Uint16Pair __french_switzerland_to_us_caps [] = {
1553 { SCIM_KEY_dollar, SCIM_KEY_backslash },
1554 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
1555 { SCIM_KEY_minus, SCIM_KEY_slash },
1556 { SCIM_KEY_Y, SCIM_KEY_Z },
1557 { SCIM_KEY_Z, SCIM_KEY_Y },
1558 { SCIM_KEY_section, SCIM_KEY_grave },
1559 { SCIM_KEY_Agrave, SCIM_KEY_apostrophe },
1560 { SCIM_KEY_Egrave, SCIM_KEY_bracketleft },
1561 { SCIM_KEY_Eacute, SCIM_KEY_semicolon },
1562 { SCIM_KEY_dead_circumflex, SCIM_KEY_equal },
1563 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
1566 static __Uint16Pair __us_to_french_switzerland_caps [] = {
1567 { SCIM_KEY_apostrophe, SCIM_KEY_Agrave },
1568 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
1569 { SCIM_KEY_slash, SCIM_KEY_minus },
1570 { SCIM_KEY_semicolon, SCIM_KEY_Eacute },
1571 { SCIM_KEY_equal, SCIM_KEY_dead_circumflex },
1572 { SCIM_KEY_Y, SCIM_KEY_Z },
1573 { SCIM_KEY_Z, SCIM_KEY_Y },
1574 { SCIM_KEY_bracketleft, SCIM_KEY_Egrave },
1575 { SCIM_KEY_backslash, SCIM_KEY_dollar },
1576 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
1577 { SCIM_KEY_grave, SCIM_KEY_section },
1580 static __Uint16Pair __french_switzerland_to_us_shift [] = {
1581 { SCIM_KEY_exclam, SCIM_KEY_braceright },
1582 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1583 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1584 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1585 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1586 { SCIM_KEY_asterisk, SCIM_KEY_numbersign },
1587 { SCIM_KEY_plus, SCIM_KEY_exclam },
1588 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1589 { SCIM_KEY_colon, SCIM_KEY_greater },
1590 { SCIM_KEY_semicolon, SCIM_KEY_less },
1591 { SCIM_KEY_equal, SCIM_KEY_parenright },
1592 { SCIM_KEY_question, SCIM_KEY_underscore },
1593 { SCIM_KEY_Y, SCIM_KEY_Z },
1594 { SCIM_KEY_Z, SCIM_KEY_Y },
1595 { SCIM_KEY_underscore, SCIM_KEY_question },
1596 { SCIM_KEY_sterling, SCIM_KEY_bar },
1597 { SCIM_KEY_degree, SCIM_KEY_asciitilde },
1598 { SCIM_KEY_adiaeresis, SCIM_KEY_quotedbl },
1599 { SCIM_KEY_ccedilla, SCIM_KEY_dollar },
1600 { SCIM_KEY_odiaeresis, SCIM_KEY_colon },
1601 { SCIM_KEY_udiaeresis, SCIM_KEY_braceleft },
1602 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
1605 static __Uint16Pair __us_to_french_switzerland_shift [] = {
1606 { SCIM_KEY_exclam, SCIM_KEY_plus },
1607 { SCIM_KEY_quotedbl, SCIM_KEY_adiaeresis },
1608 { SCIM_KEY_numbersign, SCIM_KEY_asterisk },
1609 { SCIM_KEY_dollar, SCIM_KEY_ccedilla },
1610 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1611 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1612 { SCIM_KEY_parenright, SCIM_KEY_equal },
1613 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1614 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
1615 { SCIM_KEY_colon, SCIM_KEY_odiaeresis },
1616 { SCIM_KEY_less, SCIM_KEY_semicolon },
1617 { SCIM_KEY_greater, SCIM_KEY_colon },
1618 { SCIM_KEY_question, SCIM_KEY_underscore },
1619 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1620 { SCIM_KEY_Y, SCIM_KEY_Z },
1621 { SCIM_KEY_Z, SCIM_KEY_Y },
1622 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1623 { SCIM_KEY_underscore, SCIM_KEY_question },
1624 { SCIM_KEY_braceleft, SCIM_KEY_udiaeresis },
1625 { SCIM_KEY_bar, SCIM_KEY_sterling },
1626 { SCIM_KEY_braceright, SCIM_KEY_exclam },
1627 { SCIM_KEY_asciitilde, SCIM_KEY_degree },
1630 static __Uint16Pair __french_switzerland_to_us_caps_shift [] = {
1631 { SCIM_KEY_exclam, SCIM_KEY_braceright },
1632 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1633 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1634 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1635 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1636 { SCIM_KEY_asterisk, SCIM_KEY_numbersign },
1637 { SCIM_KEY_plus, SCIM_KEY_exclam },
1638 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1639 { SCIM_KEY_colon, SCIM_KEY_greater },
1640 { SCIM_KEY_semicolon, SCIM_KEY_less },
1641 { SCIM_KEY_equal, SCIM_KEY_parenright },
1642 { SCIM_KEY_question, SCIM_KEY_underscore },
1643 { SCIM_KEY_underscore, SCIM_KEY_question },
1644 { SCIM_KEY_y, SCIM_KEY_z },
1645 { SCIM_KEY_z, SCIM_KEY_y },
1646 { SCIM_KEY_sterling, SCIM_KEY_bar },
1647 { SCIM_KEY_degree, SCIM_KEY_asciitilde },
1648 { SCIM_KEY_Adiaeresis, SCIM_KEY_quotedbl },
1649 { SCIM_KEY_Ccedilla, SCIM_KEY_dollar },
1650 { SCIM_KEY_Odiaeresis, SCIM_KEY_colon },
1651 { SCIM_KEY_Udiaeresis, SCIM_KEY_braceleft },
1652 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
1655 static __Uint16Pair __us_to_french_switzerland_caps_shift [] = {
1656 { SCIM_KEY_exclam, SCIM_KEY_plus },
1657 { SCIM_KEY_quotedbl, SCIM_KEY_Adiaeresis },
1658 { SCIM_KEY_numbersign, SCIM_KEY_asterisk },
1659 { SCIM_KEY_dollar, SCIM_KEY_Ccedilla },
1660 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1661 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1662 { SCIM_KEY_parenright, SCIM_KEY_equal },
1663 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1664 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
1665 { SCIM_KEY_colon, SCIM_KEY_Odiaeresis },
1666 { SCIM_KEY_less, SCIM_KEY_semicolon },
1667 { SCIM_KEY_greater, SCIM_KEY_colon },
1668 { SCIM_KEY_question, SCIM_KEY_underscore },
1669 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1670 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1671 { SCIM_KEY_underscore, SCIM_KEY_question },
1672 { SCIM_KEY_y, SCIM_KEY_z },
1673 { SCIM_KEY_z, SCIM_KEY_y },
1674 { SCIM_KEY_braceleft, SCIM_KEY_Udiaeresis },
1675 { SCIM_KEY_bar, SCIM_KEY_sterling },
1676 { SCIM_KEY_braceright, SCIM_KEY_exclam },
1677 { SCIM_KEY_asciitilde, SCIM_KEY_degree },
1680 static __Uint16Pair __german_deadkeys_to_us_normal [] = {
1681 { SCIM_KEY_numbersign, SCIM_KEY_backslash },
1682 { SCIM_KEY_plus, SCIM_KEY_bracketright },
1683 { SCIM_KEY_minus, SCIM_KEY_slash },
1684 { SCIM_KEY_y, SCIM_KEY_z },
1685 { SCIM_KEY_z, SCIM_KEY_y },
1686 { SCIM_KEY_ssharp, SCIM_KEY_minus },
1687 { SCIM_KEY_adiaeresis, SCIM_KEY_apostrophe },
1688 { SCIM_KEY_odiaeresis, SCIM_KEY_semicolon },
1689 { SCIM_KEY_udiaeresis, SCIM_KEY_bracketleft },
1690 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
1691 { SCIM_KEY_dead_circumflex, SCIM_KEY_grave },
1694 static __Uint16Pair __us_to_german_deadkeys_normal [] = {
1695 { SCIM_KEY_apostrophe, SCIM_KEY_adiaeresis },
1696 { SCIM_KEY_minus, SCIM_KEY_ssharp },
1697 { SCIM_KEY_slash, SCIM_KEY_minus },
1698 { SCIM_KEY_semicolon, SCIM_KEY_odiaeresis },
1699 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
1700 { SCIM_KEY_bracketleft, SCIM_KEY_udiaeresis },
1701 { SCIM_KEY_backslash, SCIM_KEY_numbersign },
1702 { SCIM_KEY_bracketright, SCIM_KEY_plus },
1703 { SCIM_KEY_grave, SCIM_KEY_dead_circumflex },
1704 { SCIM_KEY_y, SCIM_KEY_z },
1705 { SCIM_KEY_z, SCIM_KEY_y },
1708 static __Uint16Pair __german_deadkeys_to_us_caps [] = {
1709 { SCIM_KEY_numbersign, SCIM_KEY_backslash },
1710 { SCIM_KEY_plus, SCIM_KEY_bracketright },
1711 { SCIM_KEY_minus, SCIM_KEY_slash },
1712 { SCIM_KEY_Y, SCIM_KEY_Z },
1713 { SCIM_KEY_Z, SCIM_KEY_Y },
1714 { SCIM_KEY_Adiaeresis, SCIM_KEY_apostrophe },
1715 { SCIM_KEY_Odiaeresis, SCIM_KEY_semicolon },
1716 { SCIM_KEY_Udiaeresis, SCIM_KEY_bracketleft },
1717 { SCIM_KEY_ssharp, SCIM_KEY_minus },
1718 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
1719 { SCIM_KEY_dead_circumflex, SCIM_KEY_grave },
1722 static __Uint16Pair __us_to_german_deadkeys_caps [] = {
1723 { SCIM_KEY_apostrophe, SCIM_KEY_Adiaeresis },
1724 { SCIM_KEY_minus, SCIM_KEY_ssharp },
1725 { SCIM_KEY_slash, SCIM_KEY_minus },
1726 { SCIM_KEY_semicolon, SCIM_KEY_Odiaeresis },
1727 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
1728 { SCIM_KEY_Y, SCIM_KEY_Z },
1729 { SCIM_KEY_Z, SCIM_KEY_Y },
1730 { SCIM_KEY_bracketleft, SCIM_KEY_Udiaeresis },
1731 { SCIM_KEY_backslash, SCIM_KEY_numbersign },
1732 { SCIM_KEY_bracketright, SCIM_KEY_plus },
1733 { SCIM_KEY_grave, SCIM_KEY_dead_circumflex },
1736 static __Uint16Pair __german_deadkeys_to_us_shift [] = {
1737 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1738 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1739 { SCIM_KEY_apostrophe, SCIM_KEY_bar },
1740 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1741 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1742 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
1743 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1744 { SCIM_KEY_colon, SCIM_KEY_greater },
1745 { SCIM_KEY_semicolon, SCIM_KEY_less },
1746 { SCIM_KEY_equal, SCIM_KEY_parenright },
1747 { SCIM_KEY_question, SCIM_KEY_underscore },
1748 { SCIM_KEY_Y, SCIM_KEY_Z },
1749 { SCIM_KEY_Z, SCIM_KEY_Y },
1750 { SCIM_KEY_underscore, SCIM_KEY_question },
1751 { SCIM_KEY_section, SCIM_KEY_numbersign },
1752 { SCIM_KEY_degree, SCIM_KEY_asciitilde },
1753 { SCIM_KEY_Adiaeresis, SCIM_KEY_quotedbl },
1754 { SCIM_KEY_Odiaeresis, SCIM_KEY_colon },
1755 { SCIM_KEY_Udiaeresis, SCIM_KEY_braceleft },
1756 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
1759 static __Uint16Pair __us_to_german_deadkeys_shift [] = {
1760 { SCIM_KEY_quotedbl, SCIM_KEY_Adiaeresis },
1761 { SCIM_KEY_numbersign, SCIM_KEY_section },
1762 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1763 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1764 { SCIM_KEY_parenright, SCIM_KEY_equal },
1765 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1766 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
1767 { SCIM_KEY_colon, SCIM_KEY_Odiaeresis },
1768 { SCIM_KEY_less, SCIM_KEY_semicolon },
1769 { SCIM_KEY_greater, SCIM_KEY_colon },
1770 { SCIM_KEY_question, SCIM_KEY_underscore },
1771 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1772 { SCIM_KEY_Y, SCIM_KEY_Z },
1773 { SCIM_KEY_Z, SCIM_KEY_Y },
1774 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1775 { SCIM_KEY_underscore, SCIM_KEY_question },
1776 { SCIM_KEY_braceleft, SCIM_KEY_Udiaeresis },
1777 { SCIM_KEY_bar, SCIM_KEY_apostrophe },
1778 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
1779 { SCIM_KEY_asciitilde, SCIM_KEY_degree },
1782 static __Uint16Pair __german_deadkeys_to_us_caps_shift [] = {
1783 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1784 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1785 { SCIM_KEY_apostrophe, SCIM_KEY_bar },
1786 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1787 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1788 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
1789 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1790 { SCIM_KEY_colon, SCIM_KEY_greater },
1791 { SCIM_KEY_semicolon, SCIM_KEY_less },
1792 { SCIM_KEY_equal, SCIM_KEY_parenright },
1793 { SCIM_KEY_question, SCIM_KEY_underscore },
1794 { SCIM_KEY_underscore, SCIM_KEY_question },
1795 { SCIM_KEY_y, SCIM_KEY_z },
1796 { SCIM_KEY_z, SCIM_KEY_y },
1797 { SCIM_KEY_section, SCIM_KEY_numbersign },
1798 { SCIM_KEY_degree, SCIM_KEY_asciitilde },
1799 { SCIM_KEY_adiaeresis, SCIM_KEY_quotedbl },
1800 { SCIM_KEY_odiaeresis, SCIM_KEY_colon },
1801 { SCIM_KEY_udiaeresis, SCIM_KEY_braceleft },
1802 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
1805 static __Uint16Pair __us_to_german_deadkeys_caps_shift [] = {
1806 { SCIM_KEY_quotedbl, SCIM_KEY_adiaeresis },
1807 { SCIM_KEY_numbersign, SCIM_KEY_section },
1808 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1809 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1810 { SCIM_KEY_parenright, SCIM_KEY_equal },
1811 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1812 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
1813 { SCIM_KEY_colon, SCIM_KEY_odiaeresis },
1814 { SCIM_KEY_less, SCIM_KEY_semicolon },
1815 { SCIM_KEY_greater, SCIM_KEY_colon },
1816 { SCIM_KEY_question, SCIM_KEY_underscore },
1817 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1818 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1819 { SCIM_KEY_underscore, SCIM_KEY_question },
1820 { SCIM_KEY_y, SCIM_KEY_z },
1821 { SCIM_KEY_z, SCIM_KEY_y },
1822 { SCIM_KEY_braceleft, SCIM_KEY_udiaeresis },
1823 { SCIM_KEY_bar, SCIM_KEY_apostrophe },
1824 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
1825 { SCIM_KEY_asciitilde, SCIM_KEY_degree },
1828 static __Uint16Pair __german_to_us_normal [] = {
1829 { SCIM_KEY_numbersign, SCIM_KEY_backslash },
1830 { SCIM_KEY_plus, SCIM_KEY_bracketright },
1831 { SCIM_KEY_minus, SCIM_KEY_slash },
1832 { SCIM_KEY_asciicircum, SCIM_KEY_grave },
1833 { SCIM_KEY_y, SCIM_KEY_z },
1834 { SCIM_KEY_z, SCIM_KEY_y },
1835 { SCIM_KEY_acute, SCIM_KEY_equal },
1836 { SCIM_KEY_ssharp, SCIM_KEY_minus },
1837 { SCIM_KEY_adiaeresis, SCIM_KEY_apostrophe },
1838 { SCIM_KEY_odiaeresis, SCIM_KEY_semicolon },
1839 { SCIM_KEY_udiaeresis, SCIM_KEY_bracketleft },
1842 static __Uint16Pair __us_to_german_normal [] = {
1843 { SCIM_KEY_apostrophe, SCIM_KEY_adiaeresis },
1844 { SCIM_KEY_minus, SCIM_KEY_ssharp },
1845 { SCIM_KEY_slash, SCIM_KEY_minus },
1846 { SCIM_KEY_semicolon, SCIM_KEY_odiaeresis },
1847 { SCIM_KEY_equal, SCIM_KEY_acute },
1848 { SCIM_KEY_bracketleft, SCIM_KEY_udiaeresis },
1849 { SCIM_KEY_backslash, SCIM_KEY_numbersign },
1850 { SCIM_KEY_bracketright, SCIM_KEY_plus },
1851 { SCIM_KEY_grave, SCIM_KEY_asciicircum },
1852 { SCIM_KEY_y, SCIM_KEY_z },
1853 { SCIM_KEY_z, SCIM_KEY_y },
1856 static __Uint16Pair __german_to_us_caps [] = {
1857 { SCIM_KEY_numbersign, SCIM_KEY_backslash },
1858 { SCIM_KEY_plus, SCIM_KEY_bracketright },
1859 { SCIM_KEY_minus, SCIM_KEY_slash },
1860 { SCIM_KEY_Y, SCIM_KEY_Z },
1861 { SCIM_KEY_Z, SCIM_KEY_Y },
1862 { SCIM_KEY_asciicircum, SCIM_KEY_grave },
1863 { SCIM_KEY_acute, SCIM_KEY_equal },
1864 { SCIM_KEY_Adiaeresis, SCIM_KEY_apostrophe },
1865 { SCIM_KEY_Odiaeresis, SCIM_KEY_semicolon },
1866 { SCIM_KEY_Udiaeresis, SCIM_KEY_bracketleft },
1867 { SCIM_KEY_ssharp, SCIM_KEY_minus },
1870 static __Uint16Pair __us_to_german_caps [] = {
1871 { SCIM_KEY_apostrophe, SCIM_KEY_Adiaeresis },
1872 { SCIM_KEY_minus, SCIM_KEY_ssharp },
1873 { SCIM_KEY_slash, SCIM_KEY_minus },
1874 { SCIM_KEY_semicolon, SCIM_KEY_Odiaeresis },
1875 { SCIM_KEY_equal, SCIM_KEY_acute },
1876 { SCIM_KEY_Y, SCIM_KEY_Z },
1877 { SCIM_KEY_Z, SCIM_KEY_Y },
1878 { SCIM_KEY_bracketleft, SCIM_KEY_Udiaeresis },
1879 { SCIM_KEY_backslash, SCIM_KEY_numbersign },
1880 { SCIM_KEY_bracketright, SCIM_KEY_plus },
1881 { SCIM_KEY_grave, SCIM_KEY_asciicircum },
1884 static __Uint16Pair __german_to_us_shift [] = {
1885 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1886 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1887 { SCIM_KEY_apostrophe, SCIM_KEY_bar },
1888 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1889 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1890 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
1891 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1892 { SCIM_KEY_colon, SCIM_KEY_greater },
1893 { SCIM_KEY_semicolon, SCIM_KEY_less },
1894 { SCIM_KEY_equal, SCIM_KEY_parenright },
1895 { SCIM_KEY_question, SCIM_KEY_underscore },
1896 { SCIM_KEY_Y, SCIM_KEY_Z },
1897 { SCIM_KEY_Z, SCIM_KEY_Y },
1898 { SCIM_KEY_underscore, SCIM_KEY_question },
1899 { SCIM_KEY_grave, SCIM_KEY_plus },
1900 { SCIM_KEY_section, SCIM_KEY_numbersign },
1901 { SCIM_KEY_degree, SCIM_KEY_asciitilde },
1902 { SCIM_KEY_Adiaeresis, SCIM_KEY_quotedbl },
1903 { SCIM_KEY_Odiaeresis, SCIM_KEY_colon },
1904 { SCIM_KEY_Udiaeresis, SCIM_KEY_braceleft },
1907 static __Uint16Pair __us_to_german_shift [] = {
1908 { SCIM_KEY_quotedbl, SCIM_KEY_Adiaeresis },
1909 { SCIM_KEY_numbersign, SCIM_KEY_section },
1910 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1911 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1912 { SCIM_KEY_parenright, SCIM_KEY_equal },
1913 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1914 { SCIM_KEY_plus, SCIM_KEY_grave },
1915 { SCIM_KEY_colon, SCIM_KEY_Odiaeresis },
1916 { SCIM_KEY_less, SCIM_KEY_semicolon },
1917 { SCIM_KEY_greater, SCIM_KEY_colon },
1918 { SCIM_KEY_question, SCIM_KEY_underscore },
1919 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1920 { SCIM_KEY_Y, SCIM_KEY_Z },
1921 { SCIM_KEY_Z, SCIM_KEY_Y },
1922 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1923 { SCIM_KEY_underscore, SCIM_KEY_question },
1924 { SCIM_KEY_braceleft, SCIM_KEY_Udiaeresis },
1925 { SCIM_KEY_bar, SCIM_KEY_apostrophe },
1926 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
1927 { SCIM_KEY_asciitilde, SCIM_KEY_degree },
1930 static __Uint16Pair __german_to_us_caps_shift [] = {
1931 { SCIM_KEY_quotedbl, SCIM_KEY_at },
1932 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
1933 { SCIM_KEY_apostrophe, SCIM_KEY_bar },
1934 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
1935 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
1936 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
1937 { SCIM_KEY_slash, SCIM_KEY_ampersand },
1938 { SCIM_KEY_colon, SCIM_KEY_greater },
1939 { SCIM_KEY_semicolon, SCIM_KEY_less },
1940 { SCIM_KEY_equal, SCIM_KEY_parenright },
1941 { SCIM_KEY_question, SCIM_KEY_underscore },
1942 { SCIM_KEY_underscore, SCIM_KEY_question },
1943 { SCIM_KEY_grave, SCIM_KEY_plus },
1944 { SCIM_KEY_y, SCIM_KEY_z },
1945 { SCIM_KEY_z, SCIM_KEY_y },
1946 { SCIM_KEY_section, SCIM_KEY_numbersign },
1947 { SCIM_KEY_degree, SCIM_KEY_asciitilde },
1948 { SCIM_KEY_adiaeresis, SCIM_KEY_quotedbl },
1949 { SCIM_KEY_odiaeresis, SCIM_KEY_colon },
1950 { SCIM_KEY_udiaeresis, SCIM_KEY_braceleft },
1953 static __Uint16Pair __us_to_german_caps_shift [] = {
1954 { SCIM_KEY_quotedbl, SCIM_KEY_adiaeresis },
1955 { SCIM_KEY_numbersign, SCIM_KEY_section },
1956 { SCIM_KEY_ampersand, SCIM_KEY_slash },
1957 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
1958 { SCIM_KEY_parenright, SCIM_KEY_equal },
1959 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
1960 { SCIM_KEY_plus, SCIM_KEY_grave },
1961 { SCIM_KEY_colon, SCIM_KEY_odiaeresis },
1962 { SCIM_KEY_less, SCIM_KEY_semicolon },
1963 { SCIM_KEY_greater, SCIM_KEY_colon },
1964 { SCIM_KEY_question, SCIM_KEY_underscore },
1965 { SCIM_KEY_at, SCIM_KEY_quotedbl },
1966 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
1967 { SCIM_KEY_underscore, SCIM_KEY_question },
1968 { SCIM_KEY_y, SCIM_KEY_z },
1969 { SCIM_KEY_z, SCIM_KEY_y },
1970 { SCIM_KEY_braceleft, SCIM_KEY_udiaeresis },
1971 { SCIM_KEY_bar, SCIM_KEY_apostrophe },
1972 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
1973 { SCIM_KEY_asciitilde, SCIM_KEY_degree },
1976 static __Uint16Pair __german_swiss_to_us_normal [] = {
1977 { SCIM_KEY_dollar, SCIM_KEY_backslash },
1978 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
1979 { SCIM_KEY_minus, SCIM_KEY_slash },
1980 { SCIM_KEY_y, SCIM_KEY_z },
1981 { SCIM_KEY_z, SCIM_KEY_y },
1982 { SCIM_KEY_section, SCIM_KEY_grave },
1983 { SCIM_KEY_adiaeresis, SCIM_KEY_apostrophe },
1984 { SCIM_KEY_odiaeresis, SCIM_KEY_semicolon },
1985 { SCIM_KEY_udiaeresis, SCIM_KEY_bracketleft },
1986 { SCIM_KEY_dead_circumflex, SCIM_KEY_equal },
1987 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
1990 static __Uint16Pair __us_to_german_swiss_normal [] = {
1991 { SCIM_KEY_apostrophe, SCIM_KEY_adiaeresis },
1992 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
1993 { SCIM_KEY_slash, SCIM_KEY_minus },
1994 { SCIM_KEY_semicolon, SCIM_KEY_odiaeresis },
1995 { SCIM_KEY_equal, SCIM_KEY_dead_circumflex },
1996 { SCIM_KEY_bracketleft, SCIM_KEY_udiaeresis },
1997 { SCIM_KEY_backslash, SCIM_KEY_dollar },
1998 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
1999 { SCIM_KEY_grave, SCIM_KEY_section },
2000 { SCIM_KEY_y, SCIM_KEY_z },
2001 { SCIM_KEY_z, SCIM_KEY_y },
2004 static __Uint16Pair __german_swiss_to_us_caps [] = {
2005 { SCIM_KEY_dollar, SCIM_KEY_backslash },
2006 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
2007 { SCIM_KEY_minus, SCIM_KEY_slash },
2008 { SCIM_KEY_Y, SCIM_KEY_Z },
2009 { SCIM_KEY_Z, SCIM_KEY_Y },
2010 { SCIM_KEY_section, SCIM_KEY_grave },
2011 { SCIM_KEY_Adiaeresis, SCIM_KEY_apostrophe },
2012 { SCIM_KEY_Odiaeresis, SCIM_KEY_semicolon },
2013 { SCIM_KEY_Udiaeresis, SCIM_KEY_bracketleft },
2014 { SCIM_KEY_dead_circumflex, SCIM_KEY_equal },
2015 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
2018 static __Uint16Pair __us_to_german_swiss_caps [] = {
2019 { SCIM_KEY_apostrophe, SCIM_KEY_Adiaeresis },
2020 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
2021 { SCIM_KEY_slash, SCIM_KEY_minus },
2022 { SCIM_KEY_semicolon, SCIM_KEY_Odiaeresis },
2023 { SCIM_KEY_equal, SCIM_KEY_dead_circumflex },
2024 { SCIM_KEY_Y, SCIM_KEY_Z },
2025 { SCIM_KEY_Z, SCIM_KEY_Y },
2026 { SCIM_KEY_bracketleft, SCIM_KEY_Udiaeresis },
2027 { SCIM_KEY_backslash, SCIM_KEY_dollar },
2028 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
2029 { SCIM_KEY_grave, SCIM_KEY_section },
2032 static __Uint16Pair __german_swiss_to_us_shift [] = {
2033 { SCIM_KEY_exclam, SCIM_KEY_braceright },
2034 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2035 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2036 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2037 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2038 { SCIM_KEY_asterisk, SCIM_KEY_numbersign },
2039 { SCIM_KEY_plus, SCIM_KEY_exclam },
2040 { SCIM_KEY_slash, SCIM_KEY_ampersand },
2041 { SCIM_KEY_colon, SCIM_KEY_greater },
2042 { SCIM_KEY_semicolon, SCIM_KEY_less },
2043 { SCIM_KEY_equal, SCIM_KEY_parenright },
2044 { SCIM_KEY_question, SCIM_KEY_underscore },
2045 { SCIM_KEY_Y, SCIM_KEY_Z },
2046 { SCIM_KEY_Z, SCIM_KEY_Y },
2047 { SCIM_KEY_underscore, SCIM_KEY_question },
2048 { SCIM_KEY_sterling, SCIM_KEY_bar },
2049 { SCIM_KEY_degree, SCIM_KEY_asciitilde },
2050 { SCIM_KEY_agrave, SCIM_KEY_quotedbl },
2051 { SCIM_KEY_ccedilla, SCIM_KEY_dollar },
2052 { SCIM_KEY_egrave, SCIM_KEY_braceleft },
2053 { SCIM_KEY_eacute, SCIM_KEY_colon },
2054 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
2057 static __Uint16Pair __us_to_german_swiss_shift [] = {
2058 { SCIM_KEY_exclam, SCIM_KEY_plus },
2059 { SCIM_KEY_quotedbl, SCIM_KEY_agrave },
2060 { SCIM_KEY_numbersign, SCIM_KEY_asterisk },
2061 { SCIM_KEY_dollar, SCIM_KEY_ccedilla },
2062 { SCIM_KEY_ampersand, SCIM_KEY_slash },
2063 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2064 { SCIM_KEY_parenright, SCIM_KEY_equal },
2065 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2066 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
2067 { SCIM_KEY_colon, SCIM_KEY_eacute },
2068 { SCIM_KEY_less, SCIM_KEY_semicolon },
2069 { SCIM_KEY_greater, SCIM_KEY_colon },
2070 { SCIM_KEY_question, SCIM_KEY_underscore },
2071 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2072 { SCIM_KEY_Y, SCIM_KEY_Z },
2073 { SCIM_KEY_Z, SCIM_KEY_Y },
2074 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2075 { SCIM_KEY_underscore, SCIM_KEY_question },
2076 { SCIM_KEY_braceleft, SCIM_KEY_egrave },
2077 { SCIM_KEY_bar, SCIM_KEY_sterling },
2078 { SCIM_KEY_braceright, SCIM_KEY_exclam },
2079 { SCIM_KEY_asciitilde, SCIM_KEY_degree },
2082 static __Uint16Pair __german_swiss_to_us_caps_shift [] = {
2083 { SCIM_KEY_exclam, SCIM_KEY_braceright },
2084 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2085 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2086 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2087 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2088 { SCIM_KEY_asterisk, SCIM_KEY_numbersign },
2089 { SCIM_KEY_plus, SCIM_KEY_exclam },
2090 { SCIM_KEY_slash, SCIM_KEY_ampersand },
2091 { SCIM_KEY_colon, SCIM_KEY_greater },
2092 { SCIM_KEY_semicolon, SCIM_KEY_less },
2093 { SCIM_KEY_equal, SCIM_KEY_parenright },
2094 { SCIM_KEY_question, SCIM_KEY_underscore },
2095 { SCIM_KEY_underscore, SCIM_KEY_question },
2096 { SCIM_KEY_y, SCIM_KEY_z },
2097 { SCIM_KEY_z, SCIM_KEY_y },
2098 { SCIM_KEY_sterling, SCIM_KEY_bar },
2099 { SCIM_KEY_degree, SCIM_KEY_asciitilde },
2100 { SCIM_KEY_Agrave, SCIM_KEY_quotedbl },
2101 { SCIM_KEY_Ccedilla, SCIM_KEY_dollar },
2102 { SCIM_KEY_Egrave, SCIM_KEY_braceleft },
2103 { SCIM_KEY_Eacute, SCIM_KEY_colon },
2104 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
2107 static __Uint16Pair __us_to_german_swiss_caps_shift [] = {
2108 { SCIM_KEY_exclam, SCIM_KEY_plus },
2109 { SCIM_KEY_quotedbl, SCIM_KEY_Agrave },
2110 { SCIM_KEY_numbersign, SCIM_KEY_asterisk },
2111 { SCIM_KEY_dollar, SCIM_KEY_Ccedilla },
2112 { SCIM_KEY_ampersand, SCIM_KEY_slash },
2113 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2114 { SCIM_KEY_parenright, SCIM_KEY_equal },
2115 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2116 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
2117 { SCIM_KEY_colon, SCIM_KEY_Eacute },
2118 { SCIM_KEY_less, SCIM_KEY_semicolon },
2119 { SCIM_KEY_greater, SCIM_KEY_colon },
2120 { SCIM_KEY_question, SCIM_KEY_underscore },
2121 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2122 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2123 { SCIM_KEY_underscore, SCIM_KEY_question },
2124 { SCIM_KEY_y, SCIM_KEY_z },
2125 { SCIM_KEY_z, SCIM_KEY_y },
2126 { SCIM_KEY_braceleft, SCIM_KEY_Egrave },
2127 { SCIM_KEY_bar, SCIM_KEY_sterling },
2128 { SCIM_KEY_braceright, SCIM_KEY_exclam },
2129 { SCIM_KEY_asciitilde, SCIM_KEY_degree },
2132 static __Uint16Pair __hungarian_to_us_normal [] = {
2133 { SCIM_KEY_minus, SCIM_KEY_slash },
2134 { SCIM_KEY_0, SCIM_KEY_grave },
2135 { SCIM_KEY_y, SCIM_KEY_z },
2136 { SCIM_KEY_z, SCIM_KEY_y },
2137 { SCIM_KEY_aacute, SCIM_KEY_apostrophe },
2138 { SCIM_KEY_eacute, SCIM_KEY_semicolon },
2139 { SCIM_KEY_oacute, SCIM_KEY_equal },
2140 { SCIM_KEY_odiaeresis, SCIM_KEY_0 },
2141 { SCIM_KEY_uacute, SCIM_KEY_bracketright },
2142 { SCIM_KEY_udiaeresis, SCIM_KEY_minus },
2143 { SCIM_KEY_odoubleacute, SCIM_KEY_bracketleft },
2144 { SCIM_KEY_udoubleacute, SCIM_KEY_backslash },
2147 static __Uint16Pair __us_to_hungarian_normal [] = {
2148 { SCIM_KEY_apostrophe, SCIM_KEY_aacute },
2149 { SCIM_KEY_minus, SCIM_KEY_udiaeresis },
2150 { SCIM_KEY_slash, SCIM_KEY_minus },
2151 { SCIM_KEY_0, SCIM_KEY_odiaeresis },
2152 { SCIM_KEY_semicolon, SCIM_KEY_eacute },
2153 { SCIM_KEY_equal, SCIM_KEY_oacute },
2154 { SCIM_KEY_bracketleft, SCIM_KEY_odoubleacute },
2155 { SCIM_KEY_backslash, SCIM_KEY_udoubleacute },
2156 { SCIM_KEY_bracketright, SCIM_KEY_uacute },
2157 { SCIM_KEY_grave, SCIM_KEY_0 },
2158 { SCIM_KEY_y, SCIM_KEY_z },
2159 { SCIM_KEY_z, SCIM_KEY_y },
2162 static __Uint16Pair __hungarian_to_us_caps [] = {
2163 { SCIM_KEY_minus, SCIM_KEY_slash },
2164 { SCIM_KEY_0, SCIM_KEY_grave },
2165 { SCIM_KEY_Y, SCIM_KEY_Z },
2166 { SCIM_KEY_Z, SCIM_KEY_Y },
2167 { SCIM_KEY_Aacute, SCIM_KEY_apostrophe },
2168 { SCIM_KEY_Eacute, SCIM_KEY_semicolon },
2169 { SCIM_KEY_Oacute, SCIM_KEY_equal },
2170 { SCIM_KEY_Odiaeresis, SCIM_KEY_0 },
2171 { SCIM_KEY_Uacute, SCIM_KEY_bracketright },
2172 { SCIM_KEY_Udiaeresis, SCIM_KEY_minus },
2173 { SCIM_KEY_Odoubleacute, SCIM_KEY_bracketleft },
2174 { SCIM_KEY_Udoubleacute, SCIM_KEY_backslash },
2177 static __Uint16Pair __us_to_hungarian_caps [] = {
2178 { SCIM_KEY_apostrophe, SCIM_KEY_Aacute },
2179 { SCIM_KEY_minus, SCIM_KEY_Udiaeresis },
2180 { SCIM_KEY_slash, SCIM_KEY_minus },
2181 { SCIM_KEY_0, SCIM_KEY_Odiaeresis },
2182 { SCIM_KEY_semicolon, SCIM_KEY_Eacute },
2183 { SCIM_KEY_equal, SCIM_KEY_Oacute },
2184 { SCIM_KEY_Y, SCIM_KEY_Z },
2185 { SCIM_KEY_Z, SCIM_KEY_Y },
2186 { SCIM_KEY_bracketleft, SCIM_KEY_Odoubleacute },
2187 { SCIM_KEY_backslash, SCIM_KEY_Udoubleacute },
2188 { SCIM_KEY_bracketright, SCIM_KEY_Uacute },
2189 { SCIM_KEY_grave, SCIM_KEY_0 },
2192 static __Uint16Pair __hungarian_to_us_shift [] = {
2193 { SCIM_KEY_exclam, SCIM_KEY_dollar },
2194 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2195 { SCIM_KEY_apostrophe, SCIM_KEY_exclam },
2196 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2197 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2198 { SCIM_KEY_plus, SCIM_KEY_numbersign },
2199 { SCIM_KEY_slash, SCIM_KEY_asciicircum },
2200 { SCIM_KEY_colon, SCIM_KEY_greater },
2201 { SCIM_KEY_equal, SCIM_KEY_ampersand },
2202 { SCIM_KEY_question, SCIM_KEY_less },
2203 { SCIM_KEY_Y, SCIM_KEY_Z },
2204 { SCIM_KEY_Z, SCIM_KEY_Y },
2205 { SCIM_KEY_underscore, SCIM_KEY_question },
2206 { SCIM_KEY_section, SCIM_KEY_asciitilde },
2207 { SCIM_KEY_Aacute, SCIM_KEY_quotedbl },
2208 { SCIM_KEY_Eacute, SCIM_KEY_colon },
2209 { SCIM_KEY_Oacute, SCIM_KEY_plus },
2210 { SCIM_KEY_Odiaeresis, SCIM_KEY_parenright },
2211 { SCIM_KEY_Uacute, SCIM_KEY_braceright },
2212 { SCIM_KEY_Udiaeresis, SCIM_KEY_underscore },
2213 { SCIM_KEY_Odoubleacute, SCIM_KEY_braceleft },
2214 { SCIM_KEY_Udoubleacute, SCIM_KEY_bar },
2217 static __Uint16Pair __us_to_hungarian_shift [] = {
2218 { SCIM_KEY_exclam, SCIM_KEY_apostrophe },
2219 { SCIM_KEY_quotedbl, SCIM_KEY_Aacute },
2220 { SCIM_KEY_numbersign, SCIM_KEY_plus },
2221 { SCIM_KEY_dollar, SCIM_KEY_exclam },
2222 { SCIM_KEY_ampersand, SCIM_KEY_equal },
2223 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2224 { SCIM_KEY_parenright, SCIM_KEY_Odiaeresis },
2225 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2226 { SCIM_KEY_plus, SCIM_KEY_Oacute },
2227 { SCIM_KEY_colon, SCIM_KEY_Eacute },
2228 { SCIM_KEY_less, SCIM_KEY_question },
2229 { SCIM_KEY_greater, SCIM_KEY_colon },
2230 { SCIM_KEY_question, SCIM_KEY_underscore },
2231 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2232 { SCIM_KEY_Y, SCIM_KEY_Z },
2233 { SCIM_KEY_Z, SCIM_KEY_Y },
2234 { SCIM_KEY_asciicircum, SCIM_KEY_slash },
2235 { SCIM_KEY_underscore, SCIM_KEY_Udiaeresis },
2236 { SCIM_KEY_braceleft, SCIM_KEY_Odoubleacute },
2237 { SCIM_KEY_bar, SCIM_KEY_Udoubleacute },
2238 { SCIM_KEY_braceright, SCIM_KEY_Uacute },
2239 { SCIM_KEY_asciitilde, SCIM_KEY_section },
2242 static __Uint16Pair __hungarian_to_us_caps_shift [] = {
2243 { SCIM_KEY_exclam, SCIM_KEY_dollar },
2244 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2245 { SCIM_KEY_apostrophe, SCIM_KEY_exclam },
2246 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2247 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2248 { SCIM_KEY_plus, SCIM_KEY_numbersign },
2249 { SCIM_KEY_slash, SCIM_KEY_asciicircum },
2250 { SCIM_KEY_colon, SCIM_KEY_greater },
2251 { SCIM_KEY_equal, SCIM_KEY_ampersand },
2252 { SCIM_KEY_question, SCIM_KEY_less },
2253 { SCIM_KEY_underscore, SCIM_KEY_question },
2254 { SCIM_KEY_y, SCIM_KEY_z },
2255 { SCIM_KEY_z, SCIM_KEY_y },
2256 { SCIM_KEY_section, SCIM_KEY_asciitilde },
2257 { SCIM_KEY_aacute, SCIM_KEY_quotedbl },
2258 { SCIM_KEY_eacute, SCIM_KEY_colon },
2259 { SCIM_KEY_oacute, SCIM_KEY_plus },
2260 { SCIM_KEY_odiaeresis, SCIM_KEY_parenright },
2261 { SCIM_KEY_uacute, SCIM_KEY_braceright },
2262 { SCIM_KEY_udiaeresis, SCIM_KEY_underscore },
2263 { SCIM_KEY_odoubleacute, SCIM_KEY_braceleft },
2264 { SCIM_KEY_udoubleacute, SCIM_KEY_bar },
2267 static __Uint16Pair __us_to_hungarian_caps_shift [] = {
2268 { SCIM_KEY_exclam, SCIM_KEY_apostrophe },
2269 { SCIM_KEY_quotedbl, SCIM_KEY_aacute },
2270 { SCIM_KEY_numbersign, SCIM_KEY_plus },
2271 { SCIM_KEY_dollar, SCIM_KEY_exclam },
2272 { SCIM_KEY_ampersand, SCIM_KEY_equal },
2273 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2274 { SCIM_KEY_parenright, SCIM_KEY_odiaeresis },
2275 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2276 { SCIM_KEY_plus, SCIM_KEY_oacute },
2277 { SCIM_KEY_colon, SCIM_KEY_eacute },
2278 { SCIM_KEY_less, SCIM_KEY_question },
2279 { SCIM_KEY_greater, SCIM_KEY_colon },
2280 { SCIM_KEY_question, SCIM_KEY_underscore },
2281 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2282 { SCIM_KEY_asciicircum, SCIM_KEY_slash },
2283 { SCIM_KEY_underscore, SCIM_KEY_udiaeresis },
2284 { SCIM_KEY_y, SCIM_KEY_z },
2285 { SCIM_KEY_z, SCIM_KEY_y },
2286 { SCIM_KEY_braceleft, SCIM_KEY_odoubleacute },
2287 { SCIM_KEY_bar, SCIM_KEY_udoubleacute },
2288 { SCIM_KEY_braceright, SCIM_KEY_uacute },
2289 { SCIM_KEY_asciitilde, SCIM_KEY_section },
2292 static __Uint16Pair __italian_to_us_normal [] = {
2293 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
2294 { SCIM_KEY_plus, SCIM_KEY_bracketright },
2295 { SCIM_KEY_minus, SCIM_KEY_slash },
2296 { SCIM_KEY_backslash, SCIM_KEY_grave },
2297 { SCIM_KEY_agrave, SCIM_KEY_apostrophe },
2298 { SCIM_KEY_egrave, SCIM_KEY_bracketleft },
2299 { SCIM_KEY_igrave, SCIM_KEY_equal },
2300 { SCIM_KEY_ograve, SCIM_KEY_semicolon },
2301 { SCIM_KEY_ugrave, SCIM_KEY_backslash },
2304 static __Uint16Pair __us_to_italian_normal [] = {
2305 { SCIM_KEY_apostrophe, SCIM_KEY_agrave },
2306 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
2307 { SCIM_KEY_slash, SCIM_KEY_minus },
2308 { SCIM_KEY_semicolon, SCIM_KEY_ograve },
2309 { SCIM_KEY_equal, SCIM_KEY_igrave },
2310 { SCIM_KEY_bracketleft, SCIM_KEY_egrave },
2311 { SCIM_KEY_backslash, SCIM_KEY_ugrave },
2312 { SCIM_KEY_bracketright, SCIM_KEY_plus },
2313 { SCIM_KEY_grave, SCIM_KEY_backslash },
2316 static __Uint16Pair __italian_to_us_caps [] = {
2317 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
2318 { SCIM_KEY_plus, SCIM_KEY_bracketright },
2319 { SCIM_KEY_minus, SCIM_KEY_slash },
2320 { SCIM_KEY_backslash, SCIM_KEY_grave },
2321 { SCIM_KEY_Agrave, SCIM_KEY_apostrophe },
2322 { SCIM_KEY_Egrave, SCIM_KEY_bracketleft },
2323 { SCIM_KEY_Igrave, SCIM_KEY_equal },
2324 { SCIM_KEY_Ograve, SCIM_KEY_semicolon },
2325 { SCIM_KEY_Ugrave, SCIM_KEY_backslash },
2328 static __Uint16Pair __us_to_italian_caps [] = {
2329 { SCIM_KEY_apostrophe, SCIM_KEY_Agrave },
2330 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
2331 { SCIM_KEY_slash, SCIM_KEY_minus },
2332 { SCIM_KEY_semicolon, SCIM_KEY_Ograve },
2333 { SCIM_KEY_equal, SCIM_KEY_Igrave },
2334 { SCIM_KEY_bracketleft, SCIM_KEY_Egrave },
2335 { SCIM_KEY_backslash, SCIM_KEY_Ugrave },
2336 { SCIM_KEY_bracketright, SCIM_KEY_plus },
2337 { SCIM_KEY_grave, SCIM_KEY_backslash },
2340 static __Uint16Pair __italian_to_us_shift [] = {
2341 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2342 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2343 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2344 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2345 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
2346 { SCIM_KEY_slash, SCIM_KEY_ampersand },
2347 { SCIM_KEY_colon, SCIM_KEY_greater },
2348 { SCIM_KEY_semicolon, SCIM_KEY_less },
2349 { SCIM_KEY_equal, SCIM_KEY_parenright },
2350 { SCIM_KEY_question, SCIM_KEY_underscore },
2351 { SCIM_KEY_asciicircum, SCIM_KEY_plus },
2352 { SCIM_KEY_underscore, SCIM_KEY_question },
2353 { SCIM_KEY_bar, SCIM_KEY_asciitilde },
2354 { SCIM_KEY_sterling, SCIM_KEY_numbersign },
2355 { SCIM_KEY_section, SCIM_KEY_bar },
2356 { SCIM_KEY_degree, SCIM_KEY_quotedbl },
2357 { SCIM_KEY_ccedilla, SCIM_KEY_colon },
2358 { SCIM_KEY_eacute, SCIM_KEY_braceleft },
2361 static __Uint16Pair __us_to_italian_shift [] = {
2362 { SCIM_KEY_quotedbl, SCIM_KEY_degree },
2363 { SCIM_KEY_numbersign, SCIM_KEY_sterling },
2364 { SCIM_KEY_ampersand, SCIM_KEY_slash },
2365 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2366 { SCIM_KEY_parenright, SCIM_KEY_equal },
2367 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2368 { SCIM_KEY_plus, SCIM_KEY_asciicircum },
2369 { SCIM_KEY_colon, SCIM_KEY_ccedilla },
2370 { SCIM_KEY_less, SCIM_KEY_semicolon },
2371 { SCIM_KEY_greater, SCIM_KEY_colon },
2372 { SCIM_KEY_question, SCIM_KEY_underscore },
2373 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2374 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2375 { SCIM_KEY_underscore, SCIM_KEY_question },
2376 { SCIM_KEY_braceleft, SCIM_KEY_eacute },
2377 { SCIM_KEY_bar, SCIM_KEY_section },
2378 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
2379 { SCIM_KEY_asciitilde, SCIM_KEY_bar },
2382 static __Uint16Pair __italian_to_us_caps_shift [] = {
2383 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2384 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2385 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2386 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2387 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
2388 { SCIM_KEY_slash, SCIM_KEY_ampersand },
2389 { SCIM_KEY_colon, SCIM_KEY_greater },
2390 { SCIM_KEY_semicolon, SCIM_KEY_less },
2391 { SCIM_KEY_equal, SCIM_KEY_parenright },
2392 { SCIM_KEY_question, SCIM_KEY_underscore },
2393 { SCIM_KEY_asciicircum, SCIM_KEY_plus },
2394 { SCIM_KEY_underscore, SCIM_KEY_question },
2395 { SCIM_KEY_bar, SCIM_KEY_asciitilde },
2396 { SCIM_KEY_sterling, SCIM_KEY_numbersign },
2397 { SCIM_KEY_section, SCIM_KEY_bar },
2398 { SCIM_KEY_degree, SCIM_KEY_quotedbl },
2399 { SCIM_KEY_Ccedilla, SCIM_KEY_colon },
2400 { SCIM_KEY_Eacute, SCIM_KEY_braceleft },
2403 static __Uint16Pair __us_to_italian_caps_shift [] = {
2404 { SCIM_KEY_quotedbl, SCIM_KEY_degree },
2405 { SCIM_KEY_numbersign, SCIM_KEY_sterling },
2406 { SCIM_KEY_ampersand, SCIM_KEY_slash },
2407 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2408 { SCIM_KEY_parenright, SCIM_KEY_equal },
2409 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2410 { SCIM_KEY_plus, SCIM_KEY_asciicircum },
2411 { SCIM_KEY_colon, SCIM_KEY_Ccedilla },
2412 { SCIM_KEY_less, SCIM_KEY_semicolon },
2413 { SCIM_KEY_greater, SCIM_KEY_colon },
2414 { SCIM_KEY_question, SCIM_KEY_underscore },
2415 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2416 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2417 { SCIM_KEY_underscore, SCIM_KEY_question },
2418 { SCIM_KEY_braceleft, SCIM_KEY_Eacute },
2419 { SCIM_KEY_bar, SCIM_KEY_section },
2420 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
2421 { SCIM_KEY_asciitilde, SCIM_KEY_bar },
2424 static __Uint16Pair __japanese_to_us_normal [] = {
2425 { SCIM_KEY_colon, SCIM_KEY_apostrophe },
2426 { SCIM_KEY_at, SCIM_KEY_bracketleft },
2427 { SCIM_KEY_bracketleft, SCIM_KEY_bracketright },
2428 { SCIM_KEY_bracketright, SCIM_KEY_backslash },
2429 { SCIM_KEY_asciicircum, SCIM_KEY_equal },
2430 { SCIM_KEY_Zenkaku_Hankaku, SCIM_KEY_grave },
2433 static __Uint16Pair __us_to_japanese_normal [] = {
2434 { SCIM_KEY_apostrophe, SCIM_KEY_colon },
2435 { SCIM_KEY_equal, SCIM_KEY_asciicircum },
2436 { SCIM_KEY_bracketleft, SCIM_KEY_at },
2437 { SCIM_KEY_backslash, SCIM_KEY_bracketright },
2438 { SCIM_KEY_bracketright, SCIM_KEY_bracketleft },
2439 { SCIM_KEY_grave, SCIM_KEY_Zenkaku_Hankaku },
2442 static __Uint16Pair __japanese_to_us_caps [] = {
2443 { SCIM_KEY_colon, SCIM_KEY_apostrophe },
2444 { SCIM_KEY_at, SCIM_KEY_bracketleft },
2445 { SCIM_KEY_bracketleft, SCIM_KEY_bracketright },
2446 { SCIM_KEY_bracketright, SCIM_KEY_backslash },
2447 { SCIM_KEY_asciicircum, SCIM_KEY_equal },
2448 { SCIM_KEY_Zenkaku_Hankaku, SCIM_KEY_grave },
2451 static __Uint16Pair __us_to_japanese_caps [] = {
2452 { SCIM_KEY_apostrophe, SCIM_KEY_colon },
2453 { SCIM_KEY_equal, SCIM_KEY_asciicircum },
2454 { SCIM_KEY_bracketleft, SCIM_KEY_at },
2455 { SCIM_KEY_backslash, SCIM_KEY_bracketright },
2456 { SCIM_KEY_bracketright, SCIM_KEY_bracketleft },
2457 { SCIM_KEY_grave, SCIM_KEY_Zenkaku_Hankaku },
2460 static __Uint16Pair __japanese_to_us_shift [] = {
2461 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2462 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2463 { SCIM_KEY_apostrophe, SCIM_KEY_ampersand },
2464 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2465 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2466 { SCIM_KEY_asterisk, SCIM_KEY_quotedbl },
2467 { SCIM_KEY_plus, SCIM_KEY_colon },
2468 { SCIM_KEY_equal, SCIM_KEY_underscore },
2469 { SCIM_KEY_grave, SCIM_KEY_braceleft },
2470 { SCIM_KEY_braceleft, SCIM_KEY_braceright },
2471 { SCIM_KEY_braceright, SCIM_KEY_bar },
2472 { SCIM_KEY_asciitilde, SCIM_KEY_parenright },
2473 { SCIM_KEY_asciitilde, SCIM_KEY_plus },
2474 { SCIM_KEY_Zenkaku_Hankaku, SCIM_KEY_asciitilde },
2477 static __Uint16Pair __us_to_japanese_shift [] = {
2478 { SCIM_KEY_quotedbl, SCIM_KEY_asterisk },
2479 { SCIM_KEY_ampersand, SCIM_KEY_apostrophe },
2480 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2481 { SCIM_KEY_parenright, SCIM_KEY_asciitilde },
2482 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2483 { SCIM_KEY_plus, SCIM_KEY_asciitilde },
2484 { SCIM_KEY_colon, SCIM_KEY_plus },
2485 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2486 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2487 { SCIM_KEY_underscore, SCIM_KEY_equal },
2488 { SCIM_KEY_braceleft, SCIM_KEY_grave },
2489 { SCIM_KEY_bar, SCIM_KEY_braceright },
2490 { SCIM_KEY_braceright, SCIM_KEY_braceleft },
2491 { SCIM_KEY_asciitilde, SCIM_KEY_Zenkaku_Hankaku },
2494 static __Uint16Pair __japanese_to_us_caps_shift [] = {
2495 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2496 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2497 { SCIM_KEY_apostrophe, SCIM_KEY_ampersand },
2498 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2499 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2500 { SCIM_KEY_asterisk, SCIM_KEY_quotedbl },
2501 { SCIM_KEY_plus, SCIM_KEY_colon },
2502 { SCIM_KEY_equal, SCIM_KEY_underscore },
2503 { SCIM_KEY_grave, SCIM_KEY_braceleft },
2504 { SCIM_KEY_braceleft, SCIM_KEY_braceright },
2505 { SCIM_KEY_braceright, SCIM_KEY_bar },
2506 { SCIM_KEY_asciitilde, SCIM_KEY_parenright },
2507 { SCIM_KEY_asciitilde, SCIM_KEY_plus },
2508 { SCIM_KEY_Zenkaku_Hankaku, SCIM_KEY_asciitilde },
2511 static __Uint16Pair __us_to_japanese_caps_shift [] = {
2512 { SCIM_KEY_quotedbl, SCIM_KEY_asterisk },
2513 { SCIM_KEY_ampersand, SCIM_KEY_apostrophe },
2514 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2515 { SCIM_KEY_parenright, SCIM_KEY_asciitilde },
2516 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2517 { SCIM_KEY_plus, SCIM_KEY_asciitilde },
2518 { SCIM_KEY_colon, SCIM_KEY_plus },
2519 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2520 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2521 { SCIM_KEY_underscore, SCIM_KEY_equal },
2522 { SCIM_KEY_braceleft, SCIM_KEY_grave },
2523 { SCIM_KEY_bar, SCIM_KEY_braceright },
2524 { SCIM_KEY_braceright, SCIM_KEY_braceleft },
2525 { SCIM_KEY_asciitilde, SCIM_KEY_Zenkaku_Hankaku },
2528 static __Uint16Pair __norwegian_to_us_normal [] = {
2529 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
2530 { SCIM_KEY_plus, SCIM_KEY_minus },
2531 { SCIM_KEY_minus, SCIM_KEY_slash },
2532 { SCIM_KEY_backslash, SCIM_KEY_equal },
2533 { SCIM_KEY_bar, SCIM_KEY_grave },
2534 { SCIM_KEY_aring, SCIM_KEY_bracketleft },
2535 { SCIM_KEY_ae, SCIM_KEY_apostrophe },
2536 { SCIM_KEY_oslash, SCIM_KEY_semicolon },
2537 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
2540 static __Uint16Pair __us_to_norwegian_normal [] = {
2541 { SCIM_KEY_apostrophe, SCIM_KEY_ae },
2542 { SCIM_KEY_minus, SCIM_KEY_plus },
2543 { SCIM_KEY_slash, SCIM_KEY_minus },
2544 { SCIM_KEY_semicolon, SCIM_KEY_oslash },
2545 { SCIM_KEY_equal, SCIM_KEY_backslash },
2546 { SCIM_KEY_bracketleft, SCIM_KEY_aring },
2547 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
2548 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
2549 { SCIM_KEY_grave, SCIM_KEY_bar },
2552 static __Uint16Pair __norwegian_to_us_caps [] = {
2553 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
2554 { SCIM_KEY_plus, SCIM_KEY_minus },
2555 { SCIM_KEY_minus, SCIM_KEY_slash },
2556 { SCIM_KEY_backslash, SCIM_KEY_equal },
2557 { SCIM_KEY_bar, SCIM_KEY_grave },
2558 { SCIM_KEY_Aring, SCIM_KEY_bracketleft },
2559 { SCIM_KEY_AE, SCIM_KEY_apostrophe },
2560 { SCIM_KEY_Ooblique, SCIM_KEY_semicolon },
2561 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
2564 static __Uint16Pair __us_to_norwegian_caps [] = {
2565 { SCIM_KEY_apostrophe, SCIM_KEY_AE },
2566 { SCIM_KEY_minus, SCIM_KEY_plus },
2567 { SCIM_KEY_slash, SCIM_KEY_minus },
2568 { SCIM_KEY_semicolon, SCIM_KEY_Ooblique },
2569 { SCIM_KEY_equal, SCIM_KEY_backslash },
2570 { SCIM_KEY_bracketleft, SCIM_KEY_Aring },
2571 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
2572 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
2573 { SCIM_KEY_grave, SCIM_KEY_bar },
2576 static __Uint16Pair __norwegian_to_us_shift [] = {
2577 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2578 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2579 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2580 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2581 { SCIM_KEY_asterisk, SCIM_KEY_bar },
2582 { SCIM_KEY_slash, SCIM_KEY_ampersand },
2583 { SCIM_KEY_colon, SCIM_KEY_greater },
2584 { SCIM_KEY_semicolon, SCIM_KEY_less },
2585 { SCIM_KEY_equal, SCIM_KEY_parenright },
2586 { SCIM_KEY_question, SCIM_KEY_underscore },
2587 { SCIM_KEY_underscore, SCIM_KEY_question },
2588 { SCIM_KEY_currency, SCIM_KEY_dollar },
2589 { SCIM_KEY_section, SCIM_KEY_asciitilde },
2590 { SCIM_KEY_Aring, SCIM_KEY_braceleft },
2591 { SCIM_KEY_AE, SCIM_KEY_quotedbl },
2592 { SCIM_KEY_Ooblique, SCIM_KEY_colon },
2593 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
2594 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceright },
2597 static __Uint16Pair __us_to_norwegian_shift [] = {
2598 { SCIM_KEY_quotedbl, SCIM_KEY_AE },
2599 { SCIM_KEY_dollar, SCIM_KEY_currency },
2600 { SCIM_KEY_ampersand, SCIM_KEY_slash },
2601 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2602 { SCIM_KEY_parenright, SCIM_KEY_equal },
2603 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2604 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
2605 { SCIM_KEY_colon, SCIM_KEY_Ooblique },
2606 { SCIM_KEY_less, SCIM_KEY_semicolon },
2607 { SCIM_KEY_greater, SCIM_KEY_colon },
2608 { SCIM_KEY_question, SCIM_KEY_underscore },
2609 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2610 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2611 { SCIM_KEY_underscore, SCIM_KEY_question },
2612 { SCIM_KEY_braceleft, SCIM_KEY_Aring },
2613 { SCIM_KEY_bar, SCIM_KEY_asterisk },
2614 { SCIM_KEY_braceright, SCIM_KEY_dead_circumflex },
2615 { SCIM_KEY_asciitilde, SCIM_KEY_section },
2618 static __Uint16Pair __norwegian_to_us_caps_shift [] = {
2619 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2620 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2621 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2622 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2623 { SCIM_KEY_asterisk, SCIM_KEY_bar },
2624 { SCIM_KEY_slash, SCIM_KEY_ampersand },
2625 { SCIM_KEY_colon, SCIM_KEY_greater },
2626 { SCIM_KEY_semicolon, SCIM_KEY_less },
2627 { SCIM_KEY_equal, SCIM_KEY_parenright },
2628 { SCIM_KEY_question, SCIM_KEY_underscore },
2629 { SCIM_KEY_underscore, SCIM_KEY_question },
2630 { SCIM_KEY_currency, SCIM_KEY_dollar },
2631 { SCIM_KEY_section, SCIM_KEY_asciitilde },
2632 { SCIM_KEY_aring, SCIM_KEY_braceleft },
2633 { SCIM_KEY_ae, SCIM_KEY_quotedbl },
2634 { SCIM_KEY_oslash, SCIM_KEY_colon },
2635 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
2636 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceright },
2639 static __Uint16Pair __us_to_norwegian_caps_shift [] = {
2640 { SCIM_KEY_quotedbl, SCIM_KEY_ae },
2641 { SCIM_KEY_dollar, SCIM_KEY_currency },
2642 { SCIM_KEY_ampersand, SCIM_KEY_slash },
2643 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2644 { SCIM_KEY_parenright, SCIM_KEY_equal },
2645 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2646 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
2647 { SCIM_KEY_colon, SCIM_KEY_oslash },
2648 { SCIM_KEY_less, SCIM_KEY_semicolon },
2649 { SCIM_KEY_greater, SCIM_KEY_colon },
2650 { SCIM_KEY_question, SCIM_KEY_underscore },
2651 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2652 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2653 { SCIM_KEY_underscore, SCIM_KEY_question },
2654 { SCIM_KEY_braceleft, SCIM_KEY_aring },
2655 { SCIM_KEY_bar, SCIM_KEY_asterisk },
2656 { SCIM_KEY_braceright, SCIM_KEY_dead_circumflex },
2657 { SCIM_KEY_asciitilde, SCIM_KEY_section },
2660 static __Uint16Pair __portuguese_brazil_to_us_normal [] = {
2661 { SCIM_KEY_apostrophe, SCIM_KEY_grave },
2662 { SCIM_KEY_semicolon, SCIM_KEY_slash },
2663 { SCIM_KEY_bracketleft, SCIM_KEY_bracketright },
2664 { SCIM_KEY_bracketright, SCIM_KEY_backslash },
2665 { SCIM_KEY_ccedilla, SCIM_KEY_semicolon },
2666 { SCIM_KEY_dead_acute, SCIM_KEY_bracketleft },
2667 { SCIM_KEY_dead_tilde, SCIM_KEY_apostrophe },
2670 static __Uint16Pair __us_to_portuguese_brazil_normal [] = {
2671 { SCIM_KEY_apostrophe, SCIM_KEY_dead_tilde },
2672 { SCIM_KEY_slash, SCIM_KEY_semicolon },
2673 { SCIM_KEY_semicolon, SCIM_KEY_ccedilla },
2674 { SCIM_KEY_bracketleft, SCIM_KEY_dead_acute },
2675 { SCIM_KEY_backslash, SCIM_KEY_bracketright },
2676 { SCIM_KEY_bracketright, SCIM_KEY_bracketleft },
2677 { SCIM_KEY_grave, SCIM_KEY_apostrophe },
2680 static __Uint16Pair __portuguese_brazil_to_us_caps [] = {
2681 { SCIM_KEY_apostrophe, SCIM_KEY_grave },
2682 { SCIM_KEY_semicolon, SCIM_KEY_slash },
2683 { SCIM_KEY_bracketleft, SCIM_KEY_bracketright },
2684 { SCIM_KEY_bracketright, SCIM_KEY_backslash },
2685 { SCIM_KEY_Ccedilla, SCIM_KEY_semicolon },
2686 { SCIM_KEY_dead_acute, SCIM_KEY_bracketleft },
2687 { SCIM_KEY_dead_tilde, SCIM_KEY_apostrophe },
2690 static __Uint16Pair __us_to_portuguese_brazil_caps [] = {
2691 { SCIM_KEY_apostrophe, SCIM_KEY_dead_tilde },
2692 { SCIM_KEY_slash, SCIM_KEY_semicolon },
2693 { SCIM_KEY_semicolon, SCIM_KEY_Ccedilla },
2694 { SCIM_KEY_bracketleft, SCIM_KEY_dead_acute },
2695 { SCIM_KEY_backslash, SCIM_KEY_bracketright },
2696 { SCIM_KEY_bracketright, SCIM_KEY_bracketleft },
2697 { SCIM_KEY_grave, SCIM_KEY_apostrophe },
2700 static __Uint16Pair __portuguese_brazil_to_us_shift [] = {
2701 { SCIM_KEY_quotedbl, SCIM_KEY_asciitilde },
2702 { SCIM_KEY_colon, SCIM_KEY_question },
2703 { SCIM_KEY_braceleft, SCIM_KEY_braceright },
2704 { SCIM_KEY_braceright, SCIM_KEY_bar },
2705 { SCIM_KEY_Ccedilla, SCIM_KEY_colon },
2706 { SCIM_KEY_dead_grave, SCIM_KEY_braceleft },
2707 { SCIM_KEY_dead_circumflex, SCIM_KEY_quotedbl },
2708 { SCIM_KEY_dead_diaeresis, SCIM_KEY_asciicircum },
2711 static __Uint16Pair __us_to_portuguese_brazil_shift [] = {
2712 { SCIM_KEY_quotedbl, SCIM_KEY_dead_circumflex },
2713 { SCIM_KEY_colon, SCIM_KEY_Ccedilla },
2714 { SCIM_KEY_question, SCIM_KEY_colon },
2715 { SCIM_KEY_asciicircum, SCIM_KEY_dead_diaeresis },
2716 { SCIM_KEY_braceleft, SCIM_KEY_dead_grave },
2717 { SCIM_KEY_bar, SCIM_KEY_braceright },
2718 { SCIM_KEY_braceright, SCIM_KEY_braceleft },
2719 { SCIM_KEY_asciitilde, SCIM_KEY_quotedbl },
2722 static __Uint16Pair __portuguese_brazil_to_us_caps_shift [] = {
2723 { SCIM_KEY_quotedbl, SCIM_KEY_asciitilde },
2724 { SCIM_KEY_colon, SCIM_KEY_question },
2725 { SCIM_KEY_braceleft, SCIM_KEY_braceright },
2726 { SCIM_KEY_braceright, SCIM_KEY_bar },
2727 { SCIM_KEY_ccedilla, SCIM_KEY_colon },
2728 { SCIM_KEY_dead_grave, SCIM_KEY_braceleft },
2729 { SCIM_KEY_dead_circumflex, SCIM_KEY_quotedbl },
2730 { SCIM_KEY_dead_diaeresis, SCIM_KEY_asciicircum },
2733 static __Uint16Pair __us_to_portuguese_brazil_caps_shift [] = {
2734 { SCIM_KEY_quotedbl, SCIM_KEY_dead_circumflex },
2735 { SCIM_KEY_colon, SCIM_KEY_ccedilla },
2736 { SCIM_KEY_question, SCIM_KEY_colon },
2737 { SCIM_KEY_asciicircum, SCIM_KEY_dead_diaeresis },
2738 { SCIM_KEY_braceleft, SCIM_KEY_dead_grave },
2739 { SCIM_KEY_bar, SCIM_KEY_braceright },
2740 { SCIM_KEY_braceright, SCIM_KEY_braceleft },
2741 { SCIM_KEY_asciitilde, SCIM_KEY_quotedbl },
2744 static __Uint16Pair __portuguese_brazil_us_accents_to_us_normal [] = {
2745 { SCIM_KEY_dead_grave, SCIM_KEY_grave },
2746 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
2749 static __Uint16Pair __us_to_portuguese_brazil_us_accents_normal [] = {
2750 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
2751 { SCIM_KEY_grave, SCIM_KEY_dead_grave },
2754 static __Uint16Pair __portuguese_brazil_us_accents_to_us_caps [] = {
2755 { SCIM_KEY_dead_grave, SCIM_KEY_grave },
2756 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
2759 static __Uint16Pair __us_to_portuguese_brazil_us_accents_caps [] = {
2760 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
2761 { SCIM_KEY_grave, SCIM_KEY_dead_grave },
2764 static __Uint16Pair __portuguese_brazil_us_accents_to_us_shift [] = {
2765 { SCIM_KEY_dead_circumflex, SCIM_KEY_asciicircum },
2766 { SCIM_KEY_dead_tilde, SCIM_KEY_asciitilde },
2767 { SCIM_KEY_dead_diaeresis, SCIM_KEY_quotedbl },
2770 static __Uint16Pair __us_to_portuguese_brazil_us_accents_shift [] = {
2771 { SCIM_KEY_quotedbl, SCIM_KEY_dead_diaeresis },
2772 { SCIM_KEY_asciicircum, SCIM_KEY_dead_circumflex },
2773 { SCIM_KEY_asciitilde, SCIM_KEY_dead_tilde },
2776 static __Uint16Pair __portuguese_brazil_us_accents_to_us_caps_shift [] = {
2777 { SCIM_KEY_dead_circumflex, SCIM_KEY_asciicircum },
2778 { SCIM_KEY_dead_tilde, SCIM_KEY_asciitilde },
2779 { SCIM_KEY_dead_diaeresis, SCIM_KEY_quotedbl },
2782 static __Uint16Pair __us_to_portuguese_brazil_us_accents_caps_shift [] = {
2783 { SCIM_KEY_quotedbl, SCIM_KEY_dead_diaeresis },
2784 { SCIM_KEY_asciicircum, SCIM_KEY_dead_circumflex },
2785 { SCIM_KEY_asciitilde, SCIM_KEY_dead_tilde },
2788 static __Uint16Pair __portuguese_to_us_normal [] = {
2789 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
2790 { SCIM_KEY_plus, SCIM_KEY_bracketleft },
2791 { SCIM_KEY_minus, SCIM_KEY_slash },
2792 { SCIM_KEY_backslash, SCIM_KEY_grave },
2793 { SCIM_KEY_asciitilde, SCIM_KEY_backslash },
2794 { SCIM_KEY_guillemotleft, SCIM_KEY_equal },
2795 { SCIM_KEY_acute, SCIM_KEY_bracketright },
2796 { SCIM_KEY_masculine, SCIM_KEY_apostrophe },
2797 { SCIM_KEY_ccedilla, SCIM_KEY_semicolon },
2800 static __Uint16Pair __us_to_portuguese_normal [] = {
2801 { SCIM_KEY_apostrophe, SCIM_KEY_masculine },
2802 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
2803 { SCIM_KEY_slash, SCIM_KEY_minus },
2804 { SCIM_KEY_semicolon, SCIM_KEY_ccedilla },
2805 { SCIM_KEY_equal, SCIM_KEY_guillemotleft },
2806 { SCIM_KEY_bracketleft, SCIM_KEY_plus },
2807 { SCIM_KEY_backslash, SCIM_KEY_asciitilde },
2808 { SCIM_KEY_bracketright, SCIM_KEY_acute },
2809 { SCIM_KEY_grave, SCIM_KEY_backslash },
2812 static __Uint16Pair __portuguese_to_us_caps [] = {
2813 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
2814 { SCIM_KEY_plus, SCIM_KEY_bracketleft },
2815 { SCIM_KEY_minus, SCIM_KEY_slash },
2816 { SCIM_KEY_backslash, SCIM_KEY_grave },
2817 { SCIM_KEY_asciitilde, SCIM_KEY_backslash },
2818 { SCIM_KEY_guillemotleft, SCIM_KEY_equal },
2819 { SCIM_KEY_acute, SCIM_KEY_bracketright },
2820 { SCIM_KEY_masculine, SCIM_KEY_apostrophe },
2821 { SCIM_KEY_Ccedilla, SCIM_KEY_semicolon },
2824 static __Uint16Pair __us_to_portuguese_caps [] = {
2825 { SCIM_KEY_apostrophe, SCIM_KEY_masculine },
2826 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
2827 { SCIM_KEY_slash, SCIM_KEY_minus },
2828 { SCIM_KEY_semicolon, SCIM_KEY_Ccedilla },
2829 { SCIM_KEY_equal, SCIM_KEY_guillemotleft },
2830 { SCIM_KEY_bracketleft, SCIM_KEY_plus },
2831 { SCIM_KEY_backslash, SCIM_KEY_asciitilde },
2832 { SCIM_KEY_bracketright, SCIM_KEY_acute },
2833 { SCIM_KEY_grave, SCIM_KEY_backslash },
2836 static __Uint16Pair __portuguese_to_us_shift [] = {
2837 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2838 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2839 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2840 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2841 { SCIM_KEY_asterisk, SCIM_KEY_braceleft },
2842 { SCIM_KEY_slash, SCIM_KEY_ampersand },
2843 { SCIM_KEY_colon, SCIM_KEY_greater },
2844 { SCIM_KEY_semicolon, SCIM_KEY_less },
2845 { SCIM_KEY_equal, SCIM_KEY_parenright },
2846 { SCIM_KEY_question, SCIM_KEY_underscore },
2847 { SCIM_KEY_asciicircum, SCIM_KEY_bar },
2848 { SCIM_KEY_underscore, SCIM_KEY_question },
2849 { SCIM_KEY_grave, SCIM_KEY_braceright },
2850 { SCIM_KEY_bar, SCIM_KEY_asciitilde },
2851 { SCIM_KEY_ordfeminine, SCIM_KEY_quotedbl },
2852 { SCIM_KEY_guillemotright, SCIM_KEY_plus },
2853 { SCIM_KEY_Ccedilla, SCIM_KEY_colon },
2856 static __Uint16Pair __us_to_portuguese_shift [] = {
2857 { SCIM_KEY_quotedbl, SCIM_KEY_ordfeminine },
2858 { SCIM_KEY_ampersand, SCIM_KEY_slash },
2859 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2860 { SCIM_KEY_parenright, SCIM_KEY_equal },
2861 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2862 { SCIM_KEY_plus, SCIM_KEY_guillemotright },
2863 { SCIM_KEY_colon, SCIM_KEY_Ccedilla },
2864 { SCIM_KEY_less, SCIM_KEY_semicolon },
2865 { SCIM_KEY_greater, SCIM_KEY_colon },
2866 { SCIM_KEY_question, SCIM_KEY_underscore },
2867 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2868 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2869 { SCIM_KEY_underscore, SCIM_KEY_question },
2870 { SCIM_KEY_braceleft, SCIM_KEY_asterisk },
2871 { SCIM_KEY_bar, SCIM_KEY_asciicircum },
2872 { SCIM_KEY_braceright, SCIM_KEY_grave },
2873 { SCIM_KEY_asciitilde, SCIM_KEY_bar },
2876 static __Uint16Pair __portuguese_to_us_caps_shift [] = {
2877 { SCIM_KEY_quotedbl, SCIM_KEY_at },
2878 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
2879 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
2880 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
2881 { SCIM_KEY_asterisk, SCIM_KEY_braceleft },
2882 { SCIM_KEY_slash, SCIM_KEY_ampersand },
2883 { SCIM_KEY_colon, SCIM_KEY_greater },
2884 { SCIM_KEY_semicolon, SCIM_KEY_less },
2885 { SCIM_KEY_equal, SCIM_KEY_parenright },
2886 { SCIM_KEY_question, SCIM_KEY_underscore },
2887 { SCIM_KEY_asciicircum, SCIM_KEY_bar },
2888 { SCIM_KEY_underscore, SCIM_KEY_question },
2889 { SCIM_KEY_grave, SCIM_KEY_braceright },
2890 { SCIM_KEY_bar, SCIM_KEY_asciitilde },
2891 { SCIM_KEY_ordfeminine, SCIM_KEY_quotedbl },
2892 { SCIM_KEY_guillemotright, SCIM_KEY_plus },
2893 { SCIM_KEY_ccedilla, SCIM_KEY_colon },
2896 static __Uint16Pair __us_to_portuguese_caps_shift [] = {
2897 { SCIM_KEY_quotedbl, SCIM_KEY_ordfeminine },
2898 { SCIM_KEY_ampersand, SCIM_KEY_slash },
2899 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
2900 { SCIM_KEY_parenright, SCIM_KEY_equal },
2901 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
2902 { SCIM_KEY_plus, SCIM_KEY_guillemotright },
2903 { SCIM_KEY_colon, SCIM_KEY_ccedilla },
2904 { SCIM_KEY_less, SCIM_KEY_semicolon },
2905 { SCIM_KEY_greater, SCIM_KEY_colon },
2906 { SCIM_KEY_question, SCIM_KEY_underscore },
2907 { SCIM_KEY_at, SCIM_KEY_quotedbl },
2908 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
2909 { SCIM_KEY_underscore, SCIM_KEY_question },
2910 { SCIM_KEY_braceleft, SCIM_KEY_asterisk },
2911 { SCIM_KEY_bar, SCIM_KEY_asciicircum },
2912 { SCIM_KEY_braceright, SCIM_KEY_grave },
2913 { SCIM_KEY_asciitilde, SCIM_KEY_bar },
2916 static __Uint16Pair __slovak_to_us_normal [] = {
2917 { SCIM_KEY_plus, SCIM_KEY_1 },
2918 { SCIM_KEY_minus, SCIM_KEY_slash },
2919 { SCIM_KEY_semicolon, SCIM_KEY_grave },
2920 { SCIM_KEY_equal, SCIM_KEY_minus },
2921 { SCIM_KEY_y, SCIM_KEY_z },
2922 { SCIM_KEY_z, SCIM_KEY_y },
2923 { SCIM_KEY_section, SCIM_KEY_apostrophe },
2924 { SCIM_KEY_aacute, SCIM_KEY_8 },
2925 { SCIM_KEY_adiaeresis, SCIM_KEY_bracketright },
2926 { SCIM_KEY_eacute, SCIM_KEY_0 },
2927 { SCIM_KEY_iacute, SCIM_KEY_9 },
2928 { SCIM_KEY_ocircumflex, SCIM_KEY_semicolon },
2929 { SCIM_KEY_uacute, SCIM_KEY_bracketleft },
2930 { SCIM_KEY_yacute, SCIM_KEY_7 },
2931 { SCIM_KEY_lcaron, SCIM_KEY_2 },
2932 { SCIM_KEY_scaron, SCIM_KEY_3 },
2933 { SCIM_KEY_tcaron, SCIM_KEY_5 },
2934 { SCIM_KEY_zcaron, SCIM_KEY_6 },
2935 { SCIM_KEY_ccaron, SCIM_KEY_4 },
2936 { SCIM_KEY_ncaron, SCIM_KEY_backslash },
2937 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
2940 static __Uint16Pair __us_to_slovak_normal [] = {
2941 { SCIM_KEY_apostrophe, SCIM_KEY_section },
2942 { SCIM_KEY_minus, SCIM_KEY_equal },
2943 { SCIM_KEY_slash, SCIM_KEY_minus },
2944 { SCIM_KEY_0, SCIM_KEY_eacute },
2945 { SCIM_KEY_1, SCIM_KEY_plus },
2946 { SCIM_KEY_2, SCIM_KEY_lcaron },
2947 { SCIM_KEY_3, SCIM_KEY_scaron },
2948 { SCIM_KEY_4, SCIM_KEY_ccaron },
2949 { SCIM_KEY_5, SCIM_KEY_tcaron },
2950 { SCIM_KEY_6, SCIM_KEY_zcaron },
2951 { SCIM_KEY_7, SCIM_KEY_yacute },
2952 { SCIM_KEY_8, SCIM_KEY_aacute },
2953 { SCIM_KEY_9, SCIM_KEY_iacute },
2954 { SCIM_KEY_semicolon, SCIM_KEY_ocircumflex },
2955 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
2956 { SCIM_KEY_bracketleft, SCIM_KEY_uacute },
2957 { SCIM_KEY_backslash, SCIM_KEY_ncaron },
2958 { SCIM_KEY_bracketright, SCIM_KEY_adiaeresis },
2959 { SCIM_KEY_grave, SCIM_KEY_semicolon },
2960 { SCIM_KEY_y, SCIM_KEY_z },
2961 { SCIM_KEY_z, SCIM_KEY_y },
2964 static __Uint16Pair __slovak_to_us_caps [] = {
2965 { SCIM_KEY_plus, SCIM_KEY_1 },
2966 { SCIM_KEY_minus, SCIM_KEY_slash },
2967 { SCIM_KEY_semicolon, SCIM_KEY_grave },
2968 { SCIM_KEY_equal, SCIM_KEY_minus },
2969 { SCIM_KEY_Y, SCIM_KEY_Z },
2970 { SCIM_KEY_Z, SCIM_KEY_Y },
2971 { SCIM_KEY_section, SCIM_KEY_apostrophe },
2972 { SCIM_KEY_Aacute, SCIM_KEY_8 },
2973 { SCIM_KEY_Adiaeresis, SCIM_KEY_bracketright },
2974 { SCIM_KEY_Eacute, SCIM_KEY_0 },
2975 { SCIM_KEY_Iacute, SCIM_KEY_9 },
2976 { SCIM_KEY_Ocircumflex, SCIM_KEY_semicolon },
2977 { SCIM_KEY_Uacute, SCIM_KEY_bracketleft },
2978 { SCIM_KEY_Yacute, SCIM_KEY_7 },
2979 { SCIM_KEY_Lcaron, SCIM_KEY_2 },
2980 { SCIM_KEY_Scaron, SCIM_KEY_3 },
2981 { SCIM_KEY_Tcaron, SCIM_KEY_5 },
2982 { SCIM_KEY_Zcaron, SCIM_KEY_6 },
2983 { SCIM_KEY_Ccaron, SCIM_KEY_4 },
2984 { SCIM_KEY_Ncaron, SCIM_KEY_backslash },
2985 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
2988 static __Uint16Pair __us_to_slovak_caps [] = {
2989 { SCIM_KEY_apostrophe, SCIM_KEY_section },
2990 { SCIM_KEY_minus, SCIM_KEY_equal },
2991 { SCIM_KEY_slash, SCIM_KEY_minus },
2992 { SCIM_KEY_0, SCIM_KEY_Eacute },
2993 { SCIM_KEY_1, SCIM_KEY_plus },
2994 { SCIM_KEY_2, SCIM_KEY_Lcaron },
2995 { SCIM_KEY_3, SCIM_KEY_Scaron },
2996 { SCIM_KEY_4, SCIM_KEY_Ccaron },
2997 { SCIM_KEY_5, SCIM_KEY_Tcaron },
2998 { SCIM_KEY_6, SCIM_KEY_Zcaron },
2999 { SCIM_KEY_7, SCIM_KEY_Yacute },
3000 { SCIM_KEY_8, SCIM_KEY_Aacute },
3001 { SCIM_KEY_9, SCIM_KEY_Iacute },
3002 { SCIM_KEY_semicolon, SCIM_KEY_Ocircumflex },
3003 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
3004 { SCIM_KEY_Y, SCIM_KEY_Z },
3005 { SCIM_KEY_Z, SCIM_KEY_Y },
3006 { SCIM_KEY_bracketleft, SCIM_KEY_Uacute },
3007 { SCIM_KEY_backslash, SCIM_KEY_Ncaron },
3008 { SCIM_KEY_bracketright, SCIM_KEY_Adiaeresis },
3009 { SCIM_KEY_grave, SCIM_KEY_semicolon },
3012 static __Uint16Pair __slovak_to_us_shift [] = {
3013 { SCIM_KEY_exclam, SCIM_KEY_quotedbl },
3014 { SCIM_KEY_quotedbl, SCIM_KEY_colon },
3015 { SCIM_KEY_percent, SCIM_KEY_underscore },
3016 { SCIM_KEY_parenleft, SCIM_KEY_braceright },
3017 { SCIM_KEY_parenright, SCIM_KEY_bar },
3018 { SCIM_KEY_slash, SCIM_KEY_braceleft },
3019 { SCIM_KEY_0, SCIM_KEY_parenright },
3020 { SCIM_KEY_1, SCIM_KEY_exclam },
3021 { SCIM_KEY_2, SCIM_KEY_at },
3022 { SCIM_KEY_3, SCIM_KEY_numbersign },
3023 { SCIM_KEY_4, SCIM_KEY_dollar },
3024 { SCIM_KEY_5, SCIM_KEY_percent },
3025 { SCIM_KEY_6, SCIM_KEY_asciicircum },
3026 { SCIM_KEY_7, SCIM_KEY_ampersand },
3027 { SCIM_KEY_8, SCIM_KEY_asterisk },
3028 { SCIM_KEY_9, SCIM_KEY_parenleft },
3029 { SCIM_KEY_colon, SCIM_KEY_greater },
3030 { SCIM_KEY_question, SCIM_KEY_less },
3031 { SCIM_KEY_Y, SCIM_KEY_Z },
3032 { SCIM_KEY_Z, SCIM_KEY_Y },
3033 { SCIM_KEY_underscore, SCIM_KEY_question },
3034 { SCIM_KEY_dead_abovering, SCIM_KEY_asciitilde },
3035 { SCIM_KEY_dead_caron, SCIM_KEY_plus },
3038 static __Uint16Pair __us_to_slovak_shift [] = {
3039 { SCIM_KEY_exclam, SCIM_KEY_1 },
3040 { SCIM_KEY_quotedbl, SCIM_KEY_exclam },
3041 { SCIM_KEY_numbersign, SCIM_KEY_3 },
3042 { SCIM_KEY_dollar, SCIM_KEY_4 },
3043 { SCIM_KEY_percent, SCIM_KEY_5 },
3044 { SCIM_KEY_ampersand, SCIM_KEY_7 },
3045 { SCIM_KEY_parenleft, SCIM_KEY_9 },
3046 { SCIM_KEY_parenright, SCIM_KEY_0 },
3047 { SCIM_KEY_asterisk, SCIM_KEY_8 },
3048 { SCIM_KEY_plus, SCIM_KEY_dead_caron },
3049 { SCIM_KEY_colon, SCIM_KEY_quotedbl },
3050 { SCIM_KEY_less, SCIM_KEY_question },
3051 { SCIM_KEY_greater, SCIM_KEY_colon },
3052 { SCIM_KEY_question, SCIM_KEY_underscore },
3053 { SCIM_KEY_at, SCIM_KEY_2 },
3054 { SCIM_KEY_Y, SCIM_KEY_Z },
3055 { SCIM_KEY_Z, SCIM_KEY_Y },
3056 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
3057 { SCIM_KEY_underscore, SCIM_KEY_percent },
3058 { SCIM_KEY_braceleft, SCIM_KEY_slash },
3059 { SCIM_KEY_bar, SCIM_KEY_parenright },
3060 { SCIM_KEY_braceright, SCIM_KEY_parenleft },
3061 { SCIM_KEY_asciitilde, SCIM_KEY_dead_abovering },
3064 static __Uint16Pair __slovak_to_us_caps_shift [] = {
3065 { SCIM_KEY_exclam, SCIM_KEY_quotedbl },
3066 { SCIM_KEY_quotedbl, SCIM_KEY_colon },
3067 { SCIM_KEY_percent, SCIM_KEY_underscore },
3068 { SCIM_KEY_parenleft, SCIM_KEY_braceright },
3069 { SCIM_KEY_parenright, SCIM_KEY_bar },
3070 { SCIM_KEY_slash, SCIM_KEY_braceleft },
3071 { SCIM_KEY_0, SCIM_KEY_parenright },
3072 { SCIM_KEY_1, SCIM_KEY_exclam },
3073 { SCIM_KEY_2, SCIM_KEY_at },
3074 { SCIM_KEY_3, SCIM_KEY_numbersign },
3075 { SCIM_KEY_4, SCIM_KEY_dollar },
3076 { SCIM_KEY_5, SCIM_KEY_percent },
3077 { SCIM_KEY_6, SCIM_KEY_asciicircum },
3078 { SCIM_KEY_7, SCIM_KEY_ampersand },
3079 { SCIM_KEY_8, SCIM_KEY_asterisk },
3080 { SCIM_KEY_9, SCIM_KEY_parenleft },
3081 { SCIM_KEY_colon, SCIM_KEY_greater },
3082 { SCIM_KEY_question, SCIM_KEY_less },
3083 { SCIM_KEY_underscore, SCIM_KEY_question },
3084 { SCIM_KEY_y, SCIM_KEY_z },
3085 { SCIM_KEY_z, SCIM_KEY_y },
3086 { SCIM_KEY_dead_abovering, SCIM_KEY_asciitilde },
3087 { SCIM_KEY_dead_caron, SCIM_KEY_plus },
3090 static __Uint16Pair __us_to_slovak_caps_shift [] = {
3091 { SCIM_KEY_exclam, SCIM_KEY_1 },
3092 { SCIM_KEY_quotedbl, SCIM_KEY_exclam },
3093 { SCIM_KEY_numbersign, SCIM_KEY_3 },
3094 { SCIM_KEY_dollar, SCIM_KEY_4 },
3095 { SCIM_KEY_percent, SCIM_KEY_5 },
3096 { SCIM_KEY_ampersand, SCIM_KEY_7 },
3097 { SCIM_KEY_parenleft, SCIM_KEY_9 },
3098 { SCIM_KEY_parenright, SCIM_KEY_0 },
3099 { SCIM_KEY_asterisk, SCIM_KEY_8 },
3100 { SCIM_KEY_plus, SCIM_KEY_dead_caron },
3101 { SCIM_KEY_colon, SCIM_KEY_quotedbl },
3102 { SCIM_KEY_less, SCIM_KEY_question },
3103 { SCIM_KEY_greater, SCIM_KEY_colon },
3104 { SCIM_KEY_question, SCIM_KEY_underscore },
3105 { SCIM_KEY_at, SCIM_KEY_2 },
3106 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
3107 { SCIM_KEY_underscore, SCIM_KEY_percent },
3108 { SCIM_KEY_y, SCIM_KEY_z },
3109 { SCIM_KEY_z, SCIM_KEY_y },
3110 { SCIM_KEY_braceleft, SCIM_KEY_slash },
3111 { SCIM_KEY_bar, SCIM_KEY_parenright },
3112 { SCIM_KEY_braceright, SCIM_KEY_parenleft },
3113 { SCIM_KEY_asciitilde, SCIM_KEY_dead_abovering },
3116 static __Uint16Pair __slovak_qwerty_to_us_normal [] = {
3117 { SCIM_KEY_plus, SCIM_KEY_1 },
3118 { SCIM_KEY_minus, SCIM_KEY_slash },
3119 { SCIM_KEY_semicolon, SCIM_KEY_grave },
3120 { SCIM_KEY_equal, SCIM_KEY_minus },
3121 { SCIM_KEY_section, SCIM_KEY_apostrophe },
3122 { SCIM_KEY_aacute, SCIM_KEY_8 },
3123 { SCIM_KEY_adiaeresis, SCIM_KEY_bracketright },
3124 { SCIM_KEY_eacute, SCIM_KEY_0 },
3125 { SCIM_KEY_iacute, SCIM_KEY_9 },
3126 { SCIM_KEY_ocircumflex, SCIM_KEY_semicolon },
3127 { SCIM_KEY_uacute, SCIM_KEY_bracketleft },
3128 { SCIM_KEY_yacute, SCIM_KEY_7 },
3129 { SCIM_KEY_lcaron, SCIM_KEY_2 },
3130 { SCIM_KEY_scaron, SCIM_KEY_3 },
3131 { SCIM_KEY_tcaron, SCIM_KEY_5 },
3132 { SCIM_KEY_zcaron, SCIM_KEY_6 },
3133 { SCIM_KEY_ccaron, SCIM_KEY_4 },
3134 { SCIM_KEY_ncaron, SCIM_KEY_backslash },
3135 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
3138 static __Uint16Pair __us_to_slovak_qwerty_normal [] = {
3139 { SCIM_KEY_apostrophe, SCIM_KEY_section },
3140 { SCIM_KEY_minus, SCIM_KEY_equal },
3141 { SCIM_KEY_slash, SCIM_KEY_minus },
3142 { SCIM_KEY_0, SCIM_KEY_eacute },
3143 { SCIM_KEY_1, SCIM_KEY_plus },
3144 { SCIM_KEY_2, SCIM_KEY_lcaron },
3145 { SCIM_KEY_3, SCIM_KEY_scaron },
3146 { SCIM_KEY_4, SCIM_KEY_ccaron },
3147 { SCIM_KEY_5, SCIM_KEY_tcaron },
3148 { SCIM_KEY_6, SCIM_KEY_zcaron },
3149 { SCIM_KEY_7, SCIM_KEY_yacute },
3150 { SCIM_KEY_8, SCIM_KEY_aacute },
3151 { SCIM_KEY_9, SCIM_KEY_iacute },
3152 { SCIM_KEY_semicolon, SCIM_KEY_ocircumflex },
3153 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
3154 { SCIM_KEY_bracketleft, SCIM_KEY_uacute },
3155 { SCIM_KEY_backslash, SCIM_KEY_ncaron },
3156 { SCIM_KEY_bracketright, SCIM_KEY_adiaeresis },
3157 { SCIM_KEY_grave, SCIM_KEY_semicolon },
3160 static __Uint16Pair __slovak_qwerty_to_us_caps [] = {
3161 { SCIM_KEY_plus, SCIM_KEY_1 },
3162 { SCIM_KEY_minus, SCIM_KEY_slash },
3163 { SCIM_KEY_semicolon, SCIM_KEY_grave },
3164 { SCIM_KEY_equal, SCIM_KEY_minus },
3165 { SCIM_KEY_section, SCIM_KEY_apostrophe },
3166 { SCIM_KEY_Aacute, SCIM_KEY_8 },
3167 { SCIM_KEY_Adiaeresis, SCIM_KEY_bracketright },
3168 { SCIM_KEY_Eacute, SCIM_KEY_0 },
3169 { SCIM_KEY_Iacute, SCIM_KEY_9 },
3170 { SCIM_KEY_Ocircumflex, SCIM_KEY_semicolon },
3171 { SCIM_KEY_Uacute, SCIM_KEY_bracketleft },
3172 { SCIM_KEY_Yacute, SCIM_KEY_7 },
3173 { SCIM_KEY_Lcaron, SCIM_KEY_2 },
3174 { SCIM_KEY_Scaron, SCIM_KEY_3 },
3175 { SCIM_KEY_Tcaron, SCIM_KEY_5 },
3176 { SCIM_KEY_Zcaron, SCIM_KEY_6 },
3177 { SCIM_KEY_Ccaron, SCIM_KEY_4 },
3178 { SCIM_KEY_Ncaron, SCIM_KEY_backslash },
3179 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
3182 static __Uint16Pair __us_to_slovak_qwerty_caps [] = {
3183 { SCIM_KEY_apostrophe, SCIM_KEY_section },
3184 { SCIM_KEY_minus, SCIM_KEY_equal },
3185 { SCIM_KEY_slash, SCIM_KEY_minus },
3186 { SCIM_KEY_0, SCIM_KEY_Eacute },
3187 { SCIM_KEY_1, SCIM_KEY_plus },
3188 { SCIM_KEY_2, SCIM_KEY_Lcaron },
3189 { SCIM_KEY_3, SCIM_KEY_Scaron },
3190 { SCIM_KEY_4, SCIM_KEY_Ccaron },
3191 { SCIM_KEY_5, SCIM_KEY_Tcaron },
3192 { SCIM_KEY_6, SCIM_KEY_Zcaron },
3193 { SCIM_KEY_7, SCIM_KEY_Yacute },
3194 { SCIM_KEY_8, SCIM_KEY_Aacute },
3195 { SCIM_KEY_9, SCIM_KEY_Iacute },
3196 { SCIM_KEY_semicolon, SCIM_KEY_Ocircumflex },
3197 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
3198 { SCIM_KEY_bracketleft, SCIM_KEY_Uacute },
3199 { SCIM_KEY_backslash, SCIM_KEY_Ncaron },
3200 { SCIM_KEY_bracketright, SCIM_KEY_Adiaeresis },
3201 { SCIM_KEY_grave, SCIM_KEY_semicolon },
3204 static __Uint16Pair __slovak_qwerty_to_us_shift [] = {
3205 { SCIM_KEY_exclam, SCIM_KEY_quotedbl },
3206 { SCIM_KEY_quotedbl, SCIM_KEY_colon },
3207 { SCIM_KEY_percent, SCIM_KEY_underscore },
3208 { SCIM_KEY_parenleft, SCIM_KEY_braceright },
3209 { SCIM_KEY_parenright, SCIM_KEY_bar },
3210 { SCIM_KEY_slash, SCIM_KEY_braceleft },
3211 { SCIM_KEY_0, SCIM_KEY_parenright },
3212 { SCIM_KEY_1, SCIM_KEY_exclam },
3213 { SCIM_KEY_2, SCIM_KEY_at },
3214 { SCIM_KEY_3, SCIM_KEY_numbersign },
3215 { SCIM_KEY_4, SCIM_KEY_dollar },
3216 { SCIM_KEY_5, SCIM_KEY_percent },
3217 { SCIM_KEY_6, SCIM_KEY_asciicircum },
3218 { SCIM_KEY_7, SCIM_KEY_ampersand },
3219 { SCIM_KEY_8, SCIM_KEY_asterisk },
3220 { SCIM_KEY_9, SCIM_KEY_parenleft },
3221 { SCIM_KEY_colon, SCIM_KEY_greater },
3222 { SCIM_KEY_question, SCIM_KEY_less },
3223 { SCIM_KEY_underscore, SCIM_KEY_question },
3224 { SCIM_KEY_dead_abovering, SCIM_KEY_asciitilde },
3225 { SCIM_KEY_dead_caron, SCIM_KEY_plus },
3228 static __Uint16Pair __us_to_slovak_qwerty_shift [] = {
3229 { SCIM_KEY_exclam, SCIM_KEY_1 },
3230 { SCIM_KEY_quotedbl, SCIM_KEY_exclam },
3231 { SCIM_KEY_numbersign, SCIM_KEY_3 },
3232 { SCIM_KEY_dollar, SCIM_KEY_4 },
3233 { SCIM_KEY_percent, SCIM_KEY_5 },
3234 { SCIM_KEY_ampersand, SCIM_KEY_7 },
3235 { SCIM_KEY_parenleft, SCIM_KEY_9 },
3236 { SCIM_KEY_parenright, SCIM_KEY_0 },
3237 { SCIM_KEY_asterisk, SCIM_KEY_8 },
3238 { SCIM_KEY_plus, SCIM_KEY_dead_caron },
3239 { SCIM_KEY_colon, SCIM_KEY_quotedbl },
3240 { SCIM_KEY_less, SCIM_KEY_question },
3241 { SCIM_KEY_greater, SCIM_KEY_colon },
3242 { SCIM_KEY_question, SCIM_KEY_underscore },
3243 { SCIM_KEY_at, SCIM_KEY_2 },
3244 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
3245 { SCIM_KEY_underscore, SCIM_KEY_percent },
3246 { SCIM_KEY_braceleft, SCIM_KEY_slash },
3247 { SCIM_KEY_bar, SCIM_KEY_parenright },
3248 { SCIM_KEY_braceright, SCIM_KEY_parenleft },
3249 { SCIM_KEY_asciitilde, SCIM_KEY_dead_abovering },
3252 static __Uint16Pair __slovak_qwerty_to_us_caps_shift [] = {
3253 { SCIM_KEY_exclam, SCIM_KEY_quotedbl },
3254 { SCIM_KEY_quotedbl, SCIM_KEY_colon },
3255 { SCIM_KEY_percent, SCIM_KEY_underscore },
3256 { SCIM_KEY_parenleft, SCIM_KEY_braceright },
3257 { SCIM_KEY_parenright, SCIM_KEY_bar },
3258 { SCIM_KEY_slash, SCIM_KEY_braceleft },
3259 { SCIM_KEY_0, SCIM_KEY_parenright },
3260 { SCIM_KEY_1, SCIM_KEY_exclam },
3261 { SCIM_KEY_2, SCIM_KEY_at },
3262 { SCIM_KEY_3, SCIM_KEY_numbersign },
3263 { SCIM_KEY_4, SCIM_KEY_dollar },
3264 { SCIM_KEY_5, SCIM_KEY_percent },
3265 { SCIM_KEY_6, SCIM_KEY_asciicircum },
3266 { SCIM_KEY_7, SCIM_KEY_ampersand },
3267 { SCIM_KEY_8, SCIM_KEY_asterisk },
3268 { SCIM_KEY_9, SCIM_KEY_parenleft },
3269 { SCIM_KEY_colon, SCIM_KEY_greater },
3270 { SCIM_KEY_question, SCIM_KEY_less },
3271 { SCIM_KEY_underscore, SCIM_KEY_question },
3272 { SCIM_KEY_dead_abovering, SCIM_KEY_asciitilde },
3273 { SCIM_KEY_dead_caron, SCIM_KEY_plus },
3276 static __Uint16Pair __us_to_slovak_qwerty_caps_shift [] = {
3277 { SCIM_KEY_exclam, SCIM_KEY_1 },
3278 { SCIM_KEY_quotedbl, SCIM_KEY_exclam },
3279 { SCIM_KEY_numbersign, SCIM_KEY_3 },
3280 { SCIM_KEY_dollar, SCIM_KEY_4 },
3281 { SCIM_KEY_percent, SCIM_KEY_5 },
3282 { SCIM_KEY_ampersand, SCIM_KEY_7 },
3283 { SCIM_KEY_parenleft, SCIM_KEY_9 },
3284 { SCIM_KEY_parenright, SCIM_KEY_0 },
3285 { SCIM_KEY_asterisk, SCIM_KEY_8 },
3286 { SCIM_KEY_plus, SCIM_KEY_dead_caron },
3287 { SCIM_KEY_colon, SCIM_KEY_quotedbl },
3288 { SCIM_KEY_less, SCIM_KEY_question },
3289 { SCIM_KEY_greater, SCIM_KEY_colon },
3290 { SCIM_KEY_question, SCIM_KEY_underscore },
3291 { SCIM_KEY_at, SCIM_KEY_2 },
3292 { SCIM_KEY_asciicircum, SCIM_KEY_6 },
3293 { SCIM_KEY_underscore, SCIM_KEY_percent },
3294 { SCIM_KEY_braceleft, SCIM_KEY_slash },
3295 { SCIM_KEY_bar, SCIM_KEY_parenright },
3296 { SCIM_KEY_braceright, SCIM_KEY_parenleft },
3297 { SCIM_KEY_asciitilde, SCIM_KEY_dead_abovering },
3300 static __Uint16Pair __spanish_cp850_to_us_normal [] = {
3301 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
3302 { SCIM_KEY_plus, SCIM_KEY_bracketright },
3303 { SCIM_KEY_minus, SCIM_KEY_slash },
3304 { SCIM_KEY_exclamdown, SCIM_KEY_equal },
3305 { SCIM_KEY_masculine, SCIM_KEY_grave },
3306 { SCIM_KEY_ccedilla, SCIM_KEY_backslash },
3307 { SCIM_KEY_ntilde, SCIM_KEY_semicolon },
3308 { SCIM_KEY_dead_grave, SCIM_KEY_bracketleft },
3309 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
3312 static __Uint16Pair __us_to_spanish_cp850_normal [] = {
3313 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
3314 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
3315 { SCIM_KEY_slash, SCIM_KEY_minus },
3316 { SCIM_KEY_semicolon, SCIM_KEY_ntilde },
3317 { SCIM_KEY_equal, SCIM_KEY_exclamdown },
3318 { SCIM_KEY_bracketleft, SCIM_KEY_dead_grave },
3319 { SCIM_KEY_backslash, SCIM_KEY_ccedilla },
3320 { SCIM_KEY_bracketright, SCIM_KEY_plus },
3321 { SCIM_KEY_grave, SCIM_KEY_masculine },
3324 static __Uint16Pair __spanish_cp850_to_us_caps [] = {
3325 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
3326 { SCIM_KEY_plus, SCIM_KEY_bracketright },
3327 { SCIM_KEY_minus, SCIM_KEY_slash },
3328 { SCIM_KEY_exclamdown, SCIM_KEY_equal },
3329 { SCIM_KEY_masculine, SCIM_KEY_grave },
3330 { SCIM_KEY_Ccedilla, SCIM_KEY_backslash },
3331 { SCIM_KEY_Ntilde, SCIM_KEY_semicolon },
3332 { SCIM_KEY_dead_grave, SCIM_KEY_bracketleft },
3333 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
3336 static __Uint16Pair __us_to_spanish_cp850_caps [] = {
3337 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
3338 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
3339 { SCIM_KEY_slash, SCIM_KEY_minus },
3340 { SCIM_KEY_semicolon, SCIM_KEY_Ntilde },
3341 { SCIM_KEY_equal, SCIM_KEY_exclamdown },
3342 { SCIM_KEY_bracketleft, SCIM_KEY_dead_grave },
3343 { SCIM_KEY_backslash, SCIM_KEY_Ccedilla },
3344 { SCIM_KEY_bracketright, SCIM_KEY_plus },
3345 { SCIM_KEY_grave, SCIM_KEY_masculine },
3348 static __Uint16Pair __spanish_cp850_to_us_shift [] = {
3349 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3350 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3351 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3352 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3353 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
3354 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3355 { SCIM_KEY_colon, SCIM_KEY_greater },
3356 { SCIM_KEY_semicolon, SCIM_KEY_less },
3357 { SCIM_KEY_equal, SCIM_KEY_parenright },
3358 { SCIM_KEY_question, SCIM_KEY_underscore },
3359 { SCIM_KEY_underscore, SCIM_KEY_question },
3360 { SCIM_KEY_ordfeminine, SCIM_KEY_asciitilde },
3361 { SCIM_KEY_periodcentered, SCIM_KEY_numbersign },
3362 { SCIM_KEY_questiondown, SCIM_KEY_plus },
3363 { SCIM_KEY_Ccedilla, SCIM_KEY_bar },
3364 { SCIM_KEY_Ntilde, SCIM_KEY_colon },
3365 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceleft },
3366 { SCIM_KEY_dead_diaeresis, SCIM_KEY_quotedbl },
3369 static __Uint16Pair __us_to_spanish_cp850_shift [] = {
3370 { SCIM_KEY_quotedbl, SCIM_KEY_dead_diaeresis },
3371 { SCIM_KEY_numbersign, SCIM_KEY_periodcentered },
3372 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3373 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3374 { SCIM_KEY_parenright, SCIM_KEY_equal },
3375 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3376 { SCIM_KEY_plus, SCIM_KEY_questiondown },
3377 { SCIM_KEY_colon, SCIM_KEY_Ntilde },
3378 { SCIM_KEY_less, SCIM_KEY_semicolon },
3379 { SCIM_KEY_greater, SCIM_KEY_colon },
3380 { SCIM_KEY_question, SCIM_KEY_underscore },
3381 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3382 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3383 { SCIM_KEY_underscore, SCIM_KEY_question },
3384 { SCIM_KEY_braceleft, SCIM_KEY_dead_circumflex },
3385 { SCIM_KEY_bar, SCIM_KEY_Ccedilla },
3386 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
3387 { SCIM_KEY_asciitilde, SCIM_KEY_ordfeminine },
3390 static __Uint16Pair __spanish_cp850_to_us_caps_shift [] = {
3391 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3392 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3393 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3394 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3395 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
3396 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3397 { SCIM_KEY_colon, SCIM_KEY_greater },
3398 { SCIM_KEY_semicolon, SCIM_KEY_less },
3399 { SCIM_KEY_equal, SCIM_KEY_parenright },
3400 { SCIM_KEY_question, SCIM_KEY_underscore },
3401 { SCIM_KEY_underscore, SCIM_KEY_question },
3402 { SCIM_KEY_ordfeminine, SCIM_KEY_asciitilde },
3403 { SCIM_KEY_periodcentered, SCIM_KEY_numbersign },
3404 { SCIM_KEY_questiondown, SCIM_KEY_plus },
3405 { SCIM_KEY_ccedilla, SCIM_KEY_bar },
3406 { SCIM_KEY_ntilde, SCIM_KEY_colon },
3407 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceleft },
3408 { SCIM_KEY_dead_diaeresis, SCIM_KEY_quotedbl },
3411 static __Uint16Pair __us_to_spanish_cp850_caps_shift [] = {
3412 { SCIM_KEY_quotedbl, SCIM_KEY_dead_diaeresis },
3413 { SCIM_KEY_numbersign, SCIM_KEY_periodcentered },
3414 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3415 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3416 { SCIM_KEY_parenright, SCIM_KEY_equal },
3417 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3418 { SCIM_KEY_plus, SCIM_KEY_questiondown },
3419 { SCIM_KEY_colon, SCIM_KEY_ntilde },
3420 { SCIM_KEY_less, SCIM_KEY_semicolon },
3421 { SCIM_KEY_greater, SCIM_KEY_colon },
3422 { SCIM_KEY_question, SCIM_KEY_underscore },
3423 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3424 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3425 { SCIM_KEY_underscore, SCIM_KEY_question },
3426 { SCIM_KEY_braceleft, SCIM_KEY_dead_circumflex },
3427 { SCIM_KEY_bar, SCIM_KEY_ccedilla },
3428 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
3429 { SCIM_KEY_asciitilde, SCIM_KEY_ordfeminine },
3432 static __Uint16Pair __spanish_to_us_normal [] = {
3433 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
3434 { SCIM_KEY_plus, SCIM_KEY_bracketright },
3435 { SCIM_KEY_minus, SCIM_KEY_slash },
3436 { SCIM_KEY_exclamdown, SCIM_KEY_equal },
3437 { SCIM_KEY_masculine, SCIM_KEY_grave },
3438 { SCIM_KEY_ccedilla, SCIM_KEY_backslash },
3439 { SCIM_KEY_ntilde, SCIM_KEY_semicolon },
3440 { SCIM_KEY_dead_grave, SCIM_KEY_bracketleft },
3441 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
3444 static __Uint16Pair __us_to_spanish_normal [] = {
3445 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
3446 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
3447 { SCIM_KEY_slash, SCIM_KEY_minus },
3448 { SCIM_KEY_semicolon, SCIM_KEY_ntilde },
3449 { SCIM_KEY_equal, SCIM_KEY_exclamdown },
3450 { SCIM_KEY_bracketleft, SCIM_KEY_dead_grave },
3451 { SCIM_KEY_backslash, SCIM_KEY_ccedilla },
3452 { SCIM_KEY_bracketright, SCIM_KEY_plus },
3453 { SCIM_KEY_grave, SCIM_KEY_masculine },
3456 static __Uint16Pair __spanish_to_us_caps [] = {
3457 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
3458 { SCIM_KEY_plus, SCIM_KEY_bracketright },
3459 { SCIM_KEY_minus, SCIM_KEY_slash },
3460 { SCIM_KEY_exclamdown, SCIM_KEY_equal },
3461 { SCIM_KEY_masculine, SCIM_KEY_grave },
3462 { SCIM_KEY_Ccedilla, SCIM_KEY_backslash },
3463 { SCIM_KEY_Ntilde, SCIM_KEY_semicolon },
3464 { SCIM_KEY_dead_grave, SCIM_KEY_bracketleft },
3465 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
3468 static __Uint16Pair __us_to_spanish_caps [] = {
3469 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
3470 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
3471 { SCIM_KEY_slash, SCIM_KEY_minus },
3472 { SCIM_KEY_semicolon, SCIM_KEY_Ntilde },
3473 { SCIM_KEY_equal, SCIM_KEY_exclamdown },
3474 { SCIM_KEY_bracketleft, SCIM_KEY_dead_grave },
3475 { SCIM_KEY_backslash, SCIM_KEY_Ccedilla },
3476 { SCIM_KEY_bracketright, SCIM_KEY_plus },
3477 { SCIM_KEY_grave, SCIM_KEY_masculine },
3480 static __Uint16Pair __spanish_to_us_shift [] = {
3481 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3482 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3483 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3484 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3485 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
3486 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3487 { SCIM_KEY_colon, SCIM_KEY_greater },
3488 { SCIM_KEY_semicolon, SCIM_KEY_less },
3489 { SCIM_KEY_equal, SCIM_KEY_parenright },
3490 { SCIM_KEY_question, SCIM_KEY_underscore },
3491 { SCIM_KEY_underscore, SCIM_KEY_question },
3492 { SCIM_KEY_ordfeminine, SCIM_KEY_asciitilde },
3493 { SCIM_KEY_periodcentered, SCIM_KEY_numbersign },
3494 { SCIM_KEY_questiondown, SCIM_KEY_plus },
3495 { SCIM_KEY_Ccedilla, SCIM_KEY_bar },
3496 { SCIM_KEY_Ntilde, SCIM_KEY_colon },
3497 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceleft },
3498 { SCIM_KEY_dead_diaeresis, SCIM_KEY_quotedbl },
3501 static __Uint16Pair __us_to_spanish_shift [] = {
3502 { SCIM_KEY_quotedbl, SCIM_KEY_dead_diaeresis },
3503 { SCIM_KEY_numbersign, SCIM_KEY_periodcentered },
3504 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3505 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3506 { SCIM_KEY_parenright, SCIM_KEY_equal },
3507 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3508 { SCIM_KEY_plus, SCIM_KEY_questiondown },
3509 { SCIM_KEY_colon, SCIM_KEY_Ntilde },
3510 { SCIM_KEY_less, SCIM_KEY_semicolon },
3511 { SCIM_KEY_greater, SCIM_KEY_colon },
3512 { SCIM_KEY_question, SCIM_KEY_underscore },
3513 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3514 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3515 { SCIM_KEY_underscore, SCIM_KEY_question },
3516 { SCIM_KEY_braceleft, SCIM_KEY_dead_circumflex },
3517 { SCIM_KEY_bar, SCIM_KEY_Ccedilla },
3518 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
3519 { SCIM_KEY_asciitilde, SCIM_KEY_ordfeminine },
3522 static __Uint16Pair __spanish_to_us_caps_shift [] = {
3523 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3524 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3525 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3526 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3527 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
3528 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3529 { SCIM_KEY_colon, SCIM_KEY_greater },
3530 { SCIM_KEY_semicolon, SCIM_KEY_less },
3531 { SCIM_KEY_equal, SCIM_KEY_parenright },
3532 { SCIM_KEY_question, SCIM_KEY_underscore },
3533 { SCIM_KEY_underscore, SCIM_KEY_question },
3534 { SCIM_KEY_ordfeminine, SCIM_KEY_asciitilde },
3535 { SCIM_KEY_periodcentered, SCIM_KEY_numbersign },
3536 { SCIM_KEY_questiondown, SCIM_KEY_plus },
3537 { SCIM_KEY_ccedilla, SCIM_KEY_bar },
3538 { SCIM_KEY_ntilde, SCIM_KEY_colon },
3539 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceleft },
3540 { SCIM_KEY_dead_diaeresis, SCIM_KEY_quotedbl },
3543 static __Uint16Pair __us_to_spanish_caps_shift [] = {
3544 { SCIM_KEY_quotedbl, SCIM_KEY_dead_diaeresis },
3545 { SCIM_KEY_numbersign, SCIM_KEY_periodcentered },
3546 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3547 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3548 { SCIM_KEY_parenright, SCIM_KEY_equal },
3549 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3550 { SCIM_KEY_plus, SCIM_KEY_questiondown },
3551 { SCIM_KEY_colon, SCIM_KEY_ntilde },
3552 { SCIM_KEY_less, SCIM_KEY_semicolon },
3553 { SCIM_KEY_greater, SCIM_KEY_colon },
3554 { SCIM_KEY_question, SCIM_KEY_underscore },
3555 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3556 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3557 { SCIM_KEY_underscore, SCIM_KEY_question },
3558 { SCIM_KEY_braceleft, SCIM_KEY_dead_circumflex },
3559 { SCIM_KEY_bar, SCIM_KEY_ccedilla },
3560 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
3561 { SCIM_KEY_asciitilde, SCIM_KEY_ordfeminine },
3564 static __Uint16Pair __spanish_latin_america_to_us_normal [] = {
3565 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
3566 { SCIM_KEY_plus, SCIM_KEY_bracketright },
3567 { SCIM_KEY_minus, SCIM_KEY_slash },
3568 { SCIM_KEY_exclamdown, SCIM_KEY_equal },
3569 { SCIM_KEY_masculine, SCIM_KEY_grave },
3570 { SCIM_KEY_ccedilla, SCIM_KEY_backslash },
3571 { SCIM_KEY_ntilde, SCIM_KEY_semicolon },
3572 { SCIM_KEY_dead_grave, SCIM_KEY_bracketleft },
3573 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
3576 static __Uint16Pair __us_to_spanish_latin_america_normal [] = {
3577 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
3578 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
3579 { SCIM_KEY_slash, SCIM_KEY_minus },
3580 { SCIM_KEY_semicolon, SCIM_KEY_ntilde },
3581 { SCIM_KEY_equal, SCIM_KEY_exclamdown },
3582 { SCIM_KEY_bracketleft, SCIM_KEY_dead_grave },
3583 { SCIM_KEY_backslash, SCIM_KEY_ccedilla },
3584 { SCIM_KEY_bracketright, SCIM_KEY_plus },
3585 { SCIM_KEY_grave, SCIM_KEY_masculine },
3588 static __Uint16Pair __spanish_latin_america_to_us_caps [] = {
3589 { SCIM_KEY_apostrophe, SCIM_KEY_minus },
3590 { SCIM_KEY_plus, SCIM_KEY_bracketright },
3591 { SCIM_KEY_minus, SCIM_KEY_slash },
3592 { SCIM_KEY_exclamdown, SCIM_KEY_equal },
3593 { SCIM_KEY_masculine, SCIM_KEY_grave },
3594 { SCIM_KEY_Ccedilla, SCIM_KEY_backslash },
3595 { SCIM_KEY_Ntilde, SCIM_KEY_semicolon },
3596 { SCIM_KEY_dead_grave, SCIM_KEY_bracketleft },
3597 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
3600 static __Uint16Pair __us_to_spanish_latin_america_caps [] = {
3601 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
3602 { SCIM_KEY_minus, SCIM_KEY_apostrophe },
3603 { SCIM_KEY_slash, SCIM_KEY_minus },
3604 { SCIM_KEY_semicolon, SCIM_KEY_Ntilde },
3605 { SCIM_KEY_equal, SCIM_KEY_exclamdown },
3606 { SCIM_KEY_bracketleft, SCIM_KEY_dead_grave },
3607 { SCIM_KEY_backslash, SCIM_KEY_Ccedilla },
3608 { SCIM_KEY_bracketright, SCIM_KEY_plus },
3609 { SCIM_KEY_grave, SCIM_KEY_masculine },
3612 static __Uint16Pair __spanish_latin_america_to_us_shift [] = {
3613 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3614 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3615 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3616 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3617 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
3618 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3619 { SCIM_KEY_colon, SCIM_KEY_greater },
3620 { SCIM_KEY_semicolon, SCIM_KEY_less },
3621 { SCIM_KEY_equal, SCIM_KEY_parenright },
3622 { SCIM_KEY_question, SCIM_KEY_underscore },
3623 { SCIM_KEY_underscore, SCIM_KEY_question },
3624 { SCIM_KEY_ordfeminine, SCIM_KEY_asciitilde },
3625 { SCIM_KEY_periodcentered, SCIM_KEY_numbersign },
3626 { SCIM_KEY_questiondown, SCIM_KEY_plus },
3627 { SCIM_KEY_Ccedilla, SCIM_KEY_bar },
3628 { SCIM_KEY_Ntilde, SCIM_KEY_colon },
3629 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceleft },
3630 { SCIM_KEY_dead_diaeresis, SCIM_KEY_quotedbl },
3633 static __Uint16Pair __us_to_spanish_latin_america_shift [] = {
3634 { SCIM_KEY_quotedbl, SCIM_KEY_dead_diaeresis },
3635 { SCIM_KEY_numbersign, SCIM_KEY_periodcentered },
3636 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3637 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3638 { SCIM_KEY_parenright, SCIM_KEY_equal },
3639 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3640 { SCIM_KEY_plus, SCIM_KEY_questiondown },
3641 { SCIM_KEY_colon, SCIM_KEY_Ntilde },
3642 { SCIM_KEY_less, SCIM_KEY_semicolon },
3643 { SCIM_KEY_greater, SCIM_KEY_colon },
3644 { SCIM_KEY_question, SCIM_KEY_underscore },
3645 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3646 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3647 { SCIM_KEY_underscore, SCIM_KEY_question },
3648 { SCIM_KEY_braceleft, SCIM_KEY_dead_circumflex },
3649 { SCIM_KEY_bar, SCIM_KEY_Ccedilla },
3650 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
3651 { SCIM_KEY_asciitilde, SCIM_KEY_ordfeminine },
3654 static __Uint16Pair __spanish_latin_america_to_us_caps_shift [] = {
3655 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3656 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3657 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3658 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3659 { SCIM_KEY_asterisk, SCIM_KEY_braceright },
3660 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3661 { SCIM_KEY_colon, SCIM_KEY_greater },
3662 { SCIM_KEY_semicolon, SCIM_KEY_less },
3663 { SCIM_KEY_equal, SCIM_KEY_parenright },
3664 { SCIM_KEY_question, SCIM_KEY_underscore },
3665 { SCIM_KEY_underscore, SCIM_KEY_question },
3666 { SCIM_KEY_ordfeminine, SCIM_KEY_asciitilde },
3667 { SCIM_KEY_periodcentered, SCIM_KEY_numbersign },
3668 { SCIM_KEY_questiondown, SCIM_KEY_plus },
3669 { SCIM_KEY_ccedilla, SCIM_KEY_bar },
3670 { SCIM_KEY_ntilde, SCIM_KEY_colon },
3671 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceleft },
3672 { SCIM_KEY_dead_diaeresis, SCIM_KEY_quotedbl },
3675 static __Uint16Pair __us_to_spanish_latin_america_caps_shift [] = {
3676 { SCIM_KEY_quotedbl, SCIM_KEY_dead_diaeresis },
3677 { SCIM_KEY_numbersign, SCIM_KEY_periodcentered },
3678 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3679 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3680 { SCIM_KEY_parenright, SCIM_KEY_equal },
3681 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3682 { SCIM_KEY_plus, SCIM_KEY_questiondown },
3683 { SCIM_KEY_colon, SCIM_KEY_ntilde },
3684 { SCIM_KEY_less, SCIM_KEY_semicolon },
3685 { SCIM_KEY_greater, SCIM_KEY_colon },
3686 { SCIM_KEY_question, SCIM_KEY_underscore },
3687 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3688 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3689 { SCIM_KEY_underscore, SCIM_KEY_question },
3690 { SCIM_KEY_braceleft, SCIM_KEY_dead_circumflex },
3691 { SCIM_KEY_bar, SCIM_KEY_ccedilla },
3692 { SCIM_KEY_braceright, SCIM_KEY_asterisk },
3693 { SCIM_KEY_asciitilde, SCIM_KEY_ordfeminine },
3696 static __Uint16Pair __swedish_to_us_normal [] = {
3697 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
3698 { SCIM_KEY_plus, SCIM_KEY_minus },
3699 { SCIM_KEY_minus, SCIM_KEY_slash },
3700 { SCIM_KEY_section, SCIM_KEY_grave },
3701 { SCIM_KEY_adiaeresis, SCIM_KEY_apostrophe },
3702 { SCIM_KEY_aring, SCIM_KEY_bracketleft },
3703 { SCIM_KEY_odiaeresis, SCIM_KEY_semicolon },
3704 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
3705 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
3708 static __Uint16Pair __us_to_swedish_normal [] = {
3709 { SCIM_KEY_apostrophe, SCIM_KEY_adiaeresis },
3710 { SCIM_KEY_minus, SCIM_KEY_plus },
3711 { SCIM_KEY_slash, SCIM_KEY_minus },
3712 { SCIM_KEY_semicolon, SCIM_KEY_odiaeresis },
3713 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
3714 { SCIM_KEY_bracketleft, SCIM_KEY_aring },
3715 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
3716 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
3717 { SCIM_KEY_grave, SCIM_KEY_section },
3720 static __Uint16Pair __swedish_to_us_caps [] = {
3721 { SCIM_KEY_apostrophe, SCIM_KEY_backslash },
3722 { SCIM_KEY_plus, SCIM_KEY_minus },
3723 { SCIM_KEY_minus, SCIM_KEY_slash },
3724 { SCIM_KEY_section, SCIM_KEY_grave },
3725 { SCIM_KEY_Adiaeresis, SCIM_KEY_apostrophe },
3726 { SCIM_KEY_Aring, SCIM_KEY_bracketleft },
3727 { SCIM_KEY_Odiaeresis, SCIM_KEY_semicolon },
3728 { SCIM_KEY_dead_acute, SCIM_KEY_equal },
3729 { SCIM_KEY_dead_diaeresis, SCIM_KEY_bracketright },
3732 static __Uint16Pair __us_to_swedish_caps [] = {
3733 { SCIM_KEY_apostrophe, SCIM_KEY_Adiaeresis },
3734 { SCIM_KEY_minus, SCIM_KEY_plus },
3735 { SCIM_KEY_slash, SCIM_KEY_minus },
3736 { SCIM_KEY_semicolon, SCIM_KEY_Odiaeresis },
3737 { SCIM_KEY_equal, SCIM_KEY_dead_acute },
3738 { SCIM_KEY_bracketleft, SCIM_KEY_Aring },
3739 { SCIM_KEY_backslash, SCIM_KEY_apostrophe },
3740 { SCIM_KEY_bracketright, SCIM_KEY_dead_diaeresis },
3741 { SCIM_KEY_grave, SCIM_KEY_section },
3744 static __Uint16Pair __swedish_to_us_shift [] = {
3745 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3746 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3747 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3748 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3749 { SCIM_KEY_asterisk, SCIM_KEY_bar },
3750 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3751 { SCIM_KEY_colon, SCIM_KEY_greater },
3752 { SCIM_KEY_semicolon, SCIM_KEY_less },
3753 { SCIM_KEY_equal, SCIM_KEY_parenright },
3754 { SCIM_KEY_question, SCIM_KEY_underscore },
3755 { SCIM_KEY_underscore, SCIM_KEY_question },
3756 { SCIM_KEY_currency, SCIM_KEY_dollar },
3757 { SCIM_KEY_onehalf, SCIM_KEY_asciitilde },
3758 { SCIM_KEY_Adiaeresis, SCIM_KEY_quotedbl },
3759 { SCIM_KEY_Aring, SCIM_KEY_braceleft },
3760 { SCIM_KEY_Odiaeresis, SCIM_KEY_colon },
3761 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
3762 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceright },
3765 static __Uint16Pair __us_to_swedish_shift [] = {
3766 { SCIM_KEY_quotedbl, SCIM_KEY_Adiaeresis },
3767 { SCIM_KEY_dollar, SCIM_KEY_currency },
3768 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3769 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3770 { SCIM_KEY_parenright, SCIM_KEY_equal },
3771 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3772 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
3773 { SCIM_KEY_colon, SCIM_KEY_Odiaeresis },
3774 { SCIM_KEY_less, SCIM_KEY_semicolon },
3775 { SCIM_KEY_greater, SCIM_KEY_colon },
3776 { SCIM_KEY_question, SCIM_KEY_underscore },
3777 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3778 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3779 { SCIM_KEY_underscore, SCIM_KEY_question },
3780 { SCIM_KEY_braceleft, SCIM_KEY_Aring },
3781 { SCIM_KEY_bar, SCIM_KEY_asterisk },
3782 { SCIM_KEY_braceright, SCIM_KEY_dead_circumflex },
3783 { SCIM_KEY_asciitilde, SCIM_KEY_onehalf },
3786 static __Uint16Pair __swedish_to_us_caps_shift [] = {
3787 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3788 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3789 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3790 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3791 { SCIM_KEY_asterisk, SCIM_KEY_bar },
3792 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3793 { SCIM_KEY_colon, SCIM_KEY_greater },
3794 { SCIM_KEY_semicolon, SCIM_KEY_less },
3795 { SCIM_KEY_equal, SCIM_KEY_parenright },
3796 { SCIM_KEY_question, SCIM_KEY_underscore },
3797 { SCIM_KEY_underscore, SCIM_KEY_question },
3798 { SCIM_KEY_currency, SCIM_KEY_dollar },
3799 { SCIM_KEY_onehalf, SCIM_KEY_asciitilde },
3800 { SCIM_KEY_adiaeresis, SCIM_KEY_quotedbl },
3801 { SCIM_KEY_aring, SCIM_KEY_braceleft },
3802 { SCIM_KEY_odiaeresis, SCIM_KEY_colon },
3803 { SCIM_KEY_dead_grave, SCIM_KEY_plus },
3804 { SCIM_KEY_dead_circumflex, SCIM_KEY_braceright },
3807 static __Uint16Pair __us_to_swedish_caps_shift [] = {
3808 { SCIM_KEY_quotedbl, SCIM_KEY_adiaeresis },
3809 { SCIM_KEY_dollar, SCIM_KEY_currency },
3810 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3811 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3812 { SCIM_KEY_parenright, SCIM_KEY_equal },
3813 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3814 { SCIM_KEY_plus, SCIM_KEY_dead_grave },
3815 { SCIM_KEY_colon, SCIM_KEY_odiaeresis },
3816 { SCIM_KEY_less, SCIM_KEY_semicolon },
3817 { SCIM_KEY_greater, SCIM_KEY_colon },
3818 { SCIM_KEY_question, SCIM_KEY_underscore },
3819 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3820 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3821 { SCIM_KEY_underscore, SCIM_KEY_question },
3822 { SCIM_KEY_braceleft, SCIM_KEY_aring },
3823 { SCIM_KEY_bar, SCIM_KEY_asterisk },
3824 { SCIM_KEY_braceright, SCIM_KEY_dead_circumflex },
3825 { SCIM_KEY_asciitilde, SCIM_KEY_onehalf },
3828 static __Uint16Pair __turkish_to_us_normal [] = {
3829 { SCIM_KEY_quotedbl, SCIM_KEY_grave },
3830 { SCIM_KEY_asterisk, SCIM_KEY_minus },
3831 { SCIM_KEY_comma, SCIM_KEY_backslash },
3832 { SCIM_KEY_minus, SCIM_KEY_equal },
3833 { SCIM_KEY_period, SCIM_KEY_slash },
3834 { SCIM_KEY_i, SCIM_KEY_apostrophe },
3835 { SCIM_KEY_ccedilla, SCIM_KEY_period },
3836 { SCIM_KEY_odiaeresis, SCIM_KEY_comma },
3837 { SCIM_KEY_udiaeresis, SCIM_KEY_bracketright },
3838 { SCIM_KEY_scedilla, SCIM_KEY_semicolon },
3839 { SCIM_KEY_idotless, SCIM_KEY_i },
3840 { SCIM_KEY_gbreve, SCIM_KEY_bracketleft },
3843 static __Uint16Pair __us_to_turkish_normal [] = {
3844 { SCIM_KEY_apostrophe, SCIM_KEY_i },
3845 { SCIM_KEY_comma, SCIM_KEY_odiaeresis },
3846 { SCIM_KEY_minus, SCIM_KEY_asterisk },
3847 { SCIM_KEY_period, SCIM_KEY_ccedilla },
3848 { SCIM_KEY_slash, SCIM_KEY_period },
3849 { SCIM_KEY_semicolon, SCIM_KEY_scedilla },
3850 { SCIM_KEY_equal, SCIM_KEY_minus },
3851 { SCIM_KEY_bracketleft, SCIM_KEY_gbreve },
3852 { SCIM_KEY_backslash, SCIM_KEY_comma },
3853 { SCIM_KEY_bracketright, SCIM_KEY_udiaeresis },
3854 { SCIM_KEY_grave, SCIM_KEY_quotedbl },
3855 { SCIM_KEY_i, SCIM_KEY_idotless },
3858 static __Uint16Pair __turkish_to_us_caps [] = {
3859 { SCIM_KEY_quotedbl, SCIM_KEY_grave },
3860 { SCIM_KEY_asterisk, SCIM_KEY_minus },
3861 { SCIM_KEY_comma, SCIM_KEY_backslash },
3862 { SCIM_KEY_minus, SCIM_KEY_equal },
3863 { SCIM_KEY_period, SCIM_KEY_slash },
3864 { SCIM_KEY_I, SCIM_KEY_apostrophe },
3865 { SCIM_KEY_Ccedilla, SCIM_KEY_period },
3866 { SCIM_KEY_Odiaeresis, SCIM_KEY_comma },
3867 { SCIM_KEY_Udiaeresis, SCIM_KEY_bracketright },
3868 { SCIM_KEY_Scedilla, SCIM_KEY_semicolon },
3869 { SCIM_KEY_Gbreve, SCIM_KEY_bracketleft },
3870 { SCIM_KEY_idotless, SCIM_KEY_I },
3873 static __Uint16Pair __us_to_turkish_caps [] = {
3874 { SCIM_KEY_apostrophe, SCIM_KEY_I },
3875 { SCIM_KEY_comma, SCIM_KEY_Odiaeresis },
3876 { SCIM_KEY_minus, SCIM_KEY_asterisk },
3877 { SCIM_KEY_period, SCIM_KEY_Ccedilla },
3878 { SCIM_KEY_slash, SCIM_KEY_period },
3879 { SCIM_KEY_semicolon, SCIM_KEY_Scedilla },
3880 { SCIM_KEY_equal, SCIM_KEY_minus },
3881 { SCIM_KEY_I, SCIM_KEY_idotless },
3882 { SCIM_KEY_bracketleft, SCIM_KEY_Gbreve },
3883 { SCIM_KEY_backslash, SCIM_KEY_comma },
3884 { SCIM_KEY_bracketright, SCIM_KEY_Udiaeresis },
3885 { SCIM_KEY_grave, SCIM_KEY_quotedbl },
3888 static __Uint16Pair __turkish_to_us_shift [] = {
3889 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3890 { SCIM_KEY_apostrophe, SCIM_KEY_at },
3891 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3892 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3893 { SCIM_KEY_plus, SCIM_KEY_dollar },
3894 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3895 { SCIM_KEY_colon, SCIM_KEY_question },
3896 { SCIM_KEY_semicolon, SCIM_KEY_bar },
3897 { SCIM_KEY_equal, SCIM_KEY_parenright },
3898 { SCIM_KEY_question, SCIM_KEY_underscore },
3899 { SCIM_KEY_backslash, SCIM_KEY_asciitilde },
3900 { SCIM_KEY_asciicircum, SCIM_KEY_numbersign },
3901 { SCIM_KEY_underscore, SCIM_KEY_plus },
3902 { SCIM_KEY_Ccedilla, SCIM_KEY_greater },
3903 { SCIM_KEY_Odiaeresis, SCIM_KEY_less },
3904 { SCIM_KEY_Udiaeresis, SCIM_KEY_braceright },
3905 { SCIM_KEY_Scedilla, SCIM_KEY_colon },
3906 { SCIM_KEY_Iabovedot, SCIM_KEY_quotedbl },
3907 { SCIM_KEY_Gbreve, SCIM_KEY_braceleft },
3910 static __Uint16Pair __us_to_turkish_shift [] = {
3911 { SCIM_KEY_quotedbl, SCIM_KEY_Iabovedot },
3912 { SCIM_KEY_numbersign, SCIM_KEY_asciicircum },
3913 { SCIM_KEY_dollar, SCIM_KEY_plus },
3914 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3915 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3916 { SCIM_KEY_parenright, SCIM_KEY_equal },
3917 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3918 { SCIM_KEY_plus, SCIM_KEY_underscore },
3919 { SCIM_KEY_colon, SCIM_KEY_Scedilla },
3920 { SCIM_KEY_less, SCIM_KEY_Odiaeresis },
3921 { SCIM_KEY_greater, SCIM_KEY_Ccedilla },
3922 { SCIM_KEY_question, SCIM_KEY_colon },
3923 { SCIM_KEY_at, SCIM_KEY_apostrophe },
3924 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3925 { SCIM_KEY_underscore, SCIM_KEY_question },
3926 { SCIM_KEY_braceleft, SCIM_KEY_Gbreve },
3927 { SCIM_KEY_bar, SCIM_KEY_semicolon },
3928 { SCIM_KEY_braceright, SCIM_KEY_Udiaeresis },
3929 { SCIM_KEY_asciitilde, SCIM_KEY_backslash },
3932 static __Uint16Pair __turkish_to_us_caps_shift [] = {
3933 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
3934 { SCIM_KEY_apostrophe, SCIM_KEY_at },
3935 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
3936 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
3937 { SCIM_KEY_plus, SCIM_KEY_dollar },
3938 { SCIM_KEY_slash, SCIM_KEY_ampersand },
3939 { SCIM_KEY_colon, SCIM_KEY_question },
3940 { SCIM_KEY_semicolon, SCIM_KEY_bar },
3941 { SCIM_KEY_equal, SCIM_KEY_parenright },
3942 { SCIM_KEY_question, SCIM_KEY_underscore },
3943 { SCIM_KEY_I, SCIM_KEY_i },
3944 { SCIM_KEY_backslash, SCIM_KEY_asciitilde },
3945 { SCIM_KEY_asciicircum, SCIM_KEY_numbersign },
3946 { SCIM_KEY_underscore, SCIM_KEY_plus },
3947 { SCIM_KEY_ccedilla, SCIM_KEY_greater },
3948 { SCIM_KEY_odiaeresis, SCIM_KEY_less },
3949 { SCIM_KEY_udiaeresis, SCIM_KEY_braceright },
3950 { SCIM_KEY_scedilla, SCIM_KEY_colon },
3951 { SCIM_KEY_Iabovedot, SCIM_KEY_quotedbl },
3952 { SCIM_KEY_gbreve, SCIM_KEY_braceleft },
3955 static __Uint16Pair __us_to_turkish_caps_shift [] = {
3956 { SCIM_KEY_quotedbl, SCIM_KEY_Iabovedot },
3957 { SCIM_KEY_numbersign, SCIM_KEY_asciicircum },
3958 { SCIM_KEY_dollar, SCIM_KEY_plus },
3959 { SCIM_KEY_ampersand, SCIM_KEY_slash },
3960 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
3961 { SCIM_KEY_parenright, SCIM_KEY_equal },
3962 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
3963 { SCIM_KEY_plus, SCIM_KEY_underscore },
3964 { SCIM_KEY_colon, SCIM_KEY_scedilla },
3965 { SCIM_KEY_less, SCIM_KEY_odiaeresis },
3966 { SCIM_KEY_greater, SCIM_KEY_ccedilla },
3967 { SCIM_KEY_question, SCIM_KEY_colon },
3968 { SCIM_KEY_at, SCIM_KEY_apostrophe },
3969 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
3970 { SCIM_KEY_underscore, SCIM_KEY_question },
3971 { SCIM_KEY_i, SCIM_KEY_I },
3972 { SCIM_KEY_braceleft, SCIM_KEY_gbreve },
3973 { SCIM_KEY_bar, SCIM_KEY_semicolon },
3974 { SCIM_KEY_braceright, SCIM_KEY_udiaeresis },
3975 { SCIM_KEY_asciitilde, SCIM_KEY_backslash },
3978 static __Uint16Pair __uk_to_us_normal [] = {
3979 { SCIM_KEY_numbersign, SCIM_KEY_backslash },
3982 static __Uint16Pair __us_to_uk_normal [] = {
3983 { SCIM_KEY_backslash, SCIM_KEY_numbersign },
3986 static __Uint16Pair __uk_to_us_caps [] = {
3987 { SCIM_KEY_numbersign, SCIM_KEY_backslash },
3990 static __Uint16Pair __us_to_uk_caps [] = {
3991 { SCIM_KEY_backslash, SCIM_KEY_numbersign },
3994 static __Uint16Pair __uk_to_us_shift [] = {
3995 { SCIM_KEY_quotedbl, SCIM_KEY_at },
3996 { SCIM_KEY_at, SCIM_KEY_quotedbl },
3997 { SCIM_KEY_asciitilde, SCIM_KEY_bar },
3998 { SCIM_KEY_sterling, SCIM_KEY_numbersign },
3999 { SCIM_KEY_notsign, SCIM_KEY_asciitilde },
4002 static __Uint16Pair __us_to_uk_shift [] = {
4003 { SCIM_KEY_quotedbl, SCIM_KEY_at },
4004 { SCIM_KEY_numbersign, SCIM_KEY_sterling },
4005 { SCIM_KEY_at, SCIM_KEY_quotedbl },
4006 { SCIM_KEY_bar, SCIM_KEY_asciitilde },
4007 { SCIM_KEY_asciitilde, SCIM_KEY_notsign },
4010 static __Uint16Pair __uk_to_us_caps_shift [] = {
4011 { SCIM_KEY_quotedbl, SCIM_KEY_at },
4012 { SCIM_KEY_at, SCIM_KEY_quotedbl },
4013 { SCIM_KEY_asciitilde, SCIM_KEY_bar },
4014 { SCIM_KEY_sterling, SCIM_KEY_numbersign },
4015 { SCIM_KEY_notsign, SCIM_KEY_asciitilde },
4018 static __Uint16Pair __us_to_uk_caps_shift [] = {
4019 { SCIM_KEY_quotedbl, SCIM_KEY_at },
4020 { SCIM_KEY_numbersign, SCIM_KEY_sterling },
4021 { SCIM_KEY_at, SCIM_KEY_quotedbl },
4022 { SCIM_KEY_bar, SCIM_KEY_asciitilde },
4023 { SCIM_KEY_asciitilde, SCIM_KEY_notsign },
4026 static __Uint16Pair __icelandic_to_us_normal [] = {
4027 { SCIM_KEY_apostrophe, SCIM_KEY_bracketright },
4028 { SCIM_KEY_plus, SCIM_KEY_backslash },
4029 { SCIM_KEY_minus, SCIM_KEY_equal },
4030 { SCIM_KEY_degree, SCIM_KEY_grave },
4031 { SCIM_KEY_ae, SCIM_KEY_semicolon },
4032 { SCIM_KEY_eth, SCIM_KEY_bracketleft },
4033 { SCIM_KEY_odiaeresis, SCIM_KEY_minus },
4034 { SCIM_KEY_thorn, SCIM_KEY_slash },
4035 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
4038 static __Uint16Pair __us_to_icelandic_normal [] = {
4039 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
4040 { SCIM_KEY_minus, SCIM_KEY_odiaeresis },
4041 { SCIM_KEY_slash, SCIM_KEY_thorn },
4042 { SCIM_KEY_semicolon, SCIM_KEY_ae },
4043 { SCIM_KEY_equal, SCIM_KEY_minus },
4044 { SCIM_KEY_bracketleft, SCIM_KEY_eth },
4045 { SCIM_KEY_backslash, SCIM_KEY_plus },
4046 { SCIM_KEY_bracketright, SCIM_KEY_apostrophe },
4047 { SCIM_KEY_grave, SCIM_KEY_degree },
4050 static __Uint16Pair __icelandic_to_us_caps [] = {
4051 { SCIM_KEY_apostrophe, SCIM_KEY_bracketright },
4052 { SCIM_KEY_plus, SCIM_KEY_backslash },
4053 { SCIM_KEY_minus, SCIM_KEY_equal },
4054 { SCIM_KEY_degree, SCIM_KEY_grave },
4055 { SCIM_KEY_AE, SCIM_KEY_semicolon },
4056 { SCIM_KEY_ETH, SCIM_KEY_bracketleft },
4057 { SCIM_KEY_Odiaeresis, SCIM_KEY_minus },
4058 { SCIM_KEY_THORN, SCIM_KEY_slash },
4059 { SCIM_KEY_dead_acute, SCIM_KEY_apostrophe },
4062 static __Uint16Pair __us_to_icelandic_caps [] = {
4063 { SCIM_KEY_apostrophe, SCIM_KEY_dead_acute },
4064 { SCIM_KEY_minus, SCIM_KEY_Odiaeresis },
4065 { SCIM_KEY_slash, SCIM_KEY_THORN },
4066 { SCIM_KEY_semicolon, SCIM_KEY_AE },
4067 { SCIM_KEY_equal, SCIM_KEY_minus },
4068 { SCIM_KEY_bracketleft, SCIM_KEY_ETH },
4069 { SCIM_KEY_backslash, SCIM_KEY_plus },
4070 { SCIM_KEY_bracketright, SCIM_KEY_apostrophe },
4071 { SCIM_KEY_grave, SCIM_KEY_degree },
4074 static __Uint16Pair __icelandic_to_us_shift [] = {
4075 { SCIM_KEY_quotedbl, SCIM_KEY_at },
4076 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
4077 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
4078 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
4079 { SCIM_KEY_asterisk, SCIM_KEY_bar },
4080 { SCIM_KEY_slash, SCIM_KEY_ampersand },
4081 { SCIM_KEY_colon, SCIM_KEY_greater },
4082 { SCIM_KEY_semicolon, SCIM_KEY_less },
4083 { SCIM_KEY_equal, SCIM_KEY_parenright },
4084 { SCIM_KEY_question, SCIM_KEY_braceright },
4085 { SCIM_KEY_underscore, SCIM_KEY_plus },
4086 { SCIM_KEY_diaeresis, SCIM_KEY_asciitilde },
4087 { SCIM_KEY_Adiaeresis, SCIM_KEY_quotedbl },
4088 { SCIM_KEY_AE, SCIM_KEY_colon },
4089 { SCIM_KEY_ETH, SCIM_KEY_braceleft },
4090 { SCIM_KEY_Odiaeresis, SCIM_KEY_underscore },
4091 { SCIM_KEY_THORN, SCIM_KEY_question },
4094 static __Uint16Pair __us_to_icelandic_shift [] = {
4095 { SCIM_KEY_quotedbl, SCIM_KEY_Adiaeresis },
4096 { SCIM_KEY_ampersand, SCIM_KEY_slash },
4097 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
4098 { SCIM_KEY_parenright, SCIM_KEY_equal },
4099 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
4100 { SCIM_KEY_plus, SCIM_KEY_underscore },
4101 { SCIM_KEY_colon, SCIM_KEY_AE },
4102 { SCIM_KEY_less, SCIM_KEY_semicolon },
4103 { SCIM_KEY_greater, SCIM_KEY_colon },
4104 { SCIM_KEY_question, SCIM_KEY_THORN },
4105 { SCIM_KEY_at, SCIM_KEY_quotedbl },
4106 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
4107 { SCIM_KEY_underscore, SCIM_KEY_Odiaeresis },
4108 { SCIM_KEY_braceleft, SCIM_KEY_ETH },
4109 { SCIM_KEY_bar, SCIM_KEY_asterisk },
4110 { SCIM_KEY_braceright, SCIM_KEY_question },
4111 { SCIM_KEY_asciitilde, SCIM_KEY_diaeresis },
4114 static __Uint16Pair __icelandic_to_us_caps_shift [] = {
4115 { SCIM_KEY_quotedbl, SCIM_KEY_at },
4116 { SCIM_KEY_ampersand, SCIM_KEY_asciicircum },
4117 { SCIM_KEY_parenleft, SCIM_KEY_asterisk },
4118 { SCIM_KEY_parenright, SCIM_KEY_parenleft },
4119 { SCIM_KEY_asterisk, SCIM_KEY_bar },
4120 { SCIM_KEY_slash, SCIM_KEY_ampersand },
4121 { SCIM_KEY_colon, SCIM_KEY_greater },
4122 { SCIM_KEY_semicolon, SCIM_KEY_less },
4123 { SCIM_KEY_equal, SCIM_KEY_parenright },
4124 { SCIM_KEY_question, SCIM_KEY_braceright },
4125 { SCIM_KEY_underscore, SCIM_KEY_plus },
4126 { SCIM_KEY_diaeresis, SCIM_KEY_asciitilde },
4127 { SCIM_KEY_Adiaeresis, SCIM_KEY_quotedbl },
4128 { SCIM_KEY_ae, SCIM_KEY_colon },
4129 { SCIM_KEY_eth, SCIM_KEY_braceleft },
4130 { SCIM_KEY_odiaeresis, SCIM_KEY_underscore },
4131 { SCIM_KEY_thorn, SCIM_KEY_question },
4134 static __Uint16Pair __us_to_icelandic_caps_shift [] = {
4135 { SCIM_KEY_quotedbl, SCIM_KEY_Adiaeresis },
4136 { SCIM_KEY_ampersand, SCIM_KEY_slash },
4137 { SCIM_KEY_parenleft, SCIM_KEY_parenright },
4138 { SCIM_KEY_parenright, SCIM_KEY_equal },
4139 { SCIM_KEY_asterisk, SCIM_KEY_parenleft },
4140 { SCIM_KEY_plus, SCIM_KEY_underscore },
4141 { SCIM_KEY_colon, SCIM_KEY_ae },
4142 { SCIM_KEY_less, SCIM_KEY_semicolon },
4143 { SCIM_KEY_greater, SCIM_KEY_colon },
4144 { SCIM_KEY_question, SCIM_KEY_thorn },
4145 { SCIM_KEY_at, SCIM_KEY_quotedbl },
4146 { SCIM_KEY_asciicircum, SCIM_KEY_ampersand },
4147 { SCIM_KEY_underscore, SCIM_KEY_odiaeresis },
4148 { SCIM_KEY_braceleft, SCIM_KEY_eth },
4149 { SCIM_KEY_bar, SCIM_KEY_asterisk },
4150 { SCIM_KEY_braceright, SCIM_KEY_question },
4151 { SCIM_KEY_asciitilde, SCIM_KEY_diaeresis },
4155 // KeyEvent remapping map
4156 static __KeyCodeMap __normal_map [] =
4160 { sizeof(__belgian_to_us_normal) / sizeof (__Uint16Pair), __belgian_to_us_normal },
4161 { 0, 0 }, // Croatian
4162 { sizeof(__czech_to_us_normal) / sizeof (__Uint16Pair), __czech_to_us_normal },
4163 { sizeof(__czech_qwerty_to_us_normal) / sizeof (__Uint16Pair), __czech_qwerty_to_us_normal },
4164 { sizeof(__danish_to_us_normal) / sizeof (__Uint16Pair), __danish_to_us_normal },
4166 { sizeof(__dvorak_to_us_normal) / sizeof (__Uint16Pair), __dvorak_to_us_normal },
4167 { sizeof(__estonian_to_us_normal) / sizeof (__Uint16Pair), __estonian_to_us_normal },
4168 { sizeof(__finnish_to_us_normal) / sizeof (__Uint16Pair), __finnish_to_us_normal },
4169 { sizeof(__french_to_us_normal) / sizeof (__Uint16Pair), __french_to_us_normal },
4170 { 0, 0 }, // French Canadian
4171 { sizeof(__french_switzerland_to_us_normal) / sizeof (__Uint16Pair), __french_switzerland_to_us_normal },
4172 { sizeof(__german_to_us_normal) / sizeof (__Uint16Pair), __german_to_us_normal },
4173 { sizeof(__german_deadkeys_to_us_normal) / sizeof (__Uint16Pair), __german_deadkeys_to_us_normal },
4174 { sizeof(__german_swiss_to_us_normal) / sizeof (__Uint16Pair), __german_swiss_to_us_normal },
4176 { sizeof(__hungarian_to_us_normal) / sizeof (__Uint16Pair), __hungarian_to_us_normal },
4177 { sizeof(__italian_to_us_normal) / sizeof (__Uint16Pair), __italian_to_us_normal },
4178 { sizeof(__japanese_to_us_normal) / sizeof (__Uint16Pair), __japanese_to_us_normal },
4179 { sizeof(__norwegian_to_us_normal) / sizeof (__Uint16Pair), __norwegian_to_us_normal },
4181 { sizeof(__portuguese_to_us_normal) / sizeof (__Uint16Pair), __portuguese_to_us_normal },
4182 { sizeof(__portuguese_brazil_to_us_normal) / sizeof (__Uint16Pair), __portuguese_brazil_to_us_normal },
4183 { sizeof(__portuguese_brazil_us_accents_to_us_normal) / sizeof (__Uint16Pair), __portuguese_brazil_us_accents_to_us_normal },
4184 { 0, 0 }, // Russian
4185 { sizeof(__slovak_to_us_normal) / sizeof (__Uint16Pair), __slovak_to_us_normal },
4186 { sizeof(__slovak_qwerty_to_us_normal) / sizeof (__Uint16Pair), __slovak_qwerty_to_us_normal },
4187 { 0, 0 }, // Slovene
4188 { sizeof(__spanish_to_us_normal) / sizeof (__Uint16Pair), __spanish_to_us_normal },
4189 { sizeof(__spanish_cp850_to_us_normal) / sizeof (__Uint16Pair), __spanish_cp850_to_us_normal },
4190 { sizeof(__spanish_latin_america_to_us_normal) / sizeof (__Uint16Pair), __spanish_latin_america_to_us_normal },
4191 { sizeof(__swedish_to_us_normal) / sizeof (__Uint16Pair), __swedish_to_us_normal },
4192 { sizeof(__turkish_to_us_normal) / sizeof (__Uint16Pair), __turkish_to_us_normal },
4193 { sizeof(__uk_to_us_normal) / sizeof (__Uint16Pair), __uk_to_us_normal },
4194 { sizeof(__icelandic_to_us_normal) / sizeof (__Uint16Pair), __icelandic_to_us_normal },
4195 { 0, 0 }, // Icelandic
4196 { 0, 0 }, // Ukrainian
4199 static __KeyCodeMap __normal_invert_map [] =
4203 { sizeof(__us_to_belgian_normal) / sizeof (__Uint16Pair), __us_to_belgian_normal },
4204 { 0, 0 }, // Croatian
4205 { sizeof(__us_to_czech_normal) / sizeof (__Uint16Pair), __us_to_czech_normal },
4206 { sizeof(__us_to_czech_qwerty_normal) / sizeof (__Uint16Pair), __us_to_czech_qwerty_normal },
4207 { sizeof(__us_to_danish_normal) / sizeof (__Uint16Pair), __us_to_danish_normal },
4209 { sizeof(__us_to_dvorak_normal) / sizeof (__Uint16Pair), __us_to_dvorak_normal },
4210 { sizeof(__us_to_estonian_normal) / sizeof (__Uint16Pair), __us_to_estonian_normal },
4211 { sizeof(__us_to_finnish_normal) / sizeof (__Uint16Pair), __us_to_finnish_normal },
4212 { sizeof(__us_to_french_normal) / sizeof (__Uint16Pair), __us_to_french_normal },
4213 { 0, 0 }, // French Canadian
4214 { sizeof(__us_to_french_switzerland_normal) / sizeof (__Uint16Pair), __us_to_french_switzerland_normal },
4215 { sizeof(__us_to_german_normal) / sizeof (__Uint16Pair), __us_to_german_normal },
4216 { sizeof(__us_to_german_deadkeys_normal) / sizeof (__Uint16Pair), __us_to_german_deadkeys_normal },
4217 { sizeof(__us_to_german_swiss_normal) / sizeof (__Uint16Pair), __us_to_german_swiss_normal },
4219 { sizeof(__us_to_hungarian_normal) / sizeof (__Uint16Pair), __us_to_hungarian_normal },
4220 { sizeof(__us_to_italian_normal) / sizeof (__Uint16Pair), __us_to_italian_normal },
4221 { sizeof(__us_to_japanese_normal) / sizeof (__Uint16Pair), __us_to_japanese_normal },
4222 { sizeof(__us_to_norwegian_normal) / sizeof (__Uint16Pair), __us_to_norwegian_normal },
4224 { sizeof(__us_to_portuguese_normal) / sizeof (__Uint16Pair), __us_to_portuguese_normal },
4225 { sizeof(__us_to_portuguese_brazil_normal) / sizeof (__Uint16Pair), __us_to_portuguese_brazil_normal },
4226 { sizeof(__us_to_portuguese_brazil_us_accents_normal) / sizeof (__Uint16Pair), __us_to_portuguese_brazil_us_accents_normal },
4227 { 0, 0 }, // Russian
4228 { sizeof(__us_to_slovak_normal) / sizeof (__Uint16Pair), __us_to_slovak_normal },
4229 { sizeof(__us_to_slovak_qwerty_normal) / sizeof (__Uint16Pair), __us_to_slovak_qwerty_normal },
4230 { 0, 0 }, // Slovene
4231 { sizeof(__us_to_spanish_normal) / sizeof (__Uint16Pair), __us_to_spanish_normal },
4232 { sizeof(__us_to_spanish_cp850_normal) / sizeof (__Uint16Pair), __us_to_spanish_cp850_normal },
4233 { sizeof(__us_to_spanish_latin_america_normal) / sizeof (__Uint16Pair), __us_to_spanish_latin_america_normal },
4234 { sizeof(__us_to_swedish_normal) / sizeof (__Uint16Pair), __us_to_swedish_normal },
4235 { sizeof(__us_to_turkish_normal) / sizeof (__Uint16Pair), __us_to_turkish_normal },
4236 { sizeof(__us_to_uk_normal) / sizeof (__Uint16Pair), __us_to_uk_normal },
4237 { sizeof(__us_to_icelandic_normal) / sizeof (__Uint16Pair), __us_to_icelandic_normal },
4238 { 0, 0 }, // Icelandic
4239 { 0, 0 }, // Ukrainian
4242 static __KeyCodeMap __caps_map [] =
4246 { sizeof(__belgian_to_us_caps) / sizeof (__Uint16Pair), __belgian_to_us_caps },
4247 { 0, 0 }, // Croatian
4248 { sizeof(__czech_to_us_caps) / sizeof (__Uint16Pair), __czech_to_us_caps },
4249 { sizeof(__czech_qwerty_to_us_caps) / sizeof (__Uint16Pair), __czech_qwerty_to_us_caps },
4250 { sizeof(__danish_to_us_caps) / sizeof (__Uint16Pair), __danish_to_us_caps },
4252 { sizeof(__dvorak_to_us_caps) / sizeof (__Uint16Pair), __dvorak_to_us_caps },
4253 { sizeof(__estonian_to_us_caps) / sizeof (__Uint16Pair), __estonian_to_us_caps },
4254 { sizeof(__finnish_to_us_caps) / sizeof (__Uint16Pair), __finnish_to_us_caps },
4255 { sizeof(__french_to_us_caps) / sizeof (__Uint16Pair), __french_to_us_caps },
4256 { 0, 0 }, // French Canadian
4257 { sizeof(__french_switzerland_to_us_caps) / sizeof (__Uint16Pair), __french_switzerland_to_us_caps },
4258 { sizeof(__german_to_us_caps) / sizeof (__Uint16Pair), __german_to_us_caps },
4259 { sizeof(__german_deadkeys_to_us_caps) / sizeof (__Uint16Pair), __german_deadkeys_to_us_caps },
4260 { sizeof(__german_swiss_to_us_caps) / sizeof (__Uint16Pair), __german_swiss_to_us_caps },
4262 { sizeof(__hungarian_to_us_caps) / sizeof (__Uint16Pair), __hungarian_to_us_caps },
4263 { sizeof(__italian_to_us_caps) / sizeof (__Uint16Pair), __italian_to_us_caps },
4264 { sizeof(__japanese_to_us_caps) / sizeof (__Uint16Pair), __japanese_to_us_caps },
4265 { sizeof(__norwegian_to_us_caps) / sizeof (__Uint16Pair), __norwegian_to_us_caps },
4267 { sizeof(__portuguese_to_us_caps) / sizeof (__Uint16Pair), __portuguese_to_us_caps },
4268 { sizeof(__portuguese_brazil_to_us_caps) / sizeof (__Uint16Pair), __portuguese_brazil_to_us_caps },
4269 { sizeof(__portuguese_brazil_us_accents_to_us_caps) / sizeof (__Uint16Pair), __portuguese_brazil_us_accents_to_us_caps },
4270 { 0, 0 }, // Russian
4271 { sizeof(__slovak_to_us_caps) / sizeof (__Uint16Pair), __slovak_to_us_caps },
4272 { sizeof(__slovak_qwerty_to_us_caps) / sizeof (__Uint16Pair), __slovak_qwerty_to_us_caps },
4273 { 0, 0 }, // Slovene
4274 { sizeof(__spanish_to_us_caps) / sizeof (__Uint16Pair), __spanish_to_us_caps },
4275 { sizeof(__spanish_cp850_to_us_caps) / sizeof (__Uint16Pair), __spanish_cp850_to_us_caps },
4276 { sizeof(__spanish_latin_america_to_us_caps) / sizeof (__Uint16Pair), __spanish_latin_america_to_us_caps },
4277 { sizeof(__swedish_to_us_caps) / sizeof (__Uint16Pair), __swedish_to_us_caps },
4278 { sizeof(__turkish_to_us_caps) / sizeof (__Uint16Pair), __turkish_to_us_caps },
4279 { sizeof(__uk_to_us_caps) / sizeof (__Uint16Pair), __uk_to_us_caps },
4280 { sizeof(__icelandic_to_us_caps) / sizeof (__Uint16Pair), __icelandic_to_us_caps },
4281 { 0, 0 }, // Icelandic
4282 { 0, 0 }, // Ukrainian
4285 static __KeyCodeMap __caps_invert_map [] =
4289 { sizeof(__us_to_belgian_caps) / sizeof (__Uint16Pair), __us_to_belgian_caps },
4290 { 0, 0 }, // Croatian
4291 { sizeof(__us_to_czech_caps) / sizeof (__Uint16Pair), __us_to_czech_caps },
4292 { sizeof(__us_to_czech_qwerty_caps) / sizeof (__Uint16Pair), __us_to_czech_qwerty_caps },
4293 { sizeof(__us_to_danish_caps) / sizeof (__Uint16Pair), __us_to_danish_caps },
4295 { sizeof(__us_to_dvorak_caps) / sizeof (__Uint16Pair), __us_to_dvorak_caps },
4296 { sizeof(__us_to_estonian_caps) / sizeof (__Uint16Pair), __us_to_estonian_caps },
4297 { sizeof(__us_to_finnish_caps) / sizeof (__Uint16Pair), __us_to_finnish_caps },
4298 { sizeof(__us_to_french_caps) / sizeof (__Uint16Pair), __us_to_french_caps },
4299 { 0, 0 }, // French Canadian
4300 { sizeof(__us_to_french_switzerland_caps) / sizeof (__Uint16Pair), __us_to_french_switzerland_caps },
4301 { sizeof(__us_to_german_caps) / sizeof (__Uint16Pair), __us_to_german_caps },
4302 { sizeof(__us_to_german_deadkeys_caps) / sizeof (__Uint16Pair), __us_to_german_deadkeys_caps },
4303 { sizeof(__us_to_german_swiss_caps) / sizeof (__Uint16Pair), __us_to_german_swiss_caps },
4305 { sizeof(__us_to_hungarian_caps) / sizeof (__Uint16Pair), __us_to_hungarian_caps },
4306 { sizeof(__us_to_italian_caps) / sizeof (__Uint16Pair), __us_to_italian_caps },
4307 { sizeof(__us_to_japanese_caps) / sizeof (__Uint16Pair), __us_to_japanese_caps },
4308 { sizeof(__us_to_norwegian_caps) / sizeof (__Uint16Pair), __us_to_norwegian_caps },
4310 { sizeof(__us_to_portuguese_caps) / sizeof (__Uint16Pair), __us_to_portuguese_caps },
4311 { sizeof(__us_to_portuguese_brazil_caps) / sizeof (__Uint16Pair), __us_to_portuguese_brazil_caps },
4312 { sizeof(__us_to_portuguese_brazil_us_accents_caps) / sizeof (__Uint16Pair), __us_to_portuguese_brazil_us_accents_caps },
4313 { 0, 0 }, // Russian
4314 { sizeof(__us_to_slovak_caps) / sizeof (__Uint16Pair), __us_to_slovak_caps },
4315 { sizeof(__us_to_slovak_qwerty_caps) / sizeof (__Uint16Pair), __us_to_slovak_qwerty_caps },
4316 { 0, 0 }, // Slovene
4317 { sizeof(__us_to_spanish_caps) / sizeof (__Uint16Pair), __us_to_spanish_caps },
4318 { sizeof(__us_to_spanish_cp850_caps) / sizeof (__Uint16Pair), __us_to_spanish_cp850_caps },
4319 { sizeof(__us_to_spanish_latin_america_caps) / sizeof (__Uint16Pair), __us_to_spanish_latin_america_caps },
4320 { sizeof(__us_to_swedish_caps) / sizeof (__Uint16Pair), __us_to_swedish_caps },
4321 { sizeof(__us_to_turkish_caps) / sizeof (__Uint16Pair), __us_to_turkish_caps },
4322 { sizeof(__us_to_uk_caps) / sizeof (__Uint16Pair), __us_to_uk_caps },
4323 { sizeof(__us_to_icelandic_caps) / sizeof (__Uint16Pair), __us_to_icelandic_caps },
4324 { 0, 0 }, // Icelandic
4325 { 0, 0 }, // Ukrainian
4328 static __KeyCodeMap __shift_map [] =
4332 { sizeof(__belgian_to_us_shift) / sizeof (__Uint16Pair), __belgian_to_us_shift },
4333 { 0, 0 }, // Croatian
4334 { sizeof(__czech_to_us_shift) / sizeof (__Uint16Pair), __czech_to_us_shift },
4335 { sizeof(__czech_qwerty_to_us_shift) / sizeof (__Uint16Pair), __czech_qwerty_to_us_shift },
4336 { sizeof(__danish_to_us_shift) / sizeof (__Uint16Pair), __danish_to_us_shift },
4338 { sizeof(__dvorak_to_us_shift) / sizeof (__Uint16Pair), __dvorak_to_us_shift },
4339 { sizeof(__estonian_to_us_shift) / sizeof (__Uint16Pair), __estonian_to_us_shift },
4340 { sizeof(__finnish_to_us_shift) / sizeof (__Uint16Pair), __finnish_to_us_shift },
4341 { sizeof(__french_to_us_shift) / sizeof (__Uint16Pair), __french_to_us_shift },
4342 { 0, 0 }, // French Canadian
4343 { sizeof(__french_switzerland_to_us_shift) / sizeof (__Uint16Pair), __french_switzerland_to_us_shift },
4344 { sizeof(__german_to_us_shift) / sizeof (__Uint16Pair), __german_to_us_shift },
4345 { sizeof(__german_deadkeys_to_us_shift) / sizeof (__Uint16Pair), __german_deadkeys_to_us_shift },
4346 { sizeof(__german_swiss_to_us_shift) / sizeof (__Uint16Pair), __german_swiss_to_us_shift },
4348 { sizeof(__hungarian_to_us_shift) / sizeof (__Uint16Pair), __hungarian_to_us_shift },
4349 { sizeof(__italian_to_us_shift) / sizeof (__Uint16Pair), __italian_to_us_shift },
4350 { sizeof(__japanese_to_us_shift) / sizeof (__Uint16Pair), __japanese_to_us_shift },
4351 { sizeof(__norwegian_to_us_shift) / sizeof (__Uint16Pair), __norwegian_to_us_shift },
4353 { sizeof(__portuguese_to_us_shift) / sizeof (__Uint16Pair), __portuguese_to_us_shift },
4354 { sizeof(__portuguese_brazil_to_us_shift) / sizeof (__Uint16Pair), __portuguese_brazil_to_us_shift },
4355 { sizeof(__portuguese_brazil_us_accents_to_us_shift) / sizeof (__Uint16Pair), __portuguese_brazil_us_accents_to_us_shift },
4356 { 0, 0 }, // Russian
4357 { sizeof(__slovak_to_us_shift) / sizeof (__Uint16Pair), __slovak_to_us_shift },
4358 { sizeof(__slovak_qwerty_to_us_shift) / sizeof (__Uint16Pair), __slovak_qwerty_to_us_shift },
4359 { 0, 0 }, // Slovene
4360 { sizeof(__spanish_to_us_shift) / sizeof (__Uint16Pair), __spanish_to_us_shift },
4361 { sizeof(__spanish_cp850_to_us_shift) / sizeof (__Uint16Pair), __spanish_cp850_to_us_shift },
4362 { sizeof(__spanish_latin_america_to_us_shift) / sizeof (__Uint16Pair), __spanish_latin_america_to_us_shift },
4363 { sizeof(__swedish_to_us_shift) / sizeof (__Uint16Pair), __swedish_to_us_shift },
4364 { sizeof(__turkish_to_us_shift) / sizeof (__Uint16Pair), __turkish_to_us_shift },
4365 { sizeof(__uk_to_us_shift) / sizeof (__Uint16Pair), __uk_to_us_shift },
4366 { sizeof(__icelandic_to_us_shift) / sizeof (__Uint16Pair), __icelandic_to_us_shift },
4367 { 0, 0 }, // Icelandic
4368 { 0, 0 }, // Ukrainian
4371 static __KeyCodeMap __shift_invert_map [] =
4375 { sizeof(__us_to_belgian_shift) / sizeof (__Uint16Pair), __us_to_belgian_shift },
4376 { 0, 0 }, // Croatian
4377 { sizeof(__us_to_czech_shift) / sizeof (__Uint16Pair), __us_to_czech_shift },
4378 { sizeof(__us_to_czech_qwerty_shift) / sizeof (__Uint16Pair), __us_to_czech_qwerty_shift },
4379 { sizeof(__us_to_danish_shift) / sizeof (__Uint16Pair), __us_to_danish_shift },
4381 { sizeof(__us_to_dvorak_shift) / sizeof (__Uint16Pair), __us_to_dvorak_shift },
4382 { sizeof(__us_to_estonian_shift) / sizeof (__Uint16Pair), __us_to_estonian_shift },
4383 { sizeof(__us_to_finnish_shift) / sizeof (__Uint16Pair), __us_to_finnish_shift },
4384 { sizeof(__us_to_french_shift) / sizeof (__Uint16Pair), __us_to_french_shift },
4385 { 0, 0 }, // French Canadian
4386 { sizeof(__us_to_french_switzerland_shift) / sizeof (__Uint16Pair), __us_to_french_switzerland_shift },
4387 { sizeof(__us_to_german_shift) / sizeof (__Uint16Pair), __us_to_german_shift },
4388 { sizeof(__us_to_german_deadkeys_shift) / sizeof (__Uint16Pair), __us_to_german_deadkeys_shift },
4389 { sizeof(__us_to_german_swiss_shift) / sizeof (__Uint16Pair), __us_to_german_swiss_shift },
4391 { sizeof(__us_to_hungarian_shift) / sizeof (__Uint16Pair), __us_to_hungarian_shift },
4392 { sizeof(__us_to_italian_shift) / sizeof (__Uint16Pair), __us_to_italian_shift },
4393 { sizeof(__us_to_japanese_shift) / sizeof (__Uint16Pair), __us_to_japanese_shift },
4394 { sizeof(__us_to_norwegian_shift) / sizeof (__Uint16Pair), __us_to_norwegian_shift },
4396 { sizeof(__us_to_portuguese_shift) / sizeof (__Uint16Pair), __us_to_portuguese_shift },
4397 { sizeof(__us_to_portuguese_brazil_shift) / sizeof (__Uint16Pair), __us_to_portuguese_brazil_shift },
4398 { sizeof(__us_to_portuguese_brazil_us_accents_shift) / sizeof (__Uint16Pair), __us_to_portuguese_brazil_us_accents_shift },
4399 { 0, 0 }, // Russian
4400 { sizeof(__us_to_slovak_shift) / sizeof (__Uint16Pair), __us_to_slovak_shift },
4401 { sizeof(__us_to_slovak_qwerty_shift) / sizeof (__Uint16Pair), __us_to_slovak_qwerty_shift },
4402 { 0, 0 }, // Slovene
4403 { sizeof(__us_to_spanish_shift) / sizeof (__Uint16Pair), __us_to_spanish_shift },
4404 { sizeof(__us_to_spanish_cp850_shift) / sizeof (__Uint16Pair), __us_to_spanish_cp850_shift },
4405 { sizeof(__us_to_spanish_latin_america_shift) / sizeof (__Uint16Pair), __us_to_spanish_latin_america_shift },
4406 { sizeof(__us_to_swedish_shift) / sizeof (__Uint16Pair), __us_to_swedish_shift },
4407 { sizeof(__us_to_turkish_shift) / sizeof (__Uint16Pair), __us_to_turkish_shift },
4408 { sizeof(__us_to_uk_shift) / sizeof (__Uint16Pair), __us_to_uk_shift },
4409 { sizeof(__us_to_icelandic_shift) / sizeof (__Uint16Pair), __us_to_icelandic_shift },
4410 { 0, 0 }, // Icelandic
4411 { 0, 0 }, // Ukrainian
4414 static __KeyCodeMap __caps_shift_map [] =
4418 { sizeof(__belgian_to_us_caps_shift) / sizeof (__Uint16Pair), __belgian_to_us_caps_shift },
4419 { 0, 0 }, // Croatian
4420 { sizeof(__czech_to_us_caps_shift) / sizeof (__Uint16Pair), __czech_to_us_caps_shift },
4421 { sizeof(__czech_qwerty_to_us_caps_shift) / sizeof (__Uint16Pair), __czech_qwerty_to_us_caps_shift },
4422 { sizeof(__danish_to_us_caps_shift) / sizeof (__Uint16Pair), __danish_to_us_caps_shift },
4424 { sizeof(__dvorak_to_us_caps_shift) / sizeof (__Uint16Pair), __dvorak_to_us_caps_shift },
4425 { sizeof(__estonian_to_us_caps_shift) / sizeof (__Uint16Pair), __estonian_to_us_caps_shift },
4426 { sizeof(__finnish_to_us_caps_shift) / sizeof (__Uint16Pair), __finnish_to_us_caps_shift },
4427 { sizeof(__french_to_us_caps_shift) / sizeof (__Uint16Pair), __french_to_us_caps_shift },
4428 { 0, 0 }, // French Canadian
4429 { sizeof(__french_switzerland_to_us_caps_shift) / sizeof (__Uint16Pair), __french_switzerland_to_us_caps_shift },
4430 { sizeof(__german_to_us_caps_shift) / sizeof (__Uint16Pair), __german_to_us_caps_shift },
4431 { sizeof(__german_deadkeys_to_us_caps_shift) / sizeof (__Uint16Pair), __german_deadkeys_to_us_caps_shift },
4432 { sizeof(__german_swiss_to_us_caps_shift) / sizeof (__Uint16Pair), __german_swiss_to_us_caps_shift },
4434 { sizeof(__hungarian_to_us_caps_shift) / sizeof (__Uint16Pair), __hungarian_to_us_caps_shift },
4435 { sizeof(__italian_to_us_caps_shift) / sizeof (__Uint16Pair), __italian_to_us_caps_shift },
4436 { sizeof(__japanese_to_us_caps_shift) / sizeof (__Uint16Pair), __japanese_to_us_caps_shift },
4437 { sizeof(__norwegian_to_us_caps_shift) / sizeof (__Uint16Pair), __norwegian_to_us_caps_shift },
4439 { sizeof(__portuguese_to_us_caps_shift) / sizeof (__Uint16Pair), __portuguese_to_us_caps_shift },
4440 { sizeof(__portuguese_brazil_to_us_caps_shift) / sizeof (__Uint16Pair), __portuguese_brazil_to_us_caps_shift },
4441 { sizeof(__portuguese_brazil_us_accents_to_us_caps_shift) / sizeof (__Uint16Pair), __portuguese_brazil_us_accents_to_us_caps_shift },
4442 { 0, 0 }, // Russian
4443 { sizeof(__slovak_to_us_caps_shift) / sizeof (__Uint16Pair), __slovak_to_us_caps_shift },
4444 { sizeof(__slovak_qwerty_to_us_caps_shift) / sizeof (__Uint16Pair), __slovak_qwerty_to_us_caps_shift },
4445 { 0, 0 }, // Slovene
4446 { sizeof(__spanish_to_us_caps_shift) / sizeof (__Uint16Pair), __spanish_to_us_caps_shift },
4447 { sizeof(__spanish_cp850_to_us_caps_shift) / sizeof (__Uint16Pair), __spanish_cp850_to_us_caps_shift },
4448 { sizeof(__spanish_latin_america_to_us_caps_shift) / sizeof (__Uint16Pair), __spanish_latin_america_to_us_caps_shift },
4449 { sizeof(__swedish_to_us_caps_shift) / sizeof (__Uint16Pair), __swedish_to_us_caps_shift },
4450 { sizeof(__turkish_to_us_caps_shift) / sizeof (__Uint16Pair), __turkish_to_us_caps_shift },
4451 { sizeof(__uk_to_us_caps_shift) / sizeof (__Uint16Pair), __uk_to_us_caps_shift },
4452 { sizeof(__icelandic_to_us_caps_shift) / sizeof (__Uint16Pair), __icelandic_to_us_caps_shift },
4453 { 0, 0 }, // Icelandic
4454 { 0, 0 }, // Ukrainian
4457 static __KeyCodeMap __caps_shift_invert_map [] =
4461 { sizeof(__us_to_belgian_caps_shift) / sizeof (__Uint16Pair), __us_to_belgian_caps_shift },
4462 { 0, 0 }, // Croatian
4463 { sizeof(__us_to_czech_caps_shift) / sizeof (__Uint16Pair), __us_to_czech_caps_shift },
4464 { sizeof(__us_to_czech_qwerty_caps_shift) / sizeof (__Uint16Pair), __us_to_czech_qwerty_caps_shift },
4465 { sizeof(__us_to_danish_caps_shift) / sizeof (__Uint16Pair), __us_to_danish_caps_shift },
4467 { sizeof(__us_to_dvorak_caps_shift) / sizeof (__Uint16Pair), __us_to_dvorak_caps_shift },
4468 { sizeof(__us_to_estonian_caps_shift) / sizeof (__Uint16Pair), __us_to_estonian_caps_shift },
4469 { sizeof(__us_to_finnish_caps_shift) / sizeof (__Uint16Pair), __us_to_finnish_caps_shift },
4470 { sizeof(__us_to_french_caps_shift) / sizeof (__Uint16Pair), __us_to_french_caps_shift },
4471 { 0, 0 }, // French Canadian
4472 { sizeof(__us_to_french_switzerland_caps_shift) / sizeof (__Uint16Pair), __us_to_french_switzerland_caps_shift },
4473 { sizeof(__us_to_german_caps_shift) / sizeof (__Uint16Pair), __us_to_german_caps_shift },
4474 { sizeof(__us_to_german_deadkeys_caps_shift) / sizeof (__Uint16Pair), __us_to_german_deadkeys_caps_shift },
4475 { sizeof(__us_to_german_swiss_caps_shift) / sizeof (__Uint16Pair), __us_to_german_swiss_caps_shift },
4477 { sizeof(__us_to_hungarian_caps_shift) / sizeof (__Uint16Pair), __us_to_hungarian_caps_shift },
4478 { sizeof(__us_to_italian_caps_shift) / sizeof (__Uint16Pair), __us_to_italian_caps_shift },
4479 { sizeof(__us_to_japanese_caps_shift) / sizeof (__Uint16Pair), __us_to_japanese_caps_shift },
4480 { sizeof(__us_to_norwegian_caps_shift) / sizeof (__Uint16Pair), __us_to_norwegian_caps_shift },
4482 { sizeof(__us_to_portuguese_caps_shift) / sizeof (__Uint16Pair), __us_to_portuguese_caps_shift },
4483 { sizeof(__us_to_portuguese_brazil_caps_shift) / sizeof (__Uint16Pair), __us_to_portuguese_brazil_caps_shift },
4484 { sizeof(__us_to_portuguese_brazil_us_accents_caps_shift) / sizeof (__Uint16Pair), __us_to_portuguese_brazil_us_accents_caps_shift },
4485 { 0, 0 }, // Russian
4486 { sizeof(__us_to_slovak_caps_shift) / sizeof (__Uint16Pair), __us_to_slovak_caps_shift },
4487 { sizeof(__us_to_slovak_qwerty_caps_shift) / sizeof (__Uint16Pair), __us_to_slovak_qwerty_caps_shift },
4488 { 0, 0 }, // Slovene
4489 { sizeof(__us_to_spanish_caps_shift) / sizeof (__Uint16Pair), __us_to_spanish_caps_shift },
4490 { sizeof(__us_to_spanish_cp850_caps_shift) / sizeof (__Uint16Pair), __us_to_spanish_cp850_caps_shift },
4491 { sizeof(__us_to_spanish_latin_america_caps_shift) / sizeof (__Uint16Pair), __us_to_spanish_latin_america_caps_shift },
4492 { sizeof(__us_to_swedish_caps_shift) / sizeof (__Uint16Pair), __us_to_swedish_caps_shift },
4493 { sizeof(__us_to_turkish_caps_shift) / sizeof (__Uint16Pair), __us_to_turkish_caps_shift },
4494 { sizeof(__us_to_uk_caps_shift) / sizeof (__Uint16Pair), __us_to_uk_caps_shift },
4495 { sizeof(__us_to_icelandic_caps_shift) / sizeof (__Uint16Pair), __us_to_icelandic_caps_shift },
4496 { 0, 0 }, // Icelandic
4497 { 0, 0 }, // Ukrainian
4500 // Keyboard Layout string IDs sorted by code.
4501 static __KeyName __scim_keyboard_layout_ids_by_code [] =
4503 {SCIM_KEYBOARD_Unknown ,"Unknown"},
4504 {SCIM_KEYBOARD_Default ,"US_Default"},
4505 {SCIM_KEYBOARD_Belgian ,"Belgian"},
4506 {SCIM_KEYBOARD_Croatian ,"Croatian"},
4507 {SCIM_KEYBOARD_Czech ,"Czech"},
4508 {SCIM_KEYBOARD_Czech_Qwerty ,"Czech_Qwerty"},
4509 {SCIM_KEYBOARD_Danish ,"Danish"},
4510 {SCIM_KEYBOARD_Dutch ,"Dutch"},
4511 {SCIM_KEYBOARD_Dvorak ,"Dvorak"},
4512 {SCIM_KEYBOARD_Estonian ,"Estonian"},
4513 {SCIM_KEYBOARD_Finnish ,"Finnish"},
4514 {SCIM_KEYBOARD_French ,"French"},
4515 {SCIM_KEYBOARD_French_Canadian ,"French_Canadian"},
4516 {SCIM_KEYBOARD_French_Switzerland ,"French_Switzerland"},
4517 {SCIM_KEYBOARD_German ,"German"},
4518 {SCIM_KEYBOARD_German_Deadkeys ,"German_Deadkeys"},
4519 {SCIM_KEYBOARD_German_Swiss ,"German_Swiss"},
4520 {SCIM_KEYBOARD_Greek ,"Greek"},
4521 {SCIM_KEYBOARD_Hungarian ,"Hungarian"},
4522 {SCIM_KEYBOARD_Italian ,"Italian"},
4523 {SCIM_KEYBOARD_Japanese ,"Japanese"},
4524 {SCIM_KEYBOARD_Norwegian ,"Norwegian"},
4525 {SCIM_KEYBOARD_Polish ,"Polish"},
4526 {SCIM_KEYBOARD_Portuguese ,"Portuguese"},
4527 {SCIM_KEYBOARD_Portuguese_Brazil ,"Portuguese_Brazil"},
4528 {SCIM_KEYBOARD_Portuguese_Brazil_US_Accents ,"Portuguese_Brazil_US_Accents"},
4529 {SCIM_KEYBOARD_Russian ,"Russian"},
4530 {SCIM_KEYBOARD_Slovak ,"Slovak"},
4531 {SCIM_KEYBOARD_Slovak_Qwerty ,"Slovak_Qwerty"},
4532 {SCIM_KEYBOARD_Slovene ,"Slovene"},
4533 {SCIM_KEYBOARD_Spanish ,"Spanish"},
4534 {SCIM_KEYBOARD_Spanish_CP850 ,"Spanish_CP850"},
4535 {SCIM_KEYBOARD_Spanish_Latin_America ,"Spanish_Latin_America"},
4536 {SCIM_KEYBOARD_Swedish ,"Swedish"},
4537 {SCIM_KEYBOARD_Turkish ,"Turkish"},
4538 {SCIM_KEYBOARD_UK ,"UK"},
4539 {SCIM_KEYBOARD_Icelandic ,"Icelandic"},
4540 {SCIM_KEYBOARD_Lithuanian ,"Lithuanian"},
4541 {SCIM_KEYBOARD_Ukrainian ,"Ukrainian"},
4544 // Keyboard Layout string IDs sorted by name.
4545 static __KeyName __scim_keyboard_layout_ids_by_name [] =
4547 {SCIM_KEYBOARD_Unknown ,"Unknown"},
4548 {SCIM_KEYBOARD_Default ,"US_Default"},
4549 {SCIM_KEYBOARD_Belgian ,"Belgian"},
4550 {SCIM_KEYBOARD_Croatian ,"Croatian"},
4551 {SCIM_KEYBOARD_Czech ,"Czech"},
4552 {SCIM_KEYBOARD_Czech_Qwerty ,"Czech_Qwerty"},
4553 {SCIM_KEYBOARD_Danish ,"Danish"},
4554 {SCIM_KEYBOARD_Dutch ,"Dutch"},
4555 {SCIM_KEYBOARD_Dvorak ,"Dvorak"},
4556 {SCIM_KEYBOARD_Estonian ,"Estonian"},
4557 {SCIM_KEYBOARD_Finnish ,"Finnish"},
4558 {SCIM_KEYBOARD_French ,"French"},
4559 {SCIM_KEYBOARD_French_Canadian ,"French_Canadian"},
4560 {SCIM_KEYBOARD_French_Switzerland ,"French_Switzerland"},
4561 {SCIM_KEYBOARD_German ,"German"},
4562 {SCIM_KEYBOARD_German_Deadkeys ,"German_Deadkeys"},
4563 {SCIM_KEYBOARD_German_Swiss ,"German_Swiss"},
4564 {SCIM_KEYBOARD_Greek ,"Greek"},
4565 {SCIM_KEYBOARD_Hungarian ,"Hungarian"},
4566 {SCIM_KEYBOARD_Icelandic ,"Icelandic"},
4567 {SCIM_KEYBOARD_Italian ,"Italian"},
4568 {SCIM_KEYBOARD_Japanese ,"Japanese"},
4569 {SCIM_KEYBOARD_Lithuanian ,"Lithuanian"},
4570 {SCIM_KEYBOARD_Norwegian ,"Norwegian"},
4571 {SCIM_KEYBOARD_Polish ,"Polish"},
4572 {SCIM_KEYBOARD_Portuguese ,"Portuguese"},
4573 {SCIM_KEYBOARD_Portuguese_Brazil ,"Portuguese_Brazil"},
4574 {SCIM_KEYBOARD_Portuguese_Brazil_US_Accents ,"Portuguese_Brazil_US_Accents"},
4575 {SCIM_KEYBOARD_Russian ,"Russian"},
4576 {SCIM_KEYBOARD_Slovak ,"Slovak"},
4577 {SCIM_KEYBOARD_Slovak_Qwerty ,"Slovak_Qwerty"},
4578 {SCIM_KEYBOARD_Slovene ,"Slovene"},
4579 {SCIM_KEYBOARD_Spanish ,"Spanish"},
4580 {SCIM_KEYBOARD_Spanish_CP850 ,"Spanish_CP850"},
4581 {SCIM_KEYBOARD_Spanish_Latin_America ,"Spanish_Latin_America"},
4582 {SCIM_KEYBOARD_Swedish ,"Swedish"},
4583 {SCIM_KEYBOARD_Turkish ,"Turkish"},
4584 {SCIM_KEYBOARD_UK ,"UK"},
4585 {SCIM_KEYBOARD_Ukrainian ,"Ukrainian"},
4589 // Keyboard Layout display names.
4590 static const char *__scim_keyboard_layout_names [] =
4597 N_("Czech (qwerty)"),
4604 N_("French (Canadian)"),
4605 N_("French (Switzerland)"),
4607 N_("German (with deadkeys)"),
4608 N_("German (Swiss)"),
4616 N_("Portuguese (Brazil)"),
4617 N_("Portuguese (Brazil US accents)"),
4620 N_("Slovak (qwerty)"),
4623 N_("Spanish (CP 850)"),
4624 N_("Spanish (Latin America)"),
4634 vi:ts=4:nowrap:ai:expandtab