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