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