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