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