1# Copyright (C) 2010 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#      http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15#
16# Key character map for a built-in generic virtual keyboard primarily used
17# for instrumentation and testing purposes.
18#
19
20type FULL
21
22### Basic QWERTY keys ###
23
24key A {
25    label:                              'A'
26    base:                               'a'
27    shift, capslock:                    'A'
28    shift+capslock:                     'a'
29}
30
31key B {
32    label:                              'B'
33    base:                               'b'
34    shift, capslock:                    'B'
35    shift+capslock:                     'b'
36}
37
38key C {
39    label:                              'C'
40    base:                               'c'
41    shift, capslock:                    'C'
42    shift+capslock:                     'c'
43    alt:                                '\u00e7'
44    shift+alt, capslock+alt:            '\u00c7'
45    shift+capslock+alt:                 '\u00e7'
46}
47
48key D {
49    label:                              'D'
50    base:                               'd'
51    shift, capslock:                    'D'
52    shift+capslock:                     'd'
53}
54
55key E {
56    label:                              'E'
57    base:                               'e'
58    shift, capslock:                    'E'
59    shift+capslock:                     'e'
60    alt:                                '\u0301'
61}
62
63key F {
64    label:                              'F'
65    base:                               'f'
66    shift, capslock:                    'F'
67    shift+capslock:                     'f'
68}
69
70key G {
71    label:                              'G'
72    base:                               'g'
73    shift, capslock:                    'G'
74    shift+capslock:                     'g'
75}
76
77key H {
78    label:                              'H'
79    base:                               'h'
80    shift, capslock:                    'H'
81    shift+capslock:                     'h'
82}
83
84key I {
85    label:                              'I'
86    base:                               'i'
87    shift, capslock:                    'I'
88    shift+capslock:                     'i'
89    alt:                                 '\u0302'
90}
91
92key J {
93    label:                              'J'
94    base:                               'j'
95    shift, capslock:                    'J'
96    shift+capslock:                     'j'
97}
98
99key K {
100    label:                              'K'
101    base:                               'k'
102    shift, capslock:                    'K'
103    shift+capslock:                     'k'
104}
105
106key L {
107    label:                              'L'
108    base:                               'l'
109    shift, capslock:                    'L'
110    shift+capslock:                     'l'
111}
112
113key M {
114    label:                              'M'
115    base:                               'm'
116    shift, capslock:                    'M'
117    shift+capslock:                     'm'
118}
119
120key N {
121    label:                              'N'
122    base:                               'n'
123    shift, capslock:                    'N'
124    shift+capslock:                     'n'
125    alt:                                '\u0303'
126}
127
128key O {
129    label:                              'O'
130    base:                               'o'
131    shift, capslock:                    'O'
132    shift+capslock:                     'o'
133}
134
135key P {
136    label:                              'P'
137    base:                               'p'
138    shift, capslock:                    'P'
139    shift+capslock:                     'p'
140}
141
142key Q {
143    label:                              'Q'
144    base:                               'q'
145    shift, capslock:                    'Q'
146    shift+capslock:                     'q'
147}
148
149key R {
150    label:                              'R'
151    base:                               'r'
152    shift, capslock:                    'R'
153    shift+capslock:                     'r'
154}
155
156key S {
157    label:                              'S'
158    base:                               's'
159    shift, capslock:                    'S'
160    shift+capslock:                     's'
161    alt:                                '\u00df'
162}
163
164key T {
165    label:                              'T'
166    base:                               't'
167    shift, capslock:                    'T'
168    shift+capslock:                     't'
169}
170
171key U {
172    label:                              'U'
173    base:                               'u'
174    shift, capslock:                    'U'
175    shift+capslock:                     'u'
176    alt:                                '\u0308'
177}
178
179key V {
180    label:                              'V'
181    base:                               'v'
182    shift, capslock:                    'V'
183    shift+capslock:                     'v'
184}
185
186key W {
187    label:                              'W'
188    base:                               'w'
189    shift, capslock:                    'W'
190    shift+capslock:                     'w'
191}
192
193key X {
194    label:                              'X'
195    base:                               'x'
196    shift, capslock:                    'X'
197    shift+capslock:                     'x'
198}
199
200key Y {
201    label:                              'Y'
202    base:                               'y'
203    shift, capslock:                    'Y'
204    shift+capslock:                     'y'
205}
206
207key Z {
208    label:                              'Z'
209    base:                               'z'
210    shift, capslock:                    'Z'
211    shift+capslock:                     'z'
212}
213
214key 0 {
215    label:                              '0'
216    base:                               '0'
217    shift:                              ')'
218}
219
220key 1 {
221    label:                              '1'
222    base:                               '1'
223    shift:                              '!'
224}
225
226key 2 {
227    label:                              '2'
228    base:                               '2'
229    shift:                              '@'
230}
231
232key 3 {
233    label:                              '3'
234    base:                               '3'
235    shift:                              '#'
236}
237
238key 4 {
239    label:                              '4'
240    base:                               '4'
241    shift:                              '$'
242}
243
244key 5 {
245    label:                              '5'
246    base:                               '5'
247    shift:                              '%'
248}
249
250key 6 {
251    label:                              '6'
252    base:                               '6'
253    shift:                              '^'
254    alt+shift:                          '\u0302'
255}
256
257key 7 {
258    label:                              '7'
259    base:                               '7'
260    shift:                              '&'
261}
262
263key 8 {
264    label:                              '8'
265    base:                               '8'
266    shift:                              '*'
267}
268
269key 9 {
270    label:                              '9'
271    base:                               '9'
272    shift:                              '('
273}
274
275key SPACE {
276    label:                              ' '
277    base:                               ' '
278    alt, meta:                          fallback SEARCH
279    ctrl:                               fallback LANGUAGE_SWITCH
280}
281
282key ENTER {
283    label:                              '\n'
284    base:                               '\n'
285}
286
287key TAB {
288    label:                              '\t'
289    base:                               '\t'
290}
291
292key COMMA {
293    label:                              ','
294    base:                               ','
295    shift:                              '<'
296}
297
298key PERIOD {
299    label:                              '.'
300    base:                               '.'
301    shift:                              '>'
302}
303
304key SLASH {
305    label:                              '/'
306    base:                               '/'
307    shift:                              '?'
308}
309
310key GRAVE {
311    label:                              '`'
312    base:                               '`'
313    shift:                              '~'
314    alt:                                '\u0300'
315    alt+shift:                          '\u0303'
316}
317
318key MINUS {
319    label:                              '-'
320    base:                               '-'
321    shift:                              '_'
322}
323
324key EQUALS {
325    label:                              '='
326    base:                               '='
327    shift:                              '+'
328}
329
330key LEFT_BRACKET {
331    label:                              '['
332    base:                               '['
333    shift:                              '{'
334}
335
336key RIGHT_BRACKET {
337    label:                              ']'
338    base:                               ']'
339    shift:                              '}'
340}
341
342key BACKSLASH {
343    label:                              '\\'
344    base:                               '\\'
345    shift:                              '|'
346}
347
348key SEMICOLON {
349    label:                              ';'
350    base:                               ';'
351    shift:                              ':'
352}
353
354key APOSTROPHE {
355    label:                              '\''
356    base:                               '\''
357    shift:                              '"'
358}
359
360### Numeric keypad ###
361
362key NUMPAD_0 {
363    label:                              '0'
364    base:                               fallback INSERT
365    numlock:                            '0'
366}
367
368key NUMPAD_1 {
369    label:                              '1'
370    base:                               fallback MOVE_END
371    numlock:                            '1'
372}
373
374key NUMPAD_2 {
375    label:                              '2'
376    base:                               fallback DPAD_DOWN
377    numlock:                            '2'
378}
379
380key NUMPAD_3 {
381    label:                              '3'
382    base:                               fallback PAGE_DOWN
383    numlock:                            '3'
384}
385
386key NUMPAD_4 {
387    label:                              '4'
388    base:                               fallback DPAD_LEFT
389    numlock:                            '4'
390}
391
392key NUMPAD_5 {
393    label:                              '5'
394    base:                               fallback DPAD_CENTER
395    numlock:                            '5'
396}
397
398key NUMPAD_6 {
399    label:                              '6'
400    base:                               fallback DPAD_RIGHT
401    numlock:                            '6'
402}
403
404key NUMPAD_7 {
405    label:                              '7'
406    base:                               fallback MOVE_HOME
407    numlock:                            '7'
408}
409
410key NUMPAD_8 {
411    label:                              '8'
412    base:                               fallback DPAD_UP
413    numlock:                            '8'
414}
415
416key NUMPAD_9 {
417    label:                              '9'
418    base:                               fallback PAGE_UP
419    numlock:                            '9'
420}
421
422key NUMPAD_LEFT_PAREN {
423    label:                              '('
424    base:                               '('
425}
426
427key NUMPAD_RIGHT_PAREN {
428    label:                              ')'
429    base:                               ')'
430}
431
432key NUMPAD_DIVIDE {
433    label:                              '/'
434    base:                               '/'
435}
436
437key NUMPAD_MULTIPLY {
438    label:                              '*'
439    base:                               '*'
440}
441
442key NUMPAD_SUBTRACT {
443    label:                              '-'
444    base:                               '-'
445}
446
447key NUMPAD_ADD {
448    label:                              '+'
449    base:                               '+'
450}
451
452key NUMPAD_DOT {
453    label:                              '.'
454    base:                               fallback FORWARD_DEL
455    numlock:                            '.'
456}
457
458key NUMPAD_COMMA {
459    label:                              ','
460    base:                               ','
461}
462
463key NUMPAD_EQUALS {
464    label:                              '='
465    base:                               '='
466}
467
468key NUMPAD_ENTER {
469    label:                              '\n'
470    base:                               '\n' fallback ENTER
471    ctrl, alt, meta:                    none fallback ENTER
472}
473
474### Special keys on phones ###
475
476key AT {
477    label:                              '@'
478    base:                               '@'
479}
480
481key STAR {
482    label:                              '*'
483    base:                               '*'
484}
485
486key POUND {
487    label:                              '#'
488    base:                               '#'
489}
490
491key PLUS {
492    label:                              '+'
493    base:                               '+'
494}
495
496### Non-printing keys ###
497
498key ESCAPE {
499    base:                               none
500    alt, meta:                          fallback HOME
501    ctrl:                               fallback MENU
502}
503
504key DEL {
505    ctrl+alt:                           fallback BACK
506}
507
508### Gamepad buttons ###
509
510key BUTTON_A {
511    base:                               fallback DPAD_CENTER
512}
513
514key BUTTON_B {
515    base:                               fallback BACK
516}
517
518key BUTTON_C {
519    base:                               fallback DPAD_CENTER
520}
521
522key BUTTON_X {
523    base:                               fallback DPAD_CENTER
524}
525
526key BUTTON_Y {
527    base:                               fallback BACK
528}
529
530key BUTTON_Z {
531    base:                               fallback DPAD_CENTER
532}
533
534key BUTTON_L1 {
535    base:                               none
536}
537
538key BUTTON_R1 {
539    base:                               none
540}
541
542key BUTTON_L2 {
543    base:                               none
544}
545
546key BUTTON_R2 {
547    base:                               none
548}
549
550key BUTTON_THUMBL {
551    base:                               fallback DPAD_CENTER
552}
553
554key BUTTON_THUMBR {
555    base:                               fallback DPAD_CENTER
556}
557
558key BUTTON_START {
559    base:                               fallback DPAD_CENTER
560}
561
562key BUTTON_SELECT {
563    base:                               fallback MENU
564}
565
566key BUTTON_MODE {
567    base:                               fallback HOME
568}
569
570key BUTTON_1 {
571    base:                               fallback DPAD_CENTER
572}
573
574key BUTTON_2 {
575    base:                               fallback DPAD_CENTER
576}
577
578key BUTTON_3 {
579    base:                               fallback DPAD_CENTER
580}
581
582key BUTTON_4 {
583    base:                               fallback DPAD_CENTER
584}
585
586key BUTTON_5 {
587    base:                               fallback DPAD_CENTER
588}
589
590key BUTTON_6 {
591    base:                               fallback DPAD_CENTER
592}
593
594key BUTTON_7 {
595    base:                               fallback DPAD_CENTER
596}
597
598key BUTTON_8 {
599    base:                               fallback DPAD_CENTER
600}
601
602key BUTTON_9 {
603    base:                               fallback DPAD_CENTER
604}
605
606key BUTTON_10 {
607    base:                               fallback DPAD_CENTER
608}
609
610key BUTTON_11 {
611    base:                               fallback DPAD_CENTER
612}
613
614key BUTTON_12 {
615    base:                               fallback DPAD_CENTER
616}
617
618key BUTTON_13 {
619    base:                               fallback DPAD_CENTER
620}
621
622key BUTTON_14 {
623    base:                               fallback DPAD_CENTER
624}
625
626key BUTTON_15 {
627    base:                               fallback DPAD_CENTER
628}
629
630key BUTTON_16 {
631    base:                               fallback DPAD_CENTER
632}
633