Generic.kcm revision 49ed71db425c5054e3ad9526496a7e116c89556b
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 ctrl, alt, meta: none 32} 33 34key B { 35 label: 'B' 36 base: 'b' 37 shift, capslock: 'B' 38 ctrl, alt, meta: none 39} 40 41key C { 42 label: 'C' 43 base: 'c' 44 shift, capslock: 'C' 45 alt: '\u00e7' 46 shift+alt: '\u00c7' 47 ctrl, meta: none 48} 49 50key D { 51 label: 'D' 52 base: 'd' 53 shift, capslock: 'D' 54 ctrl, alt, meta: none 55} 56 57key E { 58 label: 'E' 59 base: 'e' 60 shift, capslock: 'E' 61 alt: '\u0301' 62 ctrl, meta: none 63} 64 65key 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' 90 alt: '\u0302' 91 ctrl, meta: none 92} 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' 126 alt: '\u0303' 127 ctrl, meta: none 128} 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' 162 alt: '\u00df' 163 ctrl, meta: none 164} 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' 177 alt: '\u0308' 178 ctrl, meta: none 179} 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 263 alt+shift: '\u0302' 264} 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: ' ' 290 ctrl, alt: none 291 meta: fallback SEARCH 292} 293 294key ENTER { 295 label: '\n' 296 base: '\n' 297 ctrl, alt, meta: none 298} 299 300key TAB { 301 label: '\t' 302 base: '\t' 303 ctrl, alt: none 304 meta: fallback APP_SWITCH 305} 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: '~' 332 alt: '\u0300' 333 alt+shift: '\u0303' 334 ctrl, meta: none 335} 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 386### Numeric keypad ### 387 388key 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} 518 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} 540 541### Non-printing keys ### 542 543key ESCAPE { 544 base: fallback BACK 545 meta: fallback HOME 546 alt: fallback MENU 547} 548