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