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