blob: 544076f338ea120189884a1a0a38a4d5a20f46f3 [file] [log] [blame]
Jeff Brown497a92c2010-09-12 17:55:08 -07001# 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# Generic key character map for full alphabetic US English PC style external keyboards.
17#
18# This file is intentionally very generic and is intended to support a broad rang of keyboards.
19# Do not edit the generic key character map to support a specific keyboard; instead, create
20# a new key character map file with the required keyboard configuration.
21#
22
Jeff Brown6b53e8d2010-11-10 16:03:06 -080023type FULL
Jeff Brown497a92c2010-09-12 17:55:08 -070024
Jeff Brown061cf752010-11-18 20:52:43 -080025### Basic QWERTY keys ###
26
Jeff Brown6b53e8d2010-11-10 16:03:06 -080027key A {
28 label: 'A'
29 base: 'a'
30 shift, capslock: 'A'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080031}
Jeff Brown497a92c2010-09-12 17:55:08 -070032
Jeff Brown6b53e8d2010-11-10 16:03:06 -080033key B {
34 label: 'B'
35 base: 'b'
36 shift, capslock: 'B'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080037}
Jeff Brown497a92c2010-09-12 17:55:08 -070038
Jeff Brown6b53e8d2010-11-10 16:03:06 -080039key C {
40 label: 'C'
41 base: 'c'
42 shift, capslock: 'C'
Jeff Brown49ed71d2010-12-06 17:13:33 -080043 alt: '\u00e7'
44 shift+alt: '\u00c7'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080045}
Jeff Brown497a92c2010-09-12 17:55:08 -070046
Jeff Brown6b53e8d2010-11-10 16:03:06 -080047key D {
48 label: 'D'
49 base: 'd'
50 shift, capslock: 'D'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080051}
Jeff Brown497a92c2010-09-12 17:55:08 -070052
Jeff Brown6b53e8d2010-11-10 16:03:06 -080053key E {
54 label: 'E'
55 base: 'e'
56 shift, capslock: 'E'
Jeff Brown49ed71d2010-12-06 17:13:33 -080057 alt: '\u0301'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080058}
Jeff Brown497a92c2010-09-12 17:55:08 -070059
Jeff Brown6b53e8d2010-11-10 16:03:06 -080060key F {
61 label: 'F'
62 base: 'f'
63 shift, capslock: 'F'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080064}
65
66key G {
67 label: 'G'
68 base: 'g'
69 shift, capslock: 'G'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080070}
71
72key H {
73 label: 'H'
74 base: 'h'
75 shift, capslock: 'H'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080076}
77
78key I {
79 label: 'I'
80 base: 'i'
81 shift, capslock: 'I'
Jeff Brown49ed71d2010-12-06 17:13:33 -080082 alt: '\u0302'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080083}
84
85key J {
86 label: 'J'
87 base: 'j'
88 shift, capslock: 'J'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080089}
90
91key K {
92 label: 'K'
93 base: 'k'
94 shift, capslock: 'K'
Jeff Brown6b53e8d2010-11-10 16:03:06 -080095}
96
97key L {
98 label: 'L'
99 base: 'l'
100 shift, capslock: 'L'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800101}
102
103key M {
104 label: 'M'
105 base: 'm'
106 shift, capslock: 'M'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800107}
108
109key N {
110 label: 'N'
111 base: 'n'
112 shift, capslock: 'N'
Jeff Brown49ed71d2010-12-06 17:13:33 -0800113 alt: '\u0303'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800114}
115
116key O {
117 label: 'O'
118 base: 'o'
119 shift, capslock: 'O'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800120}
121
122key P {
123 label: 'P'
124 base: 'p'
125 shift, capslock: 'P'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800126}
127
128key Q {
129 label: 'Q'
130 base: 'q'
131 shift, capslock: 'Q'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800132}
133
134key R {
135 label: 'R'
136 base: 'r'
137 shift, capslock: 'R'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800138}
139
140key S {
141 label: 'S'
142 base: 's'
143 shift, capslock: 'S'
Jeff Brown49ed71d2010-12-06 17:13:33 -0800144 alt: '\u00df'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800145}
146
147key T {
148 label: 'T'
149 base: 't'
150 shift, capslock: 'T'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800151}
152
153key U {
154 label: 'U'
155 base: 'u'
156 shift, capslock: 'U'
Jeff Brown49ed71d2010-12-06 17:13:33 -0800157 alt: '\u0308'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800158}
159
160key V {
161 label: 'V'
162 base: 'v'
163 shift, capslock: 'V'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800164}
165
166key W {
167 label: 'W'
168 base: 'w'
169 shift, capslock: 'W'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800170}
171
172key X {
173 label: 'X'
174 base: 'x'
175 shift, capslock: 'X'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800176}
177
178key Y {
179 label: 'Y'
180 base: 'y'
181 shift, capslock: 'Y'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800182}
183
184key Z {
185 label: 'Z'
186 base: 'z'
187 shift, capslock: 'Z'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800188}
189
190key 0 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700191 label: '0'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800192 base: '0'
193 shift: ')'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800194}
195
196key 1 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700197 label: '1'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800198 base: '1'
199 shift: '!'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800200}
201
202key 2 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700203 label: '2'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800204 base: '2'
205 shift: '@'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800206}
207
208key 3 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700209 label: '3'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800210 base: '3'
211 shift: '#'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800212}
213
214key 4 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700215 label: '4'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800216 base: '4'
217 shift: '$'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800218}
219
220key 5 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700221 label: '5'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800222 base: '5'
223 shift: '%'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800224}
225
226key 6 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700227 label: '6'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800228 base: '6'
229 shift: '^'
Jeff Brown49ed71d2010-12-06 17:13:33 -0800230 alt+shift: '\u0302'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800231}
232
233key 7 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700234 label: '7'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800235 base: '7'
236 shift: '&'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800237}
238
239key 8 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700240 label: '8'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800241 base: '8'
242 shift: '*'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800243}
244
245key 9 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700246 label: '9'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800247 base: '9'
248 shift: '('
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800249}
250
251key SPACE {
252 label: ' '
253 base: ' '
Jeff Brown8c769cb2011-03-29 17:26:44 -0700254 alt, meta: fallback SEARCH
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800255}
256
257key ENTER {
258 label: '\n'
259 base: '\n'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800260}
261
262key TAB {
263 label: '\t'
264 base: '\t'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800265}
266
267key COMMA {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700268 label: ','
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800269 base: ','
270 shift: '<'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800271}
272
273key PERIOD {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700274 label: '.'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800275 base: '.'
276 shift: '>'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800277}
278
279key SLASH {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700280 label: '/'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800281 base: '/'
282 shift: '?'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800283}
284
285key GRAVE {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700286 label: '`'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800287 base: '`'
288 shift: '~'
Jeff Brown49ed71d2010-12-06 17:13:33 -0800289 alt: '\u0300'
290 alt+shift: '\u0303'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800291}
292
293key MINUS {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700294 label: '-'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800295 base: '-'
296 shift: '_'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800297}
298
299key EQUALS {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700300 label: '='
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800301 base: '='
302 shift: '+'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800303}
304
305key LEFT_BRACKET {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700306 label: '['
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800307 base: '['
308 shift: '{'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800309}
310
311key RIGHT_BRACKET {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700312 label: ']'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800313 base: ']'
314 shift: '}'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800315}
316
317key BACKSLASH {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700318 label: '\\'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800319 base: '\\'
320 shift: '|'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800321}
322
323key SEMICOLON {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700324 label: ';'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800325 base: ';'
326 shift: ':'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800327}
328
329key APOSTROPHE {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700330 label: '\''
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800331 base: '\''
332 shift: '"'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800333}
334
Jeff Brown061cf752010-11-18 20:52:43 -0800335### Numeric keypad ###
336
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800337key NUMPAD_0 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700338 label: '0'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800339 base: fallback INSERT
340 numlock: '0'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800341}
342
343key NUMPAD_1 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700344 label: '1'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800345 base: fallback MOVE_END
346 numlock: '1'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800347}
348
349key NUMPAD_2 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700350 label: '2'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800351 base: fallback DPAD_DOWN
352 numlock: '2'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800353}
354
355key NUMPAD_3 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700356 label: '3'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800357 base: fallback PAGE_DOWN
358 numlock: '3'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800359}
360
361key NUMPAD_4 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700362 label: '4'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800363 base: fallback DPAD_LEFT
364 numlock: '4'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800365}
366
367key NUMPAD_5 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700368 label: '5'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800369 base: fallback DPAD_CENTER
370 numlock: '5'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800371}
372
373key NUMPAD_6 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700374 label: '6'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800375 base: fallback DPAD_RIGHT
376 numlock: '6'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800377}
378
379key NUMPAD_7 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700380 label: '7'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800381 base: fallback MOVE_HOME
382 numlock: '7'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800383}
384
385key NUMPAD_8 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700386 label: '8'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800387 base: fallback DPAD_UP
388 numlock: '8'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800389}
390
391key NUMPAD_9 {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700392 label: '9'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800393 base: fallback PAGE_UP
394 numlock: '9'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800395}
396
397key NUMPAD_LEFT_PAREN {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700398 label: '('
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800399 base: '('
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800400}
401
402key NUMPAD_RIGHT_PAREN {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700403 label: ')'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800404 base: ')'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800405}
406
407key NUMPAD_DIVIDE {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700408 label: '/'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800409 base: '/'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800410}
411
412key NUMPAD_MULTIPLY {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700413 label: '*'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800414 base: '*'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800415}
416
417key NUMPAD_SUBTRACT {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700418 label: '-'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800419 base: '-'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800420}
421
422key NUMPAD_ADD {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700423 label: '+'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800424 base: '+'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800425}
426
427key NUMPAD_DOT {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700428 label: '.'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800429 base: fallback FORWARD_DEL
430 numlock: '.'
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800431}
432
433key NUMPAD_COMMA {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700434 label: ','
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800435 base: ','
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800436}
437
438key NUMPAD_EQUALS {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700439 label: '='
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800440 base: '='
Jeff Brown6b53e8d2010-11-10 16:03:06 -0800441}
442
443key NUMPAD_ENTER {
444 label: '\n'
445 base: '\n' fallback ENTER
446 ctrl, alt, meta: none fallback ENTER
447}
Jeff Brown061cf752010-11-18 20:52:43 -0800448
449### Special keys on phones ###
450
451key AT {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700452 label: '@'
Jeff Brown061cf752010-11-18 20:52:43 -0800453 base: '@'
454}
455
456key STAR {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700457 label: '*'
Jeff Brown061cf752010-11-18 20:52:43 -0800458 base: '*'
459}
460
461key POUND {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700462 label: '#'
Jeff Brown061cf752010-11-18 20:52:43 -0800463 base: '#'
464}
465
466key PLUS {
Jeff Brown9a2bbf62012-04-18 14:09:10 -0700467 label: '+'
Jeff Brown061cf752010-11-18 20:52:43 -0800468 base: '+'
469}
Jeff Brown49ed71d2010-12-06 17:13:33 -0800470
471### Non-printing keys ###
472
473key ESCAPE {
474 base: fallback BACK
Jeff Brown8c769cb2011-03-29 17:26:44 -0700475 alt, meta: fallback HOME
476 ctrl: fallback MENU
Jeff Brown49ed71d2010-12-06 17:13:33 -0800477}
Jeff Brown6f2fba42011-02-19 01:08:02 -0800478
479### Gamepad buttons ###
480
481key BUTTON_A {
482 base: fallback BACK
483}
484
485key BUTTON_B {
486 base: fallback BACK
487}
488
489key BUTTON_C {
490 base: fallback BACK
491}
492
493key BUTTON_X {
494 base: fallback DPAD_CENTER
495}
496
497key BUTTON_Y {
498 base: fallback DPAD_CENTER
499}
500
501key BUTTON_Z {
502 base: fallback DPAD_CENTER
503}
504
505key BUTTON_L1 {
506 base: none
507}
508
509key BUTTON_R1 {
510 base: none
511}
512
513key BUTTON_L2 {
514 base: none
515}
516
517key BUTTON_R2 {
518 base: none
519}
520
521key BUTTON_THUMBL {
522 base: fallback DPAD_CENTER
523}
524
525key BUTTON_THUMBR {
526 base: fallback DPAD_CENTER
527}
528
529key BUTTON_START {
530 base: fallback HOME
531}
532
533key BUTTON_SELECT {
534 base: fallback MENU
535}
536
537key BUTTON_MODE {
538 base: fallback MENU
539}
540
541key BUTTON_1 {
542 base: fallback DPAD_CENTER
543}
544
545key BUTTON_2 {
546 base: fallback DPAD_CENTER
547}
548
549key BUTTON_3 {
550 base: fallback DPAD_CENTER
551}
552
553key BUTTON_4 {
554 base: fallback DPAD_CENTER
555}
556
557key BUTTON_5 {
558 base: fallback DPAD_CENTER
559}
560
561key BUTTON_6 {
562 base: fallback DPAD_CENTER
563}
564
565key BUTTON_7 {
566 base: fallback DPAD_CENTER
567}
568
569key BUTTON_8 {
570 base: fallback DPAD_CENTER
571}
572
573key BUTTON_9 {
574 base: fallback DPAD_CENTER
575}
576
577key BUTTON_10 {
578 base: fallback DPAD_CENTER
579}
580
581key BUTTON_11 {
582 base: fallback DPAD_CENTER
583}
584
585key BUTTON_12 {
586 base: fallback DPAD_CENTER
587}
588
589key BUTTON_13 {
590 base: fallback DPAD_CENTER
591}
592
593key BUTTON_14 {
594 base: fallback DPAD_CENTER
595}
596
597key BUTTON_15 {
598 base: fallback DPAD_CENTER
599}
600
601key BUTTON_16 {
602 base: fallback DPAD_CENTER
603}