1# Copyright (C) 2017 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 17type FULL 18 19### Basic QWERTY keys ### 20 21key A { 22 label: '\u0634' 23 base: '\u0634' 24 shift, capslock: '\u0624' 25 ctrl, alt, meta: none 26} 27 28key B { 29 label: '\u0630' 30 base: '\u0630' 31 shift, capslock: '\u200C' 32 ctrl, alt, meta: none 33} 34 35key C { 36 label: '\u0632' 37 base: '\u0632' 38 shift, capslock: '\u0698' 39 ctrl, alt, meta: none 40} 41 42key D { 43 label: '\u06CC' 44 base: '\u06CC' 45 shift, capslock: '\u064A' 46 ctrl, alt, meta: none 47} 48 49key E { 50 label: '\u062B' 51 base: '\u062B' 52 shift, capslock: '\u064D' 53 ctrl, alt, meta: none 54} 55 56key F { 57 label: '\u0628' 58 base: '\u0628' 59 shift, capslock: '\u0625' 60 ctrl, alt, meta: none 61} 62 63key G { 64 label: '\u0644' 65 base: '\u0644' 66 shift, capslock: '\u0623' 67 ctrl, alt, meta: none 68} 69 70key H { 71 label: '\u0627' 72 base: '\u0627' 73 shift, capslock: '\u0622' 74 ctrl, alt, meta: none 75} 76 77key I { 78 label: '\u0647' 79 base: '\u0647' 80 shift, capslock: '\u0651' 81 ctrl, alt, meta: none 82} 83 84key J { 85 label: '\u062A' 86 base: '\u062A' 87 shift, capslock: '\u0629' 88 ctrl, alt, meta: none 89} 90 91key K { 92 label: '\u0646' 93 base: '\u0646' 94 shift, capslock: '\u00AB' 95 ctrl, alt, meta: none 96} 97 98key L { 99 label: '\u0645' 100 base: '\u0645' 101 shift, capslock: '\u00BB' 102 ctrl, alt, meta: none 103} 104 105key M { 106 label: '\u067E' 107 base: '\u067E' 108 shift, capslock: '\u0621' 109 ctrl, alt, meta: none 110} 111 112key N { 113 label: '\u062F' 114 base: '\u062F' 115 shift, capslock: '\u0654' 116 ctrl, alt, meta: none 117} 118 119key O { 120 label: '\u062E' 121 base: '\u062E' 122 shift, capslock: ']' 123 ctrl, alt, meta: none 124} 125 126key P { 127 label: '\u062D' 128 base: '\u062D' 129 shift, capslock: '[' 130 ctrl, alt, meta: none 131} 132 133key Q { 134 label: '\u0636' 135 base: '\u0636' 136 shift, capslock: '\u0652' 137 ctrl, alt, meta: none 138} 139 140key R { 141 label: '\u0642' 142 base: '\u0642' 143 shift, capslock: '\u064B' 144 ctrl, alt, meta: none 145} 146 147key S { 148 label: '\u0633' 149 base: '\u0633' 150 shift, capslock: '\u0626' 151 ctrl, alt, meta: none 152} 153 154key T { 155 label: '\u0641' 156 base: '\u0641' 157 shift, capslock: '\u064F' 158 ctrl, alt, meta: none 159} 160 161key U { 162 label: '\u0639' 163 base: '\u0639' 164 shift, capslock: '\u064E' 165 ctrl, alt, meta: none 166} 167 168key V { 169 label: '\u0631' 170 base: '\u0631' 171 shift, capslock: '\u0670' 172 ctrl, alt, meta: none 173} 174 175key W { 176 label: '\u0635' 177 base: '\u0635' 178 shift, capslock: '\u064C' 179 ctrl, alt, meta: none 180} 181 182key X { 183 label: '\u0637' 184 base: '\u0637' 185 shift, capslock: '\u0653' 186 ctrl, alt, meta: none 187} 188 189key Y { 190 label: '\u063A' 191 base: '\u063A' 192 shift, capslock: '\u0650' 193 ctrl, alt, meta: none 194} 195 196key Z { 197 label: '\u0638' 198 base: '\u0638' 199 shift, capslock: '\u0643' 200 ctrl, alt, meta: none 201} 202 203key 0 { 204 label, number: '\u06F0' 205 base: '\u06F0' 206 shift: '(' 207 ctrl, alt, meta: none 208} 209 210key 1 { 211 label, number: '\u06F1' 212 base: '\u06F1' 213 shift: '!' 214 ctrl, alt, meta: none 215} 216 217key 2 { 218 label, number: '\u06F2' 219 base: '\u06F2' 220 shift: '\u066C' 221 ctrl, alt, meta: none 222 223} 224key 3 { 225 label, number: '\u06F3' 226 base: '\u06F3' 227 shift: '\u066B' 228 ctrl, alt, meta: none 229} 230 231key 4 { 232 label, number: '\u06F4' 233 base: '\u06F4' 234 shift: '\uFDFC' 235 ctrl, alt, meta: none 236} 237 238key 5 { 239 label, number: '\u06F5' 240 base: '\u06F5' 241 shift: '\u066A' 242 ctrl, alt, meta: none 243} 244 245key 6 { 246 label, number: '\u06F6' 247 base: '\u06F6' 248 shift: '\u00D7' 249 ctrl, alt, meta: none 250} 251 252 253key 7 { 254 label, number: '\u06F7' 255 base: '\u06F7' 256 shift: '\u060C' 257 ctrl, alt, meta: none 258} 259 260key 8 { 261 label, number: '\u06F8' 262 base: '\u06F8' 263 shift: '*' 264 ctrl, alt, meta: none 265} 266 267key 9 { 268 label, number: '\u06F9' 269 base: '\u06F9' 270 shift: ')' 271 ctrl, alt, meta: none 272} 273 274key SPACE { 275 label: ' ' 276 base: ' ' 277 ctrl, alt, meta: none 278} 279 280key ENTER { 281 label: '\n' 282 base: '\n' 283 ctrl, alt, meta: none 284} 285 286key TAB { 287 label: '\t' 288 base: '\t' 289 ctrl, alt, meta: none 290} 291 292key COMMA { 293 label, number: '\u0648' 294 base: '\u0648' 295 shift: '<' 296 ctrl, alt, meta: none 297} 298 299key PERIOD { 300 label, number: '.' 301 base: '.' 302 shift: '>' 303 ctrl, alt, meta: none 304} 305 306key SLASH { 307 label, number: '/' 308 base: '/' 309 shift: '\u061F' 310 ctrl, alt, meta: none 311} 312 313key GRAVE { 314 label, number: '`' 315 base: '`' 316 shift: '\u00F7' 317 ctrl, alt, meta: none 318} 319 320 321key MINUS { 322 label, number: '-' 323 base: '-' 324 shift: '_' 325 ctrl, alt, meta: none 326} 327 328key EQUALS { 329 label, number: '=' 330 base: '=' 331 shift: '+' 332 ctrl, alt, meta: none 333} 334 335key LEFT_BRACKET { 336 label, number: '\u062C' 337 base: '\u062C' 338 shift: '}' 339 ctrl, alt, meta: none 340} 341 342key RIGHT_BRACKET { 343 label, number: '\u0686' 344 base: '\u0686' 345 shift: '{' 346 ctrl, alt, meta: none 347} 348 349key BACKSLASH { 350 label, number: '\\' 351 base: '\\' 352 shift: '|' 353 ctrl, alt, meta: none 354} 355 356key SEMICOLON { 357 label, number: '\u06A9' 358 base: '\u06A9' 359 shift: ':' 360 ctrl, alt, meta: none 361} 362 363key APOSTROPHE { 364 label, number: '\'' 365 base: '\'' 366 shift: '\"' 367 ctrl, alt, meta: none 368} 369 370### Numeric keypad ### 371 372key NUMPAD_0 { 373 label, number: '0' 374 base: fallback INSERT 375 numlock: '0' 376 ctrl, alt, meta: none 377} 378 379key NUMPAD_1 { 380 label, number: '1' 381 base: fallback MOVE_END 382 numlock: '1' 383 ctrl, alt, meta: none 384} 385 386key NUMPAD_2 { 387 label, number: '2' 388 base: fallback DPAD_DOWN 389 numlock: '2' 390 ctrl, alt, meta: none 391} 392 393key NUMPAD_3 { 394 label, number: '3' 395 base: fallback PAGE_DOWN 396 numlock: '3' 397 ctrl, alt, meta: none 398} 399 400key NUMPAD_4 { 401 label, number: '4' 402 base: fallback DPAD_LEFT 403 numlock: '4' 404 ctrl, alt, meta: none 405} 406 407key NUMPAD_5 { 408 label, number: '5' 409 base: fallback DPAD_CENTER 410 numlock: '5' 411 ctrl, alt, meta: none 412} 413 414key NUMPAD_6 { 415 label, number: '6' 416 base: fallback DPAD_RIGHT 417 numlock: '6' 418 ctrl, alt, meta: none 419} 420 421key NUMPAD_7 { 422 label, number: '7' 423 base: fallback MOVE_HOME 424 numlock: '7' 425 ctrl, alt, meta: none 426} 427 428key NUMPAD_8 { 429 label, number: '8' 430 base: fallback DPAD_UP 431 numlock: '8' 432 ctrl, alt, meta: none 433} 434 435key NUMPAD_9 { 436 label, number: '9' 437 base: fallback PAGE_UP 438 numlock: '9' 439 ctrl, alt, meta: none 440} 441 442key NUMPAD_LEFT_PAREN { 443 label, number: '(' 444 base: '(' 445 ctrl, alt, meta: none 446} 447 448key NUMPAD_RIGHT_PAREN { 449 label, number: ')' 450 base: ')' 451 ctrl, alt, meta: none 452} 453 454key NUMPAD_DIVIDE { 455 label, number: '/' 456 base: '/' 457 ctrl, alt, meta: none 458} 459 460key NUMPAD_MULTIPLY { 461 label, number: '*' 462 base: '*' 463 ctrl, alt, meta: none 464} 465 466key NUMPAD_SUBTRACT { 467 label, number: '-' 468 base: '-' 469 ctrl, alt, meta: none 470} 471 472key NUMPAD_ADD { 473 label, number: '+' 474 base: '+' 475 ctrl, alt, meta: none 476} 477 478key NUMPAD_DOT { 479 label, number: '.' 480 base: fallback FORWARD_DEL 481 numlock: '.' 482 ctrl, alt, meta: none 483} 484 485key NUMPAD_COMMA { 486 label, number: ',' 487 base: ',' 488 ctrl, alt, meta: none 489} 490 491key NUMPAD_EQUALS { 492 label, number: '=' 493 base: '=' 494 ctrl, alt, meta: none 495} 496 497key NUMPAD_ENTER { 498 label: '\n' 499 base: '\n' fallback ENTER 500 ctrl, alt, meta: none fallback ENTER 501} 502