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