From 6de40e903b9f20a919b8ef47d5d32bdf72a2378b Mon Sep 17 00:00:00 2001 From: Eberhard Beilharz Date: Fri, 12 Dec 2025 17:13:14 +0100 Subject: [PATCH] test(common): better group baseline tests This change groups similar tests together. Also update `build.sh` to compile .js files. Follow-up-of: #15341 Test-bot: skip --- common/test/keyboards/baseline/README.md | 14 +- common/test/keyboards/baseline/baseline.kpj | 276 +++++++++--------- common/test/keyboards/baseline/build.sh | 12 +- .../baseline/k_0000___null_keyboard.js | 28 ++ ...eyboard.kmn => k_0000___null_keyboard.kmn} | 2 +- .../baseline/k_0000___null_keyboard.kmx | Bin 0 -> 318 bytes .../test/keyboards/baseline/k_0001___nul.js | 42 +++ .../{k_003___nul.kmn => k_0001___nul.kmn} | 4 +- .../test/keyboards/baseline/k_0001___nul.kmx | Bin 0 -> 380 bytes .../k_0002___nul_with_initial_context.js | 42 +++ ... => k_0002___nul_with_initial_context.kmn} | 2 +- .../k_0002___nul_with_initial_context.kmx | Bin 0 -> 422 bytes .../baseline/k_0003___nul_testing.js | 34 +++ ...l_testing.kmn => k_0003___nul_testing.kmn} | 2 +- .../baseline/k_0003___nul_testing.kmx | Bin 0 -> 386 bytes .../baseline/k_0004___space_mnemonic_kbd.js | 46 +++ ...bd.kmn => k_0004___space_mnemonic_kbd.kmn} | 2 +- .../baseline/k_0004___space_mnemonic_kbd.kmx | Bin 0 -> 508 bytes .../test/keyboards/baseline/k_0005___beep.js | 40 +++ .../{k_029___beep.kmn => k_0005___beep.kmn} | 4 +- .../test/keyboards/baseline/k_0005___beep.kmx | Bin 0 -> 328 bytes .../baseline/k_000___null_keyboard.js | 1 - .../baseline/k_000___null_keyboard.kmx | Bin 316 -> 0 bytes .../baseline/k_001___basic_input_unicodei.js | 1 - .../baseline/k_001___basic_input_unicodei.kmx | Bin 440 -> 0 bytes .../baseline/k_002___basic_input_unicode.js | 1 - .../baseline/k_002___basic_input_unicode.kmx | Bin 438 -> 0 bytes common/test/keyboards/baseline/k_003___nul.js | 1 - .../test/keyboards/baseline/k_003___nul.kmx | Bin 378 -> 0 bytes .../baseline/k_004___basic_input__shift_2_.js | 1 - .../k_004___basic_input__shift_2_.kmx | Bin 442 -> 0 bytes .../k_005___nul_with_initial_context.js | 1 - .../k_005___nul_with_initial_context.kmx | Bin 420 -> 0 bytes .../k_006___vkey_input__shift_ctrl_.js | 1 - .../k_006___vkey_input__shift_ctrl_.kmx | Bin 446 -> 0 bytes .../baseline/k_007___vkey_input__ctrl_alt_.js | 1 - .../k_007___vkey_input__ctrl_alt_.kmx | Bin 442 -> 0 bytes .../k_008___vkey_input__ctrl_alt_2_.js | 1 - .../k_008___vkey_input__ctrl_alt_2_.kmx | Bin 388 -> 0 bytes .../baseline/k_0100___basic_input_unicodei.js | 52 ++++ ....kmn => k_0100___basic_input_unicodei.kmn} | 4 +- .../k_0100___basic_input_unicodei.kmx | Bin 0 -> 442 bytes .../baseline/k_0101___basic_input_unicode.js | 52 ++++ ...e.kmn => k_0101___basic_input_unicode.kmn} | 2 +- .../baseline/k_0101___basic_input_unicode.kmx | Bin 0 -> 440 bytes .../k_0102___basic_input__shift_2_.js | 52 ++++ ...kmn => k_0102___basic_input__shift_2_.kmn} | 6 +- .../k_0102___basic_input__shift_2_.kmx | Bin 0 -> 444 bytes .../k_0103___vkey_input__shift_ctrl_.js | 52 ++++ ...n => k_0103___vkey_input__shift_ctrl_.kmn} | 6 +- .../k_0103___vkey_input__shift_ctrl_.kmx | Bin 0 -> 448 bytes .../k_0104___vkey_input__ctrl_alt_.js | 52 ++++ ...kmn => k_0104___vkey_input__ctrl_alt_.kmn} | 6 +- .../k_0104___vkey_input__ctrl_alt_.kmx | Bin 0 -> 444 bytes .../k_0105___vkey_input__ctrl_alt_2_.js | 40 +++ ...n => k_0105___vkey_input__ctrl_alt_2_.kmn} | 2 +- .../k_0105___vkey_input__ctrl_alt_2_.kmx | Bin 0 -> 390 bytes .../test/keyboards/baseline/k_0106___smp.js | 80 +++++ .../{k_028___smp.kmn => k_0106___smp.kmn} | 2 +- .../test/keyboards/baseline/k_0106___smp.kmx | Bin 0 -> 576 bytes .../keyboards/baseline/k_0107___punctkeys.js | 100 +++++++ ...__punctkeys.kmn => k_0107___punctkeys.kmn} | 6 +- .../keyboards/baseline/k_0107___punctkeys.kmx | Bin 0 -> 644 bytes .../test/keyboards/baseline/k_012___ralt.js | 1 - .../test/keyboards/baseline/k_012___ralt.kmx | Bin 402 -> 0 bytes .../keyboards/baseline/k_013___deadkeys.js | 1 - .../keyboards/baseline/k_013___deadkeys.kmx | Bin 394 -> 0 bytes .../k_014___groups_and_virtual_keys.js | 1 - .../k_014___groups_and_virtual_keys.kmx | Bin 764 -> 0 bytes .../test/keyboards/baseline/k_015___ralt_2.js | 1 - .../keyboards/baseline/k_015___ralt_2.kmx | Bin 330 -> 0 bytes .../baseline/k_017___space_mnemonic_kbd.js | 1 - .../baseline/k_017___space_mnemonic_kbd.kmx | Bin 506 -> 0 bytes .../keyboards/baseline/k_018___nul_testing.js | 1 - .../baseline/k_018___nul_testing.kmx | Bin 384 -> 0 bytes .../baseline/k_019___multiple_deadkeys.js | 1 - .../baseline/k_019___multiple_deadkeys.kmx | Bin 2192 -> 0 bytes .../test/keyboards/baseline/k_0200___ralt.js | 52 ++++ .../{k_012___ralt.kmn => k_0200___ralt.kmn} | 8 +- .../test/keyboards/baseline/k_0200___ralt.kmx | Bin 0 -> 404 bytes .../keyboards/baseline/k_0201___ralt_2.js | 34 +++ ...k_015___ralt_2.kmn => k_0201___ralt_2.kmn} | 5 +- .../keyboards/baseline/k_0201___ralt_2.kmx | Bin 0 -> 370 bytes .../baseline/k_0203___generic_ctrlalt.js | 40 +++ ...rlalt.kmn => k_0203___generic_ctrlalt.kmn} | 4 +- .../baseline/k_0203___generic_ctrlalt.kmx | Bin 0 -> 376 bytes .../k_020___deadkeys_and_backspace.js | 1 - .../keyboards/baseline/k_021___options.js | 1 - .../keyboards/baseline/k_021___options.kmx | Bin 556 -> 0 bytes .../baseline/k_022___options_with_preset.js | 1 - .../baseline/k_022___options_with_preset.kmx | Bin 592 -> 0 bytes .../baseline/k_023___options_with_save.js | 1 - .../baseline/k_023___options_with_save.kmx | Bin 606 -> 0 bytes .../k_024___options_with_save_and_preset.js | 1 - .../k_024___options_with_save_and_preset.kmx | Bin 656 -> 0 bytes .../baseline/k_025___options_with_reset.js | 1 - .../baseline/k_025___options_with_reset.kmx | Bin 608 -> 0 bytes .../baseline/k_026___system_stores.js | 1 - .../baseline/k_026___system_stores.kmx | Bin 1972 -> 0 bytes .../baseline/k_027___system_stores_2.js | 1 - .../baseline/k_027___system_stores_2.kmx | Bin 1968 -> 0 bytes common/test/keyboards/baseline/k_028___smp.js | 1 - .../test/keyboards/baseline/k_028___smp.kmx | Bin 574 -> 0 bytes .../test/keyboards/baseline/k_029___beep.js | 1 - .../test/keyboards/baseline/k_029___beep.kmx | Bin 326 -> 0 bytes .../keyboards/baseline/k_0300___deadkeys.js | 40 +++ ...3___deadkeys.kmn => k_0300___deadkeys.kmn} | 2 +- .../keyboards/baseline/k_0300___deadkeys.kmx | Bin 0 -> 396 bytes .../baseline/k_0301___multiple_deadkeys.js | 176 +++++++++++ ...eys.kmn => k_0301___multiple_deadkeys.kmn} | 2 +- .../baseline/k_0301___multiple_deadkeys.kmx | Bin 0 -> 2194 bytes .../k_0302___deadkeys_and_backspace.js | 93 ++++++ ...mn => k_0302___deadkeys_and_backspace.kmn} | 2 +- ...mx => k_0302___deadkeys_and_backspace.kmx} | Bin 1026 -> 1026 bytes .../baseline/k_030___multiple_groups.js | 1 - .../keyboards/baseline/k_031___caps_lock.js | 1 - .../keyboards/baseline/k_031___caps_lock.kmx | Bin 650 -> 0 bytes .../baseline/k_032___caps_control.js | 1 - .../baseline/k_032___caps_control.kmx | Bin 880 -> 0 bytes .../baseline/k_033___caps_always_off.js | 1 - .../baseline/k_033___caps_always_off.kmx | Bin 572 -> 0 bytes .../k_034___options_double_set_reset.js | 1 - .../k_034___options_double_set_reset.kmx | Bin 674 -> 0 bytes .../k_035___options_double_set_staged.js | 1 - .../k_035___options_double_set_staged.kmx | Bin 718 -> 0 bytes .../k_036___options___double_reset_staged.js | 1 - .../k_037___options___double_reset.js | 1 - .../k_037___options___double_reset.kmx | Bin 584 -> 0 bytes .../keyboards/baseline/k_038___punctkeys.js | 1 - .../keyboards/baseline/k_038___punctkeys.kmx | Bin 642 -> 0 bytes .../baseline/k_039___generic_ctrlalt.js | 1 - .../baseline/k_039___generic_ctrlalt.kmx | Bin 374 -> 0 bytes .../k_0400___groups_and_virtual_keys.js | 69 +++++ ...n => k_0400___groups_and_virtual_keys.kmn} | 2 +- .../k_0400___groups_and_virtual_keys.kmx | Bin 0 -> 766 bytes .../baseline/k_0401___multiple_groups.js | 73 +++++ ...roups.kmn => k_0401___multiple_groups.kmn} | 2 +- ...roups.kmx => k_0401___multiple_groups.kmx} | Bin 596 -> 596 bytes .../baseline/k_0402___output_and_keystroke.js | 87 ++++++ ....kmn => k_0402___output_and_keystroke.kmn} | 2 +- .../k_0402___output_and_keystroke.kmx | Bin 0 -> 726 bytes .../baseline/k_040___long_context.js | 1 - .../baseline/k_040___long_context.kmx | Bin 366 -> 0 bytes .../k_041___long_context_and_deadkeys.js | 1 - .../k_041___long_context_and_deadkeys.kmx | Bin 1816 -> 0 bytes ...k_042___long_context_and_split_deadkeys.js | 1 - ..._042___long_context_and_split_deadkeys.kmx | Bin 1072 -> 0 bytes .../baseline/k_043___output_and_keystroke.js | 1 - .../baseline/k_043___output_and_keystroke.kmx | Bin 724 -> 0 bytes .../baseline/k_044___if_and_context.js | 1 - .../baseline/k_044___if_and_context.kmx | Bin 500 -> 0 bytes .../baseline/k_045___deadkey_and_context.js | 1 - .../baseline/k_045___deadkey_and_context.kmx | Bin 576 -> 0 bytes .../baseline/k_046___deadkey_and_contextex.js | 1 - .../k_046___deadkey_and_contextex.kmx | Bin 566 -> 0 bytes .../k_047___caps_always_off_initially_on.js | 1 - .../k_047___caps_always_off_initially_on.kmx | Bin 598 -> 0 bytes .../k_048___modifier_keys_keep_context.js | 1 - .../k_048___modifier_keys_keep_context.kmx | Bin 402 -> 0 bytes .../k_049___enter_invalidates_context.js | 1 - .../k_049___enter_invalidates_context.kmx | Bin 376 -> 0 bytes .../keyboards/baseline/k_0500___options.js | 64 ++++ ...021___options.kmn => k_0500___options.kmn} | 4 +- .../keyboards/baseline/k_0500___options.kmx | Bin 0 -> 558 bytes .../baseline/k_0501___options_with_preset.js | 66 +++++ ...t.kmn => k_0501___options_with_preset.kmn} | 4 +- .../baseline/k_0501___options_with_preset.kmx | Bin 0 -> 594 bytes .../baseline/k_0502___options_with_save.js | 71 +++++ ...ave.kmn => k_0502___options_with_save.kmn} | 4 +- .../baseline/k_0502___options_with_save.kmx | Bin 0 -> 608 bytes .../k_0503___options_with_save_and_preset.js | 72 +++++ ...k_0503___options_with_save_and_preset.kmn} | 4 +- .../k_0503___options_with_save_and_preset.kmx | Bin 0 -> 658 bytes .../baseline/k_0504___options_with_reset.js | 71 +++++ ...et.kmn => k_0504___options_with_reset.kmn} | 4 +- .../baseline/k_0504___options_with_reset.kmx | Bin 0 -> 610 bytes .../k_0505___options_double_set_reset.js | 66 +++++ ... => k_0505___options_double_set_reset.kmn} | 4 +- .../k_0505___options_double_set_reset.kmx | Bin 0 -> 676 bytes .../k_0506___options_double_set_staged.js | 77 +++++ ...=> k_0506___options_double_set_staged.kmn} | 2 +- .../k_0506___options_double_set_staged.kmx | Bin 0 -> 720 bytes .../k_0507___options___double_reset_staged.js | 63 ++++ ..._0507___options___double_reset_staged.kmn} | 2 +- ..._0507___options___double_reset_staged.kmx} | Bin 616 -> 616 bytes .../k_0508___options___double_reset.js | 58 ++++ ...mn => k_0508___options___double_reset.kmn} | 4 +- .../k_0508___options___double_reset.kmx | Bin 0 -> 586 bytes .../baseline/k_050___nul_and_context.js | 1 - .../baseline/k_050___nul_and_context.kmx | Bin 404 -> 0 bytes .../baseline/k_051___if_and_context.js | 1 - .../baseline/k_051___if_and_context.kmx | Bin 450 -> 0 bytes .../baseline/k_052___nul_and_index.js | 1 - .../baseline/k_052___nul_and_index.kmx | Bin 442 -> 0 bytes .../baseline/k_053___if_and_index.js | 1 - .../baseline/k_053___if_and_index.kmx | Bin 488 -> 0 bytes .../baseline/k_054___nul_and_contextex.kmx | Bin 420 -> 0 bytes .../k_055___deadkey_cancelled_by_arrow.js | 1 - .../k_055___deadkey_cancelled_by_arrow.kmx | Bin 474 -> 0 bytes .../baseline/k_0600___system_stores.js | 211 +++++++++++++ ..._stores.kmn => k_0600___system_stores.kmn} | 4 +- .../baseline/k_0600___system_stores.kmx | Bin 0 -> 1974 bytes .../baseline/k_0601___system_stores_2.js | 211 +++++++++++++ ...res_2.kmn => k_0601___system_stores_2.kmn} | 4 +- .../baseline/k_0601___system_stores_2.kmx | Bin 0 -> 1970 bytes .../keyboards/baseline/k_0700___caps_lock.js | 103 +++++++ ...__caps_lock.kmn => k_0700___caps_lock.kmn} | 2 +- .../keyboards/baseline/k_0700___caps_lock.kmx | Bin 0 -> 652 bytes .../baseline/k_0701___caps_control.js | 131 +++++++++ ..._control.kmn => k_0701___caps_control.kmn} | 2 +- .../baseline/k_0701___caps_control.kmx | Bin 0 -> 882 bytes .../baseline/k_0702___caps_always_off.js | 75 +++++ ...s_off.kmn => k_0702___caps_always_off.kmn} | 2 +- .../baseline/k_0702___caps_always_off.kmx | Bin 0 -> 574 bytes .../k_0703___caps_always_off_initially_on.js | 75 +++++ ...k_0703___caps_always_off_initially_on.kmn} | 2 +- .../k_0703___caps_always_off_initially_on.kmx | Bin 0 -> 600 bytes .../baseline/k_0800___long_context.js | 40 +++ ..._context.kmn => k_0800___long_context.kmn} | 2 +- .../baseline/k_0800___long_context.kmx | Bin 0 -> 368 bytes .../k_0801___long_context_and_deadkeys.js | 75 +++++ ...=> k_0801___long_context_and_deadkeys.kmn} | 2 +- .../k_0801___long_context_and_deadkeys.kmx | Bin 0 -> 1818 bytes ..._0802___long_context_and_split_deadkeys.js | 57 ++++ ...802___long_context_and_split_deadkeys.kmn} | 2 +- ...0802___long_context_and_split_deadkeys.kmx | Bin 0 -> 1074 bytes .../baseline/k_0803___if_and_context.js | 51 ++++ ...ontext.kmn => k_0803___if_and_context.kmn} | 2 +- .../baseline/k_0803___if_and_context.kmx | Bin 0 -> 502 bytes .../baseline/k_0804___deadkey_and_context.js | 64 ++++ ...t.kmn => k_0804___deadkey_and_context.kmn} | 2 +- .../baseline/k_0804___deadkey_and_context.kmx | Bin 0 -> 578 bytes .../k_0805___deadkey_and_contextex.js | 60 ++++ ...kmn => k_0805___deadkey_and_contextex.kmn} | 2 +- .../k_0805___deadkey_and_contextex.kmx | Bin 0 -> 568 bytes .../k_0806___modifier_keys_keep_context.js | 40 +++ ...> k_0806___modifier_keys_keep_context.kmn} | 2 +- .../k_0806___modifier_keys_keep_context.kmx | Bin 0 -> 404 bytes .../k_0807___enter_invalidates_context.js | 40 +++ ...=> k_0807___enter_invalidates_context.kmn} | 2 +- .../k_0807___enter_invalidates_context.kmx | Bin 0 -> 378 bytes .../baseline/k_0808___nul_and_context.js | 43 +++ ...ntext.kmn => k_0808___nul_and_context.kmn} | 2 +- .../baseline/k_0808___nul_and_context.kmx | Bin 0 -> 406 bytes .../baseline/k_0809___if_and_context.js | 45 +++ ...ontext.kmn => k_0809___if_and_context.kmn} | 2 +- .../baseline/k_0809___if_and_context.kmx | Bin 0 -> 452 bytes .../baseline/k_0810___nul_and_index.js | 44 +++ ...d_index.kmn => k_0810___nul_and_index.kmn} | 2 +- .../baseline/k_0810___nul_and_index.kmx | Bin 0 -> 444 bytes .../baseline/k_0811___if_and_index.js | 46 +++ ...nd_index.kmn => k_0811___if_and_index.kmn} | 2 +- .../baseline/k_0811___if_and_index.kmx | Bin 0 -> 490 bytes ...tex.kmn => k_0812___nul_and_contextex.kmn} | 2 +- .../baseline/k_0812___nul_and_contextex.kmx | Bin 0 -> 422 bytes .../k_0813___deadkey_cancelled_by_arrow.js | 52 ++++ ...> k_0813___deadkey_cancelled_by_arrow.kmn} | 2 +- .../k_0813___deadkey_cancelled_by_arrow.kmx | Bin 0 -> 476 bytes .../resources/keyboards/options_with_save.js | 4 +- .../keyboards/test_8568_deadkeys.kmn | 2 +- .../tests/unit/km_core_keyboard_api.tests.cpp | 2 +- .../unit/kmnkbd/action_set_api.tests.cpp | 2 +- core/tests/unit/kmnkbd/debug_api.tests.cpp | 18 +- .../unit/kmnkbd/state_context_api.tests.cpp | 36 +-- core/tests/unit/kmx/README.md | 4 +- core/tests/unit/kmx/meson.build | 106 +++---- core/tests/unit/wasm/wasm.tests.js | 22 +- developer/src/kmc-kmn/test/compiler.tests.ts | 6 +- .../test/fixtures/kmw/test_options.kmn | 2 +- developer/src/kmcmplib/tests/meson.build | 103 +++---- docs/settings/linux/launch.json | 6 +- linux/ibus-keyman/tests/README.md | 4 +- linux/ibus-keyman/tests/testfixture.cpp | 4 +- resources/docker-images/README.md | 2 +- .../test/auto/e2e/baseline/baseline.tests.ts | 96 +++--- 275 files changed, 3892 insertions(+), 482 deletions(-) create mode 100644 common/test/keyboards/baseline/k_0000___null_keyboard.js rename common/test/keyboards/baseline/{k_000___null_keyboard.kmn => k_0000___null_keyboard.kmn} (84%) create mode 100644 common/test/keyboards/baseline/k_0000___null_keyboard.kmx create mode 100644 common/test/keyboards/baseline/k_0001___nul.js rename common/test/keyboards/baseline/{k_003___nul.kmn => k_0001___nul.kmn} (83%) create mode 100644 common/test/keyboards/baseline/k_0001___nul.kmx create mode 100644 common/test/keyboards/baseline/k_0002___nul_with_initial_context.js rename common/test/keyboards/baseline/{k_005___nul_with_initial_context.kmn => k_0002___nul_with_initial_context.kmn} (83%) create mode 100644 common/test/keyboards/baseline/k_0002___nul_with_initial_context.kmx create mode 100644 common/test/keyboards/baseline/k_0003___nul_testing.js rename common/test/keyboards/baseline/{k_018___nul_testing.kmn => k_0003___nul_testing.kmn} (87%) create mode 100644 common/test/keyboards/baseline/k_0003___nul_testing.kmx create mode 100644 common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.js rename common/test/keyboards/baseline/{k_017___space_mnemonic_kbd.kmn => k_0004___space_mnemonic_kbd.kmn} (90%) create mode 100644 common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.kmx create mode 100644 common/test/keyboards/baseline/k_0005___beep.js rename common/test/keyboards/baseline/{k_029___beep.kmn => k_0005___beep.kmn} (79%) create mode 100644 common/test/keyboards/baseline/k_0005___beep.kmx delete mode 100755 common/test/keyboards/baseline/k_000___null_keyboard.js delete mode 100644 common/test/keyboards/baseline/k_000___null_keyboard.kmx delete mode 100755 common/test/keyboards/baseline/k_001___basic_input_unicodei.js delete mode 100644 common/test/keyboards/baseline/k_001___basic_input_unicodei.kmx delete mode 100755 common/test/keyboards/baseline/k_002___basic_input_unicode.js delete mode 100644 common/test/keyboards/baseline/k_002___basic_input_unicode.kmx delete mode 100755 common/test/keyboards/baseline/k_003___nul.js delete mode 100644 common/test/keyboards/baseline/k_003___nul.kmx delete mode 100755 common/test/keyboards/baseline/k_004___basic_input__shift_2_.js delete mode 100644 common/test/keyboards/baseline/k_004___basic_input__shift_2_.kmx delete mode 100755 common/test/keyboards/baseline/k_005___nul_with_initial_context.js delete mode 100644 common/test/keyboards/baseline/k_005___nul_with_initial_context.kmx delete mode 100755 common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.js delete mode 100644 common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.kmx delete mode 100755 common/test/keyboards/baseline/k_007___vkey_input__ctrl_alt_.js delete mode 100644 common/test/keyboards/baseline/k_007___vkey_input__ctrl_alt_.kmx delete mode 100755 common/test/keyboards/baseline/k_008___vkey_input__ctrl_alt_2_.js delete mode 100644 common/test/keyboards/baseline/k_008___vkey_input__ctrl_alt_2_.kmx create mode 100644 common/test/keyboards/baseline/k_0100___basic_input_unicodei.js rename common/test/keyboards/baseline/{k_001___basic_input_unicodei.kmn => k_0100___basic_input_unicodei.kmn} (85%) create mode 100644 common/test/keyboards/baseline/k_0100___basic_input_unicodei.kmx create mode 100644 common/test/keyboards/baseline/k_0101___basic_input_unicode.js rename common/test/keyboards/baseline/{k_002___basic_input_unicode.kmn => k_0101___basic_input_unicode.kmn} (90%) create mode 100644 common/test/keyboards/baseline/k_0101___basic_input_unicode.kmx create mode 100644 common/test/keyboards/baseline/k_0102___basic_input__shift_2_.js rename common/test/keyboards/baseline/{k_004___basic_input__shift_2_.kmn => k_0102___basic_input__shift_2_.kmn} (85%) create mode 100644 common/test/keyboards/baseline/k_0102___basic_input__shift_2_.kmx create mode 100644 common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.js rename common/test/keyboards/baseline/{k_006___vkey_input__shift_ctrl_.kmn => k_0103___vkey_input__shift_ctrl_.kmn} (86%) create mode 100644 common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.kmx create mode 100644 common/test/keyboards/baseline/k_0104___vkey_input__ctrl_alt_.js rename common/test/keyboards/baseline/{k_007___vkey_input__ctrl_alt_.kmn => k_0104___vkey_input__ctrl_alt_.kmn} (85%) create mode 100644 common/test/keyboards/baseline/k_0104___vkey_input__ctrl_alt_.kmx create mode 100644 common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.js rename common/test/keyboards/baseline/{k_008___vkey_input__ctrl_alt_2_.kmn => k_0105___vkey_input__ctrl_alt_2_.kmn} (87%) create mode 100644 common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.kmx create mode 100644 common/test/keyboards/baseline/k_0106___smp.js rename common/test/keyboards/baseline/{k_028___smp.kmn => k_0106___smp.kmn} (94%) create mode 100644 common/test/keyboards/baseline/k_0106___smp.kmx create mode 100644 common/test/keyboards/baseline/k_0107___punctkeys.js rename common/test/keyboards/baseline/{k_038___punctkeys.kmn => k_0107___punctkeys.kmn} (92%) create mode 100644 common/test/keyboards/baseline/k_0107___punctkeys.kmx delete mode 100755 common/test/keyboards/baseline/k_012___ralt.js delete mode 100644 common/test/keyboards/baseline/k_012___ralt.kmx delete mode 100755 common/test/keyboards/baseline/k_013___deadkeys.js delete mode 100644 common/test/keyboards/baseline/k_013___deadkeys.kmx delete mode 100755 common/test/keyboards/baseline/k_014___groups_and_virtual_keys.js delete mode 100644 common/test/keyboards/baseline/k_014___groups_and_virtual_keys.kmx delete mode 100755 common/test/keyboards/baseline/k_015___ralt_2.js delete mode 100644 common/test/keyboards/baseline/k_015___ralt_2.kmx delete mode 100755 common/test/keyboards/baseline/k_017___space_mnemonic_kbd.js delete mode 100644 common/test/keyboards/baseline/k_017___space_mnemonic_kbd.kmx delete mode 100755 common/test/keyboards/baseline/k_018___nul_testing.js delete mode 100644 common/test/keyboards/baseline/k_018___nul_testing.kmx delete mode 100755 common/test/keyboards/baseline/k_019___multiple_deadkeys.js delete mode 100644 common/test/keyboards/baseline/k_019___multiple_deadkeys.kmx create mode 100644 common/test/keyboards/baseline/k_0200___ralt.js rename common/test/keyboards/baseline/{k_012___ralt.kmn => k_0200___ralt.kmn} (78%) create mode 100644 common/test/keyboards/baseline/k_0200___ralt.kmx create mode 100644 common/test/keyboards/baseline/k_0201___ralt_2.js rename common/test/keyboards/baseline/{k_015___ralt_2.kmn => k_0201___ralt_2.kmn} (71%) create mode 100644 common/test/keyboards/baseline/k_0201___ralt_2.kmx create mode 100644 common/test/keyboards/baseline/k_0203___generic_ctrlalt.js rename common/test/keyboards/baseline/{k_039___generic_ctrlalt.kmn => k_0203___generic_ctrlalt.kmn} (84%) create mode 100644 common/test/keyboards/baseline/k_0203___generic_ctrlalt.kmx delete mode 100755 common/test/keyboards/baseline/k_020___deadkeys_and_backspace.js delete mode 100755 common/test/keyboards/baseline/k_021___options.js delete mode 100644 common/test/keyboards/baseline/k_021___options.kmx delete mode 100755 common/test/keyboards/baseline/k_022___options_with_preset.js delete mode 100644 common/test/keyboards/baseline/k_022___options_with_preset.kmx delete mode 100755 common/test/keyboards/baseline/k_023___options_with_save.js delete mode 100644 common/test/keyboards/baseline/k_023___options_with_save.kmx delete mode 100755 common/test/keyboards/baseline/k_024___options_with_save_and_preset.js delete mode 100644 common/test/keyboards/baseline/k_024___options_with_save_and_preset.kmx delete mode 100755 common/test/keyboards/baseline/k_025___options_with_reset.js delete mode 100644 common/test/keyboards/baseline/k_025___options_with_reset.kmx delete mode 100755 common/test/keyboards/baseline/k_026___system_stores.js delete mode 100644 common/test/keyboards/baseline/k_026___system_stores.kmx delete mode 100755 common/test/keyboards/baseline/k_027___system_stores_2.js delete mode 100644 common/test/keyboards/baseline/k_027___system_stores_2.kmx delete mode 100755 common/test/keyboards/baseline/k_028___smp.js delete mode 100644 common/test/keyboards/baseline/k_028___smp.kmx delete mode 100755 common/test/keyboards/baseline/k_029___beep.js delete mode 100644 common/test/keyboards/baseline/k_029___beep.kmx create mode 100644 common/test/keyboards/baseline/k_0300___deadkeys.js rename common/test/keyboards/baseline/{k_013___deadkeys.kmn => k_0300___deadkeys.kmn} (87%) create mode 100644 common/test/keyboards/baseline/k_0300___deadkeys.kmx create mode 100644 common/test/keyboards/baseline/k_0301___multiple_deadkeys.js rename common/test/keyboards/baseline/{k_019___multiple_deadkeys.kmn => k_0301___multiple_deadkeys.kmn} (97%) create mode 100644 common/test/keyboards/baseline/k_0301___multiple_deadkeys.kmx create mode 100644 common/test/keyboards/baseline/k_0302___deadkeys_and_backspace.js rename common/test/keyboards/baseline/{k_020___deadkeys_and_backspace.kmn => k_0302___deadkeys_and_backspace.kmn} (96%) rename common/test/keyboards/baseline/{k_020___deadkeys_and_backspace.kmx => k_0302___deadkeys_and_backspace.kmx} (87%) delete mode 100755 common/test/keyboards/baseline/k_030___multiple_groups.js delete mode 100755 common/test/keyboards/baseline/k_031___caps_lock.js delete mode 100644 common/test/keyboards/baseline/k_031___caps_lock.kmx delete mode 100755 common/test/keyboards/baseline/k_032___caps_control.js delete mode 100644 common/test/keyboards/baseline/k_032___caps_control.kmx delete mode 100755 common/test/keyboards/baseline/k_033___caps_always_off.js delete mode 100644 common/test/keyboards/baseline/k_033___caps_always_off.kmx delete mode 100755 common/test/keyboards/baseline/k_034___options_double_set_reset.js delete mode 100644 common/test/keyboards/baseline/k_034___options_double_set_reset.kmx delete mode 100755 common/test/keyboards/baseline/k_035___options_double_set_staged.js delete mode 100644 common/test/keyboards/baseline/k_035___options_double_set_staged.kmx delete mode 100755 common/test/keyboards/baseline/k_036___options___double_reset_staged.js delete mode 100755 common/test/keyboards/baseline/k_037___options___double_reset.js delete mode 100644 common/test/keyboards/baseline/k_037___options___double_reset.kmx delete mode 100755 common/test/keyboards/baseline/k_038___punctkeys.js delete mode 100644 common/test/keyboards/baseline/k_038___punctkeys.kmx delete mode 100755 common/test/keyboards/baseline/k_039___generic_ctrlalt.js delete mode 100644 common/test/keyboards/baseline/k_039___generic_ctrlalt.kmx create mode 100644 common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.js rename common/test/keyboards/baseline/{k_014___groups_and_virtual_keys.kmn => k_0400___groups_and_virtual_keys.kmn} (92%) create mode 100644 common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.kmx create mode 100644 common/test/keyboards/baseline/k_0401___multiple_groups.js rename common/test/keyboards/baseline/{k_030___multiple_groups.kmn => k_0401___multiple_groups.kmn} (90%) rename common/test/keyboards/baseline/{k_030___multiple_groups.kmx => k_0401___multiple_groups.kmx} (67%) create mode 100644 common/test/keyboards/baseline/k_0402___output_and_keystroke.js rename common/test/keyboards/baseline/{k_043___output_and_keystroke.kmn => k_0402___output_and_keystroke.kmn} (90%) create mode 100644 common/test/keyboards/baseline/k_0402___output_and_keystroke.kmx delete mode 100755 common/test/keyboards/baseline/k_040___long_context.js delete mode 100644 common/test/keyboards/baseline/k_040___long_context.kmx delete mode 100755 common/test/keyboards/baseline/k_041___long_context_and_deadkeys.js delete mode 100644 common/test/keyboards/baseline/k_041___long_context_and_deadkeys.kmx delete mode 100755 common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.js delete mode 100644 common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.kmx delete mode 100755 common/test/keyboards/baseline/k_043___output_and_keystroke.js delete mode 100644 common/test/keyboards/baseline/k_043___output_and_keystroke.kmx delete mode 100755 common/test/keyboards/baseline/k_044___if_and_context.js delete mode 100644 common/test/keyboards/baseline/k_044___if_and_context.kmx delete mode 100755 common/test/keyboards/baseline/k_045___deadkey_and_context.js delete mode 100644 common/test/keyboards/baseline/k_045___deadkey_and_context.kmx delete mode 100755 common/test/keyboards/baseline/k_046___deadkey_and_contextex.js delete mode 100644 common/test/keyboards/baseline/k_046___deadkey_and_contextex.kmx delete mode 100755 common/test/keyboards/baseline/k_047___caps_always_off_initially_on.js delete mode 100644 common/test/keyboards/baseline/k_047___caps_always_off_initially_on.kmx delete mode 100755 common/test/keyboards/baseline/k_048___modifier_keys_keep_context.js delete mode 100644 common/test/keyboards/baseline/k_048___modifier_keys_keep_context.kmx delete mode 100755 common/test/keyboards/baseline/k_049___enter_invalidates_context.js delete mode 100644 common/test/keyboards/baseline/k_049___enter_invalidates_context.kmx create mode 100644 common/test/keyboards/baseline/k_0500___options.js rename common/test/keyboards/baseline/{k_021___options.kmn => k_0500___options.kmn} (88%) create mode 100644 common/test/keyboards/baseline/k_0500___options.kmx create mode 100644 common/test/keyboards/baseline/k_0501___options_with_preset.js rename common/test/keyboards/baseline/{k_022___options_with_preset.kmn => k_0501___options_with_preset.kmn} (88%) create mode 100644 common/test/keyboards/baseline/k_0501___options_with_preset.kmx create mode 100644 common/test/keyboards/baseline/k_0502___options_with_save.js rename common/test/keyboards/baseline/{k_023___options_with_save.kmn => k_0502___options_with_save.kmn} (88%) create mode 100644 common/test/keyboards/baseline/k_0502___options_with_save.kmx create mode 100644 common/test/keyboards/baseline/k_0503___options_with_save_and_preset.js rename common/test/keyboards/baseline/{k_024___options_with_save_and_preset.kmn => k_0503___options_with_save_and_preset.kmn} (86%) create mode 100644 common/test/keyboards/baseline/k_0503___options_with_save_and_preset.kmx create mode 100644 common/test/keyboards/baseline/k_0504___options_with_reset.js rename common/test/keyboards/baseline/{k_025___options_with_reset.kmn => k_0504___options_with_reset.kmn} (87%) create mode 100644 common/test/keyboards/baseline/k_0504___options_with_reset.kmx create mode 100644 common/test/keyboards/baseline/k_0505___options_double_set_reset.js rename common/test/keyboards/baseline/{k_034___options_double_set_reset.kmn => k_0505___options_double_set_reset.kmn} (87%) create mode 100644 common/test/keyboards/baseline/k_0505___options_double_set_reset.kmx create mode 100644 common/test/keyboards/baseline/k_0506___options_double_set_staged.js rename common/test/keyboards/baseline/{k_035___options_double_set_staged.kmn => k_0506___options_double_set_staged.kmn} (90%) create mode 100644 common/test/keyboards/baseline/k_0506___options_double_set_staged.kmx create mode 100644 common/test/keyboards/baseline/k_0507___options___double_reset_staged.js rename common/test/keyboards/baseline/{k_036___options___double_reset_staged.kmn => k_0507___options___double_reset_staged.kmn} (88%) rename common/test/keyboards/baseline/{k_036___options___double_reset_staged.kmx => k_0507___options___double_reset_staged.kmx} (79%) create mode 100644 common/test/keyboards/baseline/k_0508___options___double_reset.js rename common/test/keyboards/baseline/{k_037___options___double_reset.kmn => k_0508___options___double_reset.kmn} (86%) create mode 100644 common/test/keyboards/baseline/k_0508___options___double_reset.kmx delete mode 100755 common/test/keyboards/baseline/k_050___nul_and_context.js delete mode 100644 common/test/keyboards/baseline/k_050___nul_and_context.kmx delete mode 100755 common/test/keyboards/baseline/k_051___if_and_context.js delete mode 100644 common/test/keyboards/baseline/k_051___if_and_context.kmx delete mode 100755 common/test/keyboards/baseline/k_052___nul_and_index.js delete mode 100644 common/test/keyboards/baseline/k_052___nul_and_index.kmx delete mode 100755 common/test/keyboards/baseline/k_053___if_and_index.js delete mode 100644 common/test/keyboards/baseline/k_053___if_and_index.kmx delete mode 100644 common/test/keyboards/baseline/k_054___nul_and_contextex.kmx delete mode 100755 common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.js delete mode 100644 common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.kmx create mode 100644 common/test/keyboards/baseline/k_0600___system_stores.js rename common/test/keyboards/baseline/{k_026___system_stores.kmn => k_0600___system_stores.kmn} (94%) create mode 100644 common/test/keyboards/baseline/k_0600___system_stores.kmx create mode 100644 common/test/keyboards/baseline/k_0601___system_stores_2.js rename common/test/keyboards/baseline/{k_027___system_stores_2.kmn => k_0601___system_stores_2.kmn} (93%) create mode 100644 common/test/keyboards/baseline/k_0601___system_stores_2.kmx create mode 100644 common/test/keyboards/baseline/k_0700___caps_lock.js rename common/test/keyboards/baseline/{k_031___caps_lock.kmn => k_0700___caps_lock.kmn} (93%) create mode 100644 common/test/keyboards/baseline/k_0700___caps_lock.kmx create mode 100644 common/test/keyboards/baseline/k_0701___caps_control.js rename common/test/keyboards/baseline/{k_032___caps_control.kmn => k_0701___caps_control.kmn} (96%) create mode 100644 common/test/keyboards/baseline/k_0701___caps_control.kmx create mode 100644 common/test/keyboards/baseline/k_0702___caps_always_off.js rename common/test/keyboards/baseline/{k_033___caps_always_off.kmn => k_0702___caps_always_off.kmn} (90%) create mode 100644 common/test/keyboards/baseline/k_0702___caps_always_off.kmx create mode 100644 common/test/keyboards/baseline/k_0703___caps_always_off_initially_on.js rename common/test/keyboards/baseline/{k_047___caps_always_off_initially_on.kmn => k_0703___caps_always_off_initially_on.kmn} (90%) create mode 100644 common/test/keyboards/baseline/k_0703___caps_always_off_initially_on.kmx create mode 100644 common/test/keyboards/baseline/k_0800___long_context.js rename common/test/keyboards/baseline/{k_040___long_context.kmn => k_0800___long_context.kmn} (91%) create mode 100644 common/test/keyboards/baseline/k_0800___long_context.kmx create mode 100644 common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.js rename common/test/keyboards/baseline/{k_041___long_context_and_deadkeys.kmn => k_0801___long_context_and_deadkeys.kmn} (96%) create mode 100644 common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.kmx create mode 100644 common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.js rename common/test/keyboards/baseline/{k_042___long_context_and_split_deadkeys.kmn => k_0802___long_context_and_split_deadkeys.kmn} (93%) create mode 100644 common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.kmx create mode 100644 common/test/keyboards/baseline/k_0803___if_and_context.js rename common/test/keyboards/baseline/{k_044___if_and_context.kmn => k_0803___if_and_context.kmn} (91%) create mode 100644 common/test/keyboards/baseline/k_0803___if_and_context.kmx create mode 100644 common/test/keyboards/baseline/k_0804___deadkey_and_context.js rename common/test/keyboards/baseline/{k_045___deadkey_and_context.kmn => k_0804___deadkey_and_context.kmn} (90%) create mode 100644 common/test/keyboards/baseline/k_0804___deadkey_and_context.kmx create mode 100644 common/test/keyboards/baseline/k_0805___deadkey_and_contextex.js rename common/test/keyboards/baseline/{k_046___deadkey_and_contextex.kmn => k_0805___deadkey_and_contextex.kmn} (89%) create mode 100644 common/test/keyboards/baseline/k_0805___deadkey_and_contextex.kmx create mode 100644 common/test/keyboards/baseline/k_0806___modifier_keys_keep_context.js rename common/test/keyboards/baseline/{k_048___modifier_keys_keep_context.kmn => k_0806___modifier_keys_keep_context.kmn} (85%) create mode 100644 common/test/keyboards/baseline/k_0806___modifier_keys_keep_context.kmx create mode 100644 common/test/keyboards/baseline/k_0807___enter_invalidates_context.js rename common/test/keyboards/baseline/{k_049___enter_invalidates_context.kmn => k_0807___enter_invalidates_context.kmn} (89%) create mode 100644 common/test/keyboards/baseline/k_0807___enter_invalidates_context.kmx create mode 100644 common/test/keyboards/baseline/k_0808___nul_and_context.js rename common/test/keyboards/baseline/{k_050___nul_and_context.kmn => k_0808___nul_and_context.kmn} (87%) create mode 100644 common/test/keyboards/baseline/k_0808___nul_and_context.kmx create mode 100644 common/test/keyboards/baseline/k_0809___if_and_context.js rename common/test/keyboards/baseline/{k_051___if_and_context.kmn => k_0809___if_and_context.kmn} (88%) create mode 100644 common/test/keyboards/baseline/k_0809___if_and_context.kmx create mode 100644 common/test/keyboards/baseline/k_0810___nul_and_index.js rename common/test/keyboards/baseline/{k_052___nul_and_index.kmn => k_0810___nul_and_index.kmn} (88%) create mode 100644 common/test/keyboards/baseline/k_0810___nul_and_index.kmx create mode 100644 common/test/keyboards/baseline/k_0811___if_and_index.js rename common/test/keyboards/baseline/{k_053___if_and_index.kmn => k_0811___if_and_index.kmn} (89%) create mode 100644 common/test/keyboards/baseline/k_0811___if_and_index.kmx rename common/test/keyboards/baseline/{k_054___nul_and_contextex.kmn => k_0812___nul_and_contextex.kmn} (88%) create mode 100644 common/test/keyboards/baseline/k_0812___nul_and_contextex.kmx create mode 100644 common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.js rename common/test/keyboards/baseline/{k_055___deadkey_cancelled_by_arrow.kmn => k_0813___deadkey_cancelled_by_arrow.kmn} (88%) create mode 100644 common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.kmx diff --git a/common/test/keyboards/baseline/README.md b/common/test/keyboards/baseline/README.md index cede107085..7894490d9b 100644 --- a/common/test/keyboards/baseline/README.md +++ b/common/test/keyboards/baseline/README.md @@ -4,11 +4,13 @@ This folder contains a set of keyboards that are used by multiple projects to verify behaviour, both for compilation, and for runtime tests. The following projects are known to use these keyboards: + * core -- .kmn files only, compiled with kmc during tests * developer/kmcmplib -- .kmn files, compiled for tests, and .kmx as reference * linux -- .kmn files for test steps only, .kmx files +* web -- .kmn files for test steps, .kmx and .js files -The .kmx files were built with kmcomp, not kmc, in order to ensure that +The .kmx and .js files were built with kmcomp, not kmc, in order to ensure that developer/kmcmplib gets a valid baseline reference. Once kmc is stable, it is possible that we will be able to use the kmc npm @@ -16,9 +18,11 @@ module to build .kmx for all projects that need them. ## Build parameters -Keyboards were built with debug information and no compiler version embedded, -with kmcomp 16.0.138: +The keyboards can be built with: -```bat -for %d in (*.kmn) do kmcomp -no-compiler-version -d %d +```bash +./build.sh build ``` + +This builds the keyboards with debug information and no compiler version +embedded. diff --git a/common/test/keyboards/baseline/baseline.kpj b/common/test/keyboards/baseline/baseline.kpj index 3ce7e9b83c..5e7c461aac 100644 --- a/common/test/keyboards/baseline/baseline.kpj +++ b/common/test/keyboards/baseline/baseline.kpj @@ -9,324 +9,324 @@ - id_k_000___null_keyboard - k_000___null_keyboard.kmn - k_000___null_keyboard.kmn + id_k_0000___null_keyboard + k_0000___null_keyboard.kmn + k_0000___null_keyboard.kmn 1.0 .kmn - id_k_001___basic_input_unicodei - k_001___basic_input_unicodei.kmn - k_001___basic_input_unicodei.kmn + id_k_0100___basic_input_unicodei + k_0100___basic_input_unicodei.kmn + k_0100___basic_input_unicodei.kmn 1.0 .kmn - id_k_002___basic_input_unicode - k_002___basic_input_unicode.kmn - k_002___basic_input_unicode.kmn + id_k_0101___basic_input_unicode + k_0101___basic_input_unicode.kmn + k_0101___basic_input_unicode.kmn 1.0 .kmn - id_k_003___nul - k_003___nul.kmn - k_003___nul.kmn + id_k_0001___nul + k_0001___nul.kmn + k_0001___nul.kmn 1.0 .kmn - id_k_004___basic_input__shift_2_ - k_004___basic_input__shift_2_.kmn - k_004___basic_input__shift_2_.kmn + id_k_0102___basic_input__shift_2_ + k_0102___basic_input__shift_2_.kmn + k_0102___basic_input__shift_2_.kmn 1.0 .kmn - id_k_005___nul_with_initial_context - k_005___nul_with_initial_context.kmn - k_005___nul_with_initial_context.kmn + id_k_0002___nul_with_initial_context + k_0002___nul_with_initial_context.kmn + k_0002___nul_with_initial_context.kmn 1.0 .kmn - id_k_006___vkey_input__shift_ctrl_ - k_006___vkey_input__shift_ctrl_.kmn - k_006___vkey_input__shift_ctrl_.kmn + id_k_0103___vkey_input__shift_ctrl_ + k_0103___vkey_input__shift_ctrl_.kmn + k_0103___vkey_input__shift_ctrl_.kmn 1.0 .kmn - id_k_007___vkey_input__ctrl_alt_ - k_007___vkey_input__ctrl_alt_.kmn - k_007___vkey_input__ctrl_alt_.kmn + id_k_0104___vkey_input__ctrl_alt_ + k_0104___vkey_input__ctrl_alt_.kmn + k_0104___vkey_input__ctrl_alt_.kmn 1.0 .kmn - id_k_008___vkey_input__ctrl_alt_2_ - k_008___vkey_input__ctrl_alt_2_.kmn - k_008___vkey_input__ctrl_alt_2_.kmn + id_k_0105___vkey_input__ctrl_alt_2_ + k_0105___vkey_input__ctrl_alt_2_.kmn + k_0105___vkey_input__ctrl_alt_2_.kmn 1.0 .kmn - id_k_012___ralt - k_012___ralt.kmn - k_012___ralt.kmn + id_k_0200___ralt + k_0200___ralt.kmn + k_0200___ralt.kmn 1.0 .kmn - id_k_013___deadkeys - k_013___deadkeys.kmn - k_013___deadkeys.kmn + id_k_0300___deadkeys + k_0300___deadkeys.kmn + k_0300___deadkeys.kmn 1.0 .kmn - id_k_014___groups_and_virtual_keys - k_014___groups_and_virtual_keys.kmn - k_014___groups_and_virtual_keys.kmn + id_k_0400___groups_and_virtual_keys + k_0400___groups_and_virtual_keys.kmn + k_0400___groups_and_virtual_keys.kmn 1.0 .kmn - id_k_015___ralt_2 - k_015___ralt_2.kmn - k_015___ralt_2.kmn + id_k_0201___ralt_2 + k_0201___ralt_2.kmn + k_0201___ralt_2.kmn 1.0 .kmn - id_k_017___space_mnemonic_kbd - k_017___space_mnemonic_kbd.kmn - k_017___space_mnemonic_kbd.kmn + id_k_0004___space_mnemonic_kbd + k_0004___space_mnemonic_kbd.kmn + k_0004___space_mnemonic_kbd.kmn 1.0 .kmn - id_k_018___nul_testing - k_018___nul_testing.kmn - k_018___nul_testing.kmn + id_k_0003___nul_testing + k_0003___nul_testing.kmn + k_0003___nul_testing.kmn 1.0 .kmn - id_k_019___multiple_deadkeys - k_019___multiple_deadkeys.kmn - k_019___multiple_deadkeys.kmn + id_k_0301___multiple_deadkeys + k_0301___multiple_deadkeys.kmn + k_0301___multiple_deadkeys.kmn 1.0 .kmn - id_k_020___deadkeys_and_backspace - k_020___deadkeys_and_backspace.kmn - k_020___deadkeys_and_backspace.kmn + id_k_0302___deadkeys_and_backspace + k_0302___deadkeys_and_backspace.kmn + k_0302___deadkeys_and_backspace.kmn 1.0 .kmn - id_k_021___options - k_021___options.kmn - k_021___options.kmn + id_k_0500___options + k_0500___options.kmn + k_0500___options.kmn 1.0 .kmn - id_k_022___options_with_preset - k_022___options_with_preset.kmn - k_022___options_with_preset.kmn + id_k_0501___options_with_preset + k_0501___options_with_preset.kmn + k_0501___options_with_preset.kmn 1.0 .kmn - id_k_023___options_with_save - k_023___options_with_save.kmn - k_023___options_with_save.kmn + id_k_0502___options_with_save + k_0502___options_with_save.kmn + k_0502___options_with_save.kmn 1.0 .kmn - id_k_024___options_with_save_and_preset - k_024___options_with_save_and_preset.kmn - k_024___options_with_save_and_preset.kmn + id_k_0503___options_with_save_and_preset + k_0503___options_with_save_and_preset.kmn + k_0503___options_with_save_and_preset.kmn 1.0 .kmn - id_k_025___options_with_reset - k_025___options_with_reset.kmn - k_025___options_with_reset.kmn + id_k_0504___options_with_reset + k_0504___options_with_reset.kmn + k_0504___options_with_reset.kmn 1.0 .kmn - id_k_026___system_stores - k_026___system_stores.kmn - k_026___system_stores.kmn + id_k_0600___system_stores + k_0600___system_stores.kmn + k_0600___system_stores.kmn 1.0 .kmn - id_k_027___system_stores_2 - k_027___system_stores_2.kmn - k_027___system_stores_2.kmn + id_k_0601___system_stores_2 + k_0601___system_stores_2.kmn + k_0601___system_stores_2.kmn 1.0 .kmn - id_k_028___smp - k_028___smp.kmn - k_028___smp.kmn + id_k_0106___smp + k_0106___smp.kmn + k_0106___smp.kmn 1.0 .kmn - id_k_029___beep - k_029___beep.kmn - k_029___beep.kmn + id_k_0005___beep + k_0005___beep.kmn + k_0005___beep.kmn 1.0 .kmn - id_k_030___multiple_groups - k_030___multiple_groups.kmn - k_030___multiple_groups.kmn + id_k_0401___multiple_groups + k_0401___multiple_groups.kmn + k_0401___multiple_groups.kmn 1.0 .kmn - id_k_031___caps_lock - k_031___caps_lock.kmn - k_031___caps_lock.kmn + id_k_0700___caps_lock + k_0700___caps_lock.kmn + k_0700___caps_lock.kmn 1.0 .kmn - id_k_032___caps_control - k_032___caps_control.kmn - k_032___caps_control.kmn + id_k_0701___caps_control + k_0701___caps_control.kmn + k_0701___caps_control.kmn 1.0 .kmn - id_k_033___caps_always_off - k_033___caps_always_off.kmn - k_033___caps_always_off.kmn + id_k_0702___caps_always_off + k_0702___caps_always_off.kmn + k_0702___caps_always_off.kmn 1.0 .kmn - id_k_034___options_double_set_reset - k_034___options_double_set_reset.kmn - k_034___options_double_set_reset.kmn + id_k_0505___options_double_set_reset + k_0505___options_double_set_reset.kmn + k_0505___options_double_set_reset.kmn 1.0 .kmn - id_k_035___options_double_set_staged - k_035___options_double_set_staged.kmn - k_035___options_double_set_staged.kmn + id_k_0506___options_double_set_staged + k_0506___options_double_set_staged.kmn + k_0506___options_double_set_staged.kmn 1.0 .kmn - id_k_036___options___double_reset_staged - k_036___options___double_reset_staged.kmn - k_036___options___double_reset_staged.kmn + id_k_0507___options___double_reset_staged + k_0507___options___double_reset_staged.kmn + k_0507___options___double_reset_staged.kmn 1.0 .kmn - id_k_037___options___double_reset - k_037___options___double_reset.kmn - k_037___options___double_reset.kmn + id_k_0508___options___double_reset + k_0508___options___double_reset.kmn + k_0508___options___double_reset.kmn 1.0 .kmn - id_k_038___punctkeys - k_038___punctkeys.kmn - k_038___punctkeys.kmn + id_k_0107___punctkeys + k_0107___punctkeys.kmn + k_0107___punctkeys.kmn 1.0 .kmn - id_k_039___generic_ctrlalt - k_039___generic_ctrlalt.kmn - k_039___generic_ctrlalt.kmn + id_k_0203___generic_ctrlalt + k_0203___generic_ctrlalt.kmn + k_0203___generic_ctrlalt.kmn 1.0 .kmn - id_k_040___long_context - k_040___long_context.kmn - k_040___long_context.kmn + id_k_0800___long_context + k_0800___long_context.kmn + k_0800___long_context.kmn 1.0 .kmn - id_k_041___long_context_and_deadkeys - k_041___long_context_and_deadkeys.kmn - k_041___long_context_and_deadkeys.kmn + id_k_0801___long_context_and_deadkeys + k_0801___long_context_and_deadkeys.kmn + k_0801___long_context_and_deadkeys.kmn 1.0 .kmn - id_k_042___long_context_and_split_deadkeys - k_042___long_context_and_split_deadkeys.kmn - k_042___long_context_and_split_deadkeys.kmn + id_k_0802___long_context_and_split_deadkeys + k_0802___long_context_and_split_deadkeys.kmn + k_0802___long_context_and_split_deadkeys.kmn 1.0 .kmn - id_k_043___output_and_keystroke - k_043___output_and_keystroke.kmn - k_043___output_and_keystroke.kmn + id_k_0402___output_and_keystroke + k_0402___output_and_keystroke.kmn + k_0402___output_and_keystroke.kmn 1.0 .kmn - id_k_044___if_and_context - k_044___if_and_context.kmn - k_044___if_and_context.kmn + id_k_0803___if_and_context + k_0803___if_and_context.kmn + k_0803___if_and_context.kmn 1.0 .kmn - id_k_045___deadkey_and_context - k_045___deadkey_and_context.kmn - k_045___deadkey_and_context.kmn + id_k_0804___deadkey_and_context + k_0804___deadkey_and_context.kmn + k_0804___deadkey_and_context.kmn 1.0 .kmn - id_k_046___deadkey_and_contextex - k_046___deadkey_and_contextex.kmn - k_046___deadkey_and_contextex.kmn + id_k_0805___deadkey_and_contextex + k_0805___deadkey_and_contextex.kmn + k_0805___deadkey_and_contextex.kmn 1.0 .kmn - id_k_047___caps_always_off_initially_on - k_047___caps_always_off_initially_on.kmn - k_047___caps_always_off_initially_on.kmn + id_k_0703___caps_always_off_initially_on + k_0703___caps_always_off_initially_on.kmn + k_0703___caps_always_off_initially_on.kmn 1.0 .kmn - id_k_048___modifier_keys_keep_context - k_048___modifier_keys_keep_context.kmn - k_048___modifier_keys_keep_context.kmn + id_k_0806___modifier_keys_keep_context + k_0806___modifier_keys_keep_context.kmn + k_0806___modifier_keys_keep_context.kmn 1.0 .kmn - id_k_049___enter_invalidates_context - k_049___enter_invalidates_context.kmn - k_049___enter_invalidates_context.kmn + id_k_0807___enter_invalidates_context + k_0807___enter_invalidates_context.kmn + k_0807___enter_invalidates_context.kmn 1.0 .kmn diff --git a/common/test/keyboards/baseline/build.sh b/common/test/keyboards/baseline/build.sh index 1428b5e0c4..3a1e8d9f1e 100755 --- a/common/test/keyboards/baseline/build.sh +++ b/common/test/keyboards/baseline/build.sh @@ -17,7 +17,7 @@ builder_parse "$@" builder_describe_outputs \ configure kmcomp/kmcomp.exe \ - build k_000___null_keyboard.kmx + build k_0000___null_keyboard.kmx do_configure() { mkdir -p kmcomp @@ -25,9 +25,15 @@ do_configure() { } do_build() { - local name + local name jsname for name in *.kmn; do - ./kmcomp/kmcomp.exe -no-compiler-version -d "$name" + jsname="$(basename "${name%.kmn}").js" + ./kmcomp/kmcomp.exe -no-compiler-version -d "${name}" + if [[ "${name}" != "k_0812___nul_and_contextex.kmn" ]]; then + # k_0812___nul_and_contextex.kmn fails to compile because contextex + # is not currently supported in context() match, so we skip it + ./kmcomp/kmcomp.exe -no-compiler-version -d "${name}" "${jsname}" + fi done } diff --git a/common/test/keyboards/baseline/k_0000___null_keyboard.js b/common/test/keyboards/baseline/k_0000___null_keyboard.js new file mode 100644 index 0000000000..076ec597c4 --- /dev/null +++ b/common/test/keyboards/baseline/k_0000___null_keyboard.js @@ -0,0 +1,28 @@ + +KeymanWeb.KR(new Keyboard_k_0000___null_keyboard()); + +function Keyboard_k_0000___null_keyboard() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0000___null_keyboard"; + this.KN="0000 - null keyboard"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_000___null_keyboard.kmn b/common/test/keyboards/baseline/k_0000___null_keyboard.kmn similarity index 84% rename from common/test/keyboards/baseline/k_000___null_keyboard.kmn rename to common/test/keyboards/baseline/k_0000___null_keyboard.kmn index ecae49acde..57321e6d63 100644 --- a/common/test/keyboards/baseline/k_000___null_keyboard.kmn +++ b/common/test/keyboards/baseline/k_0000___null_keyboard.kmn @@ -1,4 +1,4 @@ -store(&NAME) '000 - null keyboard' +store(&NAME) '0000 - null keyboard' c Description: Tests null keyboard c keys: [K_A][RALT K_B][SHIFT K_C] c expected: aC diff --git a/common/test/keyboards/baseline/k_0000___null_keyboard.kmx b/common/test/keyboards/baseline/k_0000___null_keyboard.kmx new file mode 100644 index 0000000000000000000000000000000000000000..dfc85b5e2a75c78953aab55f2e514ac73f4dc574 GIT binary patch literal 318 zcmX|+u?_)26h*H@5S5BXq0*5hq7)>e5E>-gVig;#WQD{ZD8v_t|L_N*rSuIdJ!dDo z-sH@@cXQvHnVvlwDk0gA`&C3N*a#$(H#zf&UxM@>jnJ4yIl=*QaE22k;RY8-!3&;{ zfe*aHJk6XqSkzKabM3X#M4qWF^k5ZK0#92lSp_YOZ>lv;Uk=`)25PCV4tZT=Gq0!} rK3^NTID?55RoS~{VxL|&RD;{w8dJHN;dSVfYP>7@C#4A_Ziza7;Y}tP literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0001___nul.js b/common/test/keyboards/baseline/k_0001___nul.js new file mode 100644 index 0000000000..d33ee337cf --- /dev/null +++ b/common/test/keyboards/baseline/k_0001___nul.js @@ -0,0 +1,42 @@ + +KeymanWeb.KR(new Keyboard_k_0001___nul()); + +function Keyboard_k_0001___nul() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0001___nul"; + this.KN="0001 - nul"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4000, 0x41)) { + if(k.KN(0,t)){ + r=m=1; // Line 13 + k.KO(0,t,"b"); + } + else if(k.KCM(1,t,"b",1)){ + r=m=1; // Line 14 + k.KO(1,t,"c"); + } + else if(1){ + r=m=1; // Line 15 + k.KO(0,t,"d"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_003___nul.kmn b/common/test/keyboards/baseline/k_0001___nul.kmn similarity index 83% rename from common/test/keyboards/baseline/k_003___nul.kmn rename to common/test/keyboards/baseline/k_0001___nul.kmn index 32f6e84839..44d92b628c 100644 --- a/common/test/keyboards/baseline/k_003___nul.kmn +++ b/common/test/keyboards/baseline/k_0001___nul.kmn @@ -1,8 +1,8 @@ -store(&NAME) '003 - nul' +store(&NAME) '0001 - nul' c Description: Tests nul context c keys: [K_A][K_A][K_A] c expected: cd -c context: +c context: store(&version) '6.0' diff --git a/common/test/keyboards/baseline/k_0001___nul.kmx b/common/test/keyboards/baseline/k_0001___nul.kmx new file mode 100644 index 0000000000000000000000000000000000000000..6795c349f5ca88367cf28a43109f64125adae061 GIT binary patch literal 380 zcmYL^JxT*n7)6gLn#P|>J4qF6B9lh2(|}k6ZA`#+%m@j@5h4bZEWkptg5WA_1D3AA zLb8Mu_TzcO(|mB=yZ3(Y4ovI1eZ@LdX5TZMm2fylr9KJTuyBONgxX0~A8zd4Yb%7 literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0002___nul_with_initial_context.js b/common/test/keyboards/baseline/k_0002___nul_with_initial_context.js new file mode 100644 index 0000000000..ca42f2a1f3 --- /dev/null +++ b/common/test/keyboards/baseline/k_0002___nul_with_initial_context.js @@ -0,0 +1,42 @@ + +KeymanWeb.KR(new Keyboard_k_0002___nul_with_initial_context()); + +function Keyboard_k_0002___nul_with_initial_context() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0002___nul_with_initial_context"; + this.KN="0002 - nul with initial context"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4000, 0x41)) { + if(k.KN(0,t)){ + r=m=1; // Line 13 + k.KO(0,t,"b"); + } + else if(k.KCM(1,t,"b",1)){ + r=m=1; // Line 14 + k.KO(1,t,"c"); + } + else if(1){ + r=m=1; // Line 15 + k.KO(0,t,"d"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_005___nul_with_initial_context.kmn b/common/test/keyboards/baseline/k_0002___nul_with_initial_context.kmn similarity index 83% rename from common/test/keyboards/baseline/k_005___nul_with_initial_context.kmn rename to common/test/keyboards/baseline/k_0002___nul_with_initial_context.kmn index f59016cbe1..4ae05e6ba4 100644 --- a/common/test/keyboards/baseline/k_005___nul_with_initial_context.kmn +++ b/common/test/keyboards/baseline/k_0002___nul_with_initial_context.kmn @@ -1,4 +1,4 @@ -store(&NAME) '005 - nul with initial context' +store(&NAME) '0002 - nul with initial context' c Description: Tests nul context with an initial context supplied c keys: [K_A][K_A] c expected: xdd diff --git a/common/test/keyboards/baseline/k_0002___nul_with_initial_context.kmx b/common/test/keyboards/baseline/k_0002___nul_with_initial_context.kmx new file mode 100644 index 0000000000000000000000000000000000000000..3d89b790f5c1efdd874bb9926f226f54a4851b42 GIT binary patch literal 422 zcmYL?yGlbr6h&7ss04g8Dp*LWbjsBtV5fp81TB1k*j*FB3nqfb*B59ZDXc7lScsqH z2Uz+8*EPeaXIL|P?=xqnb#$=LDAXQ~XRs<^vy7r%^UMrOOZitH>Ef)(lRV0t3}ql= z@+q$}F5mJc(^7M`DnT!J&P%3-7N^|PC8rmCW}dM^oki(!&AI0-1%1v`g;~&r6QR@Q z!ldsjcka+&mvwg7R5w|Qzcje9f60|o;WjM0V9RdZyLo&SR?Rjzj6Z~TJ5IrN1@`2( pMijyR&*i#_)E?M+mXJ-R>_tCJ*;LBj^zU+_FUzWXTY~Ed`~X>QFe?B6 literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0003___nul_testing.js b/common/test/keyboards/baseline/k_0003___nul_testing.js new file mode 100644 index 0000000000..330a614dba --- /dev/null +++ b/common/test/keyboards/baseline/k_0003___nul_testing.js @@ -0,0 +1,34 @@ + +KeymanWeb.KR(new Keyboard_k_0003___nul_testing()); + +function Keyboard_k_0003___nul_testing() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0003___nul_testing"; + this.KN="0003 - nul testing"; + this.KMINVER="9.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4000, 0x41)) { + if(k.KN(0,t)){ + r=m=1; // Line 12 + k.KO(0,t,"OK"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_018___nul_testing.kmn b/common/test/keyboards/baseline/k_0003___nul_testing.kmn similarity index 87% rename from common/test/keyboards/baseline/k_018___nul_testing.kmn rename to common/test/keyboards/baseline/k_0003___nul_testing.kmn index 20da4d4af7..87fc78f86f 100644 --- a/common/test/keyboards/baseline/k_018___nul_testing.kmn +++ b/common/test/keyboards/baseline/k_0003___nul_testing.kmn @@ -1,4 +1,4 @@ -store(&NAME) '018 - nul testing' +store(&NAME) '0003 - nul testing' c Description: Tests the processing of nul in LHS of rules c keys: [K_A][K_A] c expected: OKa diff --git a/common/test/keyboards/baseline/k_0003___nul_testing.kmx b/common/test/keyboards/baseline/k_0003___nul_testing.kmx new file mode 100644 index 0000000000000000000000000000000000000000..e30ca2494d2e94423d3ad0931da3603ea299dc3d GIT binary patch literal 386 zcmYL_J4yp#6h==lr~wNLQLsvtB48LFO*$2VhF}6_lvs`rB%rbI0g9C?u&@wUAg;p& zxByGnV5{f;M7+bf|99Uook8BG0(b9^Ia(>4HYK6g1I3S~Ox9(RhjHV)nP+*D1$mVh ziTMwClWF;qPnnRiv){h6vZ$Vu&<)?ZWNPSe!Y$_%j8dGL&se3(l8m_K%=gN!Oa0Ky zseLuNY_LO1-K3Fr)z~-QrB9olb==aF75!S8**2ehvBiP$vL9?YTXj>BcE>i@WY0T8 hj=131%P=Uxq5N6M;D4?#ni-dGEZs}bTk%iJ`d=jsEAs#V literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.js b/common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.js new file mode 100644 index 0000000000..a4ee094cb5 --- /dev/null +++ b/common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.js @@ -0,0 +1,46 @@ + +KeymanWeb.KR(new Keyboard_k_0004___space_mnemonic_kbd()); + +function Keyboard_k_0004___space_mnemonic_kbd() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0004___space_mnemonic_kbd"; + this.KN="0004 - space mnemonic kbd"; + this.KMINVER="9.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=1; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_main_0(t,e); + }; + this.g_main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4000, 0x20)) { + if(k.KCM(2,t,"ab",2)){ + r=m=1; // Line 14 + k.KO(2,t,"X"); + } + } + else if(k.KKM(e, 0x4000, 0x64)) { + if(k.KCM(2,t,"c ",2)){ + r=m=1; // Line 15 + k.KO(2,t,"Y"); + } + } + else if(k.KKM(e, 0x4000, 0x65)) { + if(k.KCM(2,t," d",2)){ + r=m=1; // Line 16 + k.KO(2,t,"Z"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_017___space_mnemonic_kbd.kmn b/common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.kmn similarity index 90% rename from common/test/keyboards/baseline/k_017___space_mnemonic_kbd.kmn rename to common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.kmn index 07e37ee681..2660d114d4 100644 --- a/common/test/keyboards/baseline/k_017___space_mnemonic_kbd.kmn +++ b/common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.kmn @@ -1,4 +1,4 @@ -store(&NAME) '017 - space mnemonic kbd' +store(&NAME) '0004 - space mnemonic kbd' c Description: Tests Space handling in mnemonic keyboards (failed with Win 98) c keys: [K_A][K_B][K_SPACE][K_C][K_SPACE][K_D][K_SPACE][K_D][K_E] c expected: XYZ diff --git a/common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.kmx b/common/test/keyboards/baseline/k_0004___space_mnemonic_kbd.kmx new file mode 100644 index 0000000000000000000000000000000000000000..b256ace5368ea0457911922440f569265136c804 GIT binary patch literal 508 zcmZ9Ize)o^5Ql$3h}tCDXeV2xOSoJtw9*K{NKhe(a@w65P&5}oEn?+kSc*uVKzsvV z!@^1=Rf<%iezTqk4tzU*cV>1QQM;vS>G^uFA|zu6G6iO@!VSh3g6XBItUl7hIU)~m z2lMa<1DJ$&cmnJ731gUm1@6wkEOv-4nU5Wzo2i|kk0Br~HPlgGUBybg9}o|;D5oM^ z=$y8Eg2@nO$)cS2#os@O|@A=?%KLC4v9| literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_000___null_keyboard.js b/common/test/keyboards/baseline/k_000___null_keyboard.js deleted file mode 100755 index d22b7f3287..0000000000 --- a/common/test/keyboards/baseline/k_000___null_keyboard.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_000___null_keyboard());function Keyboard_k_000___null_keyboard(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_000___null_keyboard";this.KN="000 - null keyboard";this.KMINVER="9.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_000___null_keyboard.kmx b/common/test/keyboards/baseline/k_000___null_keyboard.kmx deleted file mode 100644 index 2ac1a0f65f7eacb2c86137b5e428632f5695f5e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 316 zcmX|+u@1pt6on519Ze*rPTeYHFd2}DL0FJjQA2}DDkR>(AQHQH91mdh0tO~8z}G+J zG~eHQPtLu6+Zhe|%1Ec@!xc)!2f{LSop%xQgDC&1CBZz-0rpUUGaMlcSGa%$cep_g z-tbCli#=)Z=%tQk+G(k=LeqQro@}`gYNG{@t+`1}v?3SDC+VoChPrA|S5-3G9Bs)( qS}PzK?<=dq*)|)y%m#@Y-`&)ZF3^;$&zw}@tA2k;YlOuuzsWCa8zr>> diff --git a/common/test/keyboards/baseline/k_001___basic_input_unicodei.js b/common/test/keyboards/baseline/k_001___basic_input_unicodei.js deleted file mode 100755 index 2c6ff5d98a..0000000000 --- a/common/test/keyboards/baseline/k_001___basic_input_unicodei.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_001___basic_input_unicodei());function Keyboard_k_001___basic_input_unicodei(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_001___basic_input_unicodei";this.KN="001 - basic input UnicodeI";this.KMINVER="6.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0010;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16400,65)) {if(1){r=m=1;k.KO(0,t,"a");}}else if(k.KKM(e,16400,66)) {if(1){r=m=1;k.KO(0,t,"b");}}else if(k.KKM(e,16400,67)) {if(1){r=m=1;k.KO(0,t,"c");}}else if(k.KKM(e,16400,70)) {if(k.KCM(2,t,"DE",2)){r=m=1;k.KO(2,t,"def");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_001___basic_input_unicodei.kmx b/common/test/keyboards/baseline/k_001___basic_input_unicodei.kmx deleted file mode 100644 index 82f60cd001d0ba9bf984253ea81e87a41d1a3df4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 440 zcmZ9HF-t;G7=~X#s>MWBCP z8vP9}_MDHCLLWTmzVG{;^TMs)Hg2>fr4OQln3y{lBGVIk)(}~Ho@S}WHp|`6I;9h`%D+yj7?UpGZ{i4NH}A^0 tgkQh28bbxY>$3^|15WXKKAYk{p^8uWY=-}W(0t3zww>>f%4I09+K_tXM8lC(K z?S6npKZBF?+{3RLJn)?RzVG>+1GiMYtSBONuRr%ic|oIyOds=25Pnn0znZ#-yCkph z0(&rk9ze*tUJ}zGM^#ODXtXMNxN$52Hj-d(W4&F zSLh&Z>y~XPsj~9A&>8wbX}g@%6SI5UZ`tTQ0kDyNNzkUEQ)Gq!2 diff --git a/common/test/keyboards/baseline/k_003___nul.js b/common/test/keyboards/baseline/k_003___nul.js deleted file mode 100755 index 8adf3b1c69..0000000000 --- a/common/test/keyboards/baseline/k_003___nul.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_003___nul());function Keyboard_k_003___nul(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_003___nul";this.KN="003 - nul";this.KMINVER="6.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,65)) {if(k.KN(0,t)){r=m=1;k.KO(0,t,"b");}else if(k.KCM(1,t,"b",1)){r=m=1;k.KO(1,t,"c");}else if(1){r=m=1;k.KO(0,t,"d");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_003___nul.kmx b/common/test/keyboards/baseline/k_003___nul.kmx deleted file mode 100644 index 9a5e835e04af55f0c3f11b84877e9e2d3df8e107..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 378 zcmYL^u}%U(6h$wQfQ>>Wjm1{mL6(@9*r5rr*hqsWw7a0mCd+C-4DtmO#4j**{(v2g zCEs90M{D5^jAu3jyyVQ>d*6GLOxU~aswA1s=TcO`9u!foTiiuLLm_uHbAu-&3z$O< z-r)_(@C6@m2rKx8Dy-qh=|ApY2tW#TuU8EfDa(C8ekMZ_wm-KdQ|S0mr_ z^}^;zVFu^MlV4gFEw?hJ6))yuK7H9Ng1ueF=<~NouE7PFLk49 zbdI!5a&B&2D@=$wr6$A_AA@bv;74X=-26Hc-ykA(k59&2fPTs)zc|c zQs7Aqm{klB+W)ySZXQyB^hj$66}<1VXZ#Cn;TK%?ihqL|e$i#`_z&>HK}GD0+8Oib K{5Wdc{%Z;dQ!p?9 diff --git a/common/test/keyboards/baseline/k_005___nul_with_initial_context.js b/common/test/keyboards/baseline/k_005___nul_with_initial_context.js deleted file mode 100755 index 114018d2f4..0000000000 --- a/common/test/keyboards/baseline/k_005___nul_with_initial_context.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_005___nul_with_initial_context());function Keyboard_k_005___nul_with_initial_context(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_005___nul_with_initial_context";this.KN="005 - nul with initial context";this.KMINVER="6.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,65)) {if(k.KN(0,t)){r=m=1;k.KO(0,t,"b");}else if(k.KCM(1,t,"b",1)){r=m=1;k.KO(1,t,"c");}else if(1){r=m=1;k.KO(0,t,"d");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_005___nul_with_initial_context.kmx b/common/test/keyboards/baseline/k_005___nul_with_initial_context.kmx deleted file mode 100644 index 53f9889b32f3e3fa150a9bbfb94fe118d5f532c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 420 zcmYL?yDmgg6o$V+(70466jM!SG71uvOM+rTBuKQ!jKoP83FGz#iixNcB2$Rh;7Rn9 z-r)Gw&cQnQ_Wu8Wt+h|{U~iXUcw2t|#Hz$$86~~qT{kQ&?zc|5RoZW!Bff$f3R{hCEvmt}XBbj07=# diff --git a/common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.js b/common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.js deleted file mode 100755 index 28e7b1525d..0000000000 --- a/common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_006___vkey_input__shift_ctrl_());function Keyboard_k_006___vkey_input__shift_ctrl_(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_006___vkey_input__shift_ctrl_";this.KN="006 - vkey input (shift ctrl)";this.KMINVER="6.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0030;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16432,65)) {if(1){r=m=1;k.KO(0,t,"ก");}}else if(k.KKM(e,16400,66)) {if(1){r=m=1;k.KO(0,t,"ข");}}else if(k.KKM(e,16432,67)) {if(1){r=m=1;k.KO(0,t,"ฃ");}}else if(k.KKM(e,16400,70)) {if(k.KCM(2,t,"DE",2)){r=m=1;k.KO(2,t,"คฅฆ");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.kmx b/common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.kmx deleted file mode 100644 index 6651a91b1962a3a7737a59686c1eea304ba0abf1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 446 zcmYL^y-q?w5QWbbyxMTZ1`?}V5lMtx8WKDH)PhKZB(?-05Pu_T;u}~P8(KnPEQkd$ zv9aPocmPXZLBE|SPV&vpIWx1HtsfsX+l7ikObfDf~&VUQxH*0b#-;GbG3D0I>Ik1R1WTRYTZx+x>vf@4eqvv z>f`iGb;#E`Qf%BTcHC4Nrp87k-il6WuZDOAxL;O1V@GuTIOf}49oe}Lx}wPHDD NIUcMAK2^>B^#dmNFt7js diff --git a/common/test/keyboards/baseline/k_007___vkey_input__ctrl_alt_.js b/common/test/keyboards/baseline/k_007___vkey_input__ctrl_alt_.js deleted file mode 100755 index e4b0e5f291..0000000000 --- a/common/test/keyboards/baseline/k_007___vkey_input__ctrl_alt_.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_007___vkey_input__ctrl_alt_());function Keyboard_k_007___vkey_input__ctrl_alt_(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_007___vkey_input__ctrl_alt_";this.KN="007 - vkey input (ctrl alt)";this.KMINVER="6.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0060;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16480,65)) {if(1){r=m=1;k.KO(0,t,"ก");}}else if(k.KKM(e,16384,66)) {if(1){r=m=1;k.KO(0,t,"ข");}}else if(k.KKM(e,16480,67)) {if(1){r=m=1;k.KO(0,t,"ฃ");}}else if(k.KKM(e,16480,70)) {if(k.KCM(2,t,"de",2)){r=m=1;k.KO(2,t,"คฅฆ");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_007___vkey_input__ctrl_alt_.kmx b/common/test/keyboards/baseline/k_007___vkey_input__ctrl_alt_.kmx deleted file mode 100644 index 3000af8a8025e65bbe785fd9b97119b138509c13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 442 zcmYL@y)Hv>9EP7(mBsOqsI^m518EmxJFOtmupkkW6FM|LDwM<>7{mpLGzKw<(PVZF zF2Lv#M8b3aieK{l&-=c=kDSKl`Wkr{|JZuL%A}8F6m;yjZ1`m<|LVCnSTMPi3z?7` zxsm~Sm97lRyS&MWWZnJj>4JJpDtc(pT*N-p-z23fBhKP9rSJ5TTW)k$Iq|;YT%CIc zZ=E%_D;&^dpB?oEwfIBDS9+$eePbB^sGEj8r>WUIz76%5-lA)!?+-&x-Gki(4rN+% fiqOtBn|38RZor+R2idk?oOqA+Pm+WXg?NqucQ`A9 diff --git a/common/test/keyboards/baseline/k_0100___basic_input_unicodei.js b/common/test/keyboards/baseline/k_0100___basic_input_unicodei.js new file mode 100644 index 0000000000..86e960301a --- /dev/null +++ b/common/test/keyboards/baseline/k_0100___basic_input_unicodei.js @@ -0,0 +1,52 @@ + +KeymanWeb.KR(new Keyboard_k_0100___basic_input_unicodei()); + +function Keyboard_k_0100___basic_input_unicodei() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0100___basic_input_unicodei"; + this.KN="0100 - basic input UnicodeI"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0010; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4010, 0x41)) { + if(1){ + r=m=1; // Line 13 + k.KO(0,t,"a"); + } + } + else if(k.KKM(e, 0x4010, 0x42)) { + if(1){ + r=m=1; // Line 14 + k.KO(0,t,"b"); + } + } + else if(k.KKM(e, 0x4010, 0x43)) { + if(1){ + r=m=1; // Line 15 + k.KO(0,t,"c"); + } + } + else if(k.KKM(e, 0x4010, 0x46)) { + if(k.KCM(2,t,"DE",2)){ + r=m=1; // Line 17 + k.KO(2,t,"def"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_001___basic_input_unicodei.kmn b/common/test/keyboards/baseline/k_0100___basic_input_unicodei.kmn similarity index 85% rename from common/test/keyboards/baseline/k_001___basic_input_unicodei.kmn rename to common/test/keyboards/baseline/k_0100___basic_input_unicodei.kmn index 446c0e8f1d..da80e98ca7 100644 --- a/common/test/keyboards/baseline/k_001___basic_input_unicodei.kmn +++ b/common/test/keyboards/baseline/k_0100___basic_input_unicodei.kmn @@ -1,8 +1,8 @@ -store(&NAME) '001 - basic input UnicodeI' +store(&NAME) '0100 - basic input UnicodeI' c Description: Tests basic input with simple context rules, ANSI characters used only c keys: [SHIFT K_A][SHIFT K_B][SHIFT K_C][SHIFT K_SPACE][SHIFT K_D][SHIFT K_E][SHIFT K_F] c expected: abc def -c context: +c context: store(&version) '6.0' diff --git a/common/test/keyboards/baseline/k_0100___basic_input_unicodei.kmx b/common/test/keyboards/baseline/k_0100___basic_input_unicodei.kmx new file mode 100644 index 0000000000000000000000000000000000000000..b31daddd07fd5f21d1d4072a35c3d4462a1e667d GIT binary patch literal 442 zcmZ9HKTCp97{!kv)nfk!Tbrb%cwK@vHBC%xQK40>z#$F)LEpeZT-qX}L4w4w$q&*8 zaO?v#3HrMaw}c+}-S?dH+owa@H&bMWlYyfs-O(|OsCc!Q;%)S8k*K0r(Mcge}Qh-DV;;=U#FA^NmuYYVT7~m wcS&5tuU}Y=Acf!Y*&BWg7x-PDz2hfviQo6x6#oeo^Hn=*cDld2N2Tq*R$>k@Z2$lO literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0101___basic_input_unicode.js b/common/test/keyboards/baseline/k_0101___basic_input_unicode.js new file mode 100644 index 0000000000..74dc5e3ddb --- /dev/null +++ b/common/test/keyboards/baseline/k_0101___basic_input_unicode.js @@ -0,0 +1,52 @@ + +KeymanWeb.KR(new Keyboard_k_0101___basic_input_unicode()); + +function Keyboard_k_0101___basic_input_unicode() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0101___basic_input_unicode"; + this.KN="0101 - basic input Unicode"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0010; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4010, 0x41)) { + if(1){ + r=m=1; // Line 13 + k.KO(0,t,"ก"); + } + } + else if(k.KKM(e, 0x4010, 0x42)) { + if(1){ + r=m=1; // Line 14 + k.KO(0,t,"ข"); + } + } + else if(k.KKM(e, 0x4010, 0x43)) { + if(1){ + r=m=1; // Line 15 + k.KO(0,t,"ฃ"); + } + } + else if(k.KKM(e, 0x4010, 0x46)) { + if(k.KCM(2,t,"DE",2)){ + r=m=1; // Line 17 + k.KO(2,t,"คฅฆ"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_002___basic_input_unicode.kmn b/common/test/keyboards/baseline/k_0101___basic_input_unicode.kmn similarity index 90% rename from common/test/keyboards/baseline/k_002___basic_input_unicode.kmn rename to common/test/keyboards/baseline/k_0101___basic_input_unicode.kmn index 04c6df9f4a..a14821c8b6 100644 --- a/common/test/keyboards/baseline/k_002___basic_input_unicode.kmn +++ b/common/test/keyboards/baseline/k_0101___basic_input_unicode.kmn @@ -1,4 +1,4 @@ -store(&NAME) '002 - basic input Unicode' +store(&NAME) '0101 - basic input Unicode' c Description: Tests basic input with simple context rules (Unicode) c keys: [SHIFT K_A][SHIFT K_B][SHIFT K_C][SHIFT K_SPACE][SHIFT K_D][SHIFT K_E][SHIFT K_F] c expected: \u0E01\u0E02\u0E03\u0020\u0E04\u0E05\u0E06 diff --git a/common/test/keyboards/baseline/k_0101___basic_input_unicode.kmx b/common/test/keyboards/baseline/k_0101___basic_input_unicode.kmx new file mode 100644 index 0000000000000000000000000000000000000000..acf956d6b4b6256d70d368f2258c1f396a3e86d9 GIT binary patch literal 440 zcmZXPy-q?w5QWc01RAfH5NWCCG~C9-#>kIKLa;#-TSN;A#rT)-1{Q>xf>0O=V`)O- zgYW=!@(ecm?PP(1Nxt24&g@L?tzBI-l#r&~pNXiz9Tbu2W9~fRAB9}jw|}@x(t|h1 z!Vvn9gei<51#_4|8rRd(Db%H+7zU|KImENPxcWisaUg?Z(j<-$QC>@fO);1mmQWX{zM>xBh xE8@0%dq8UlC4A_!5&j*@_-&t!@gH!C-|^We{tE&djM=$iXFS{t6R3*)*FR`tFNOdB literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0102___basic_input__shift_2_.js b/common/test/keyboards/baseline/k_0102___basic_input__shift_2_.js new file mode 100644 index 0000000000..a7ce73ed87 --- /dev/null +++ b/common/test/keyboards/baseline/k_0102___basic_input__shift_2_.js @@ -0,0 +1,52 @@ + +KeymanWeb.KR(new Keyboard_k_0102___basic_input__shift_2_()); + +function Keyboard_k_0102___basic_input__shift_2_() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0102___basic_input__shift_2_"; + this.KN="0102 - basic input (shift 2)"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0010; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4010, 0x41)) { + if(1){ + r=m=1; // Line 13 + k.KO(0,t,"ก"); + } + } + else if(k.KKM(e, 0x4010, 0x42)) { + if(1){ + r=m=1; // Line 14 + k.KO(0,t,"ข"); + } + } + else if(k.KKM(e, 0x4010, 0x43)) { + if(1){ + r=m=1; // Line 15 + k.KO(0,t,"ฃ"); + } + } + else if(k.KKM(e, 0x4010, 0x46)) { + if(k.KCM(2,t,"DE",2)){ + r=m=1; // Line 17 + k.KO(2,t,"คฅฆ"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_004___basic_input__shift_2_.kmn b/common/test/keyboards/baseline/k_0102___basic_input__shift_2_.kmn similarity index 85% rename from common/test/keyboards/baseline/k_004___basic_input__shift_2_.kmn rename to common/test/keyboards/baseline/k_0102___basic_input__shift_2_.kmn index d878214427..0b072799ac 100644 --- a/common/test/keyboards/baseline/k_004___basic_input__shift_2_.kmn +++ b/common/test/keyboards/baseline/k_0102___basic_input__shift_2_.kmn @@ -1,13 +1,13 @@ -store(&NAME) '004 - basic input (shift 2)' +store(&NAME) '0102 - basic input (shift 2)' c Description: Tests basic vkey input with shift only (Unicode) c keys: [SHIFT K_A][SHIFT K_B][SHIFT K_C][SHIFT K_SPACE][SHIFT K_D][SHIFT K_E][SHIFT K_F] c expected: \u0E01\u0E02\u0E03\u0020\u0E04\u0E05\u0E06 -c context: +c context: store(&version) '6.0' begin Unicode > use(Main) - + group(Main) using keys + [SHIFT K_A] > U+0E01 diff --git a/common/test/keyboards/baseline/k_0102___basic_input__shift_2_.kmx b/common/test/keyboards/baseline/k_0102___basic_input__shift_2_.kmx new file mode 100644 index 0000000000000000000000000000000000000000..2e431a12ef940cdc1b25117d97da4df8b6b1a859 GIT binary patch literal 444 zcmYL_y-osA5QWdmiZ-s07^I{kYJvd@6FYts3eZMPZ1IOkAs_;YZ(t!lficFySQzcB ztbGO^fYN6WznxrllJD+0=g!P#w|2O{r>OLH@i`LZg$G4sy1;Xda7rQn>ccfANN(U7 zmf;R=VGhP{5A*N^6NrJ&?6=cN^b%z8Qcb72(zzOHo6jo8O41*#T^*e; zMdC?y_$?n1+W)yCZUJHi{sUJJP{Ic;d&ECM8NcYVXZ#CP@Nt*D;@`mw2Q_17#7;k$ K4Wg(m`>r3KA~2T# literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.js b/common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.js new file mode 100644 index 0000000000..0775346e75 --- /dev/null +++ b/common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.js @@ -0,0 +1,52 @@ + +KeymanWeb.KR(new Keyboard_k_0103___vkey_input__shift_ctrl_()); + +function Keyboard_k_0103___vkey_input__shift_ctrl_() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0103___vkey_input__shift_ctrl_"; + this.KN="0103 - vkey input (shift ctrl)"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0030; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4030, 0x41)) { + if(1){ + r=m=1; // Line 13 + k.KO(0,t,"ก"); + } + } + else if(k.KKM(e, 0x4010, 0x42)) { + if(1){ + r=m=1; // Line 14 + k.KO(0,t,"ข"); + } + } + else if(k.KKM(e, 0x4030, 0x43)) { + if(1){ + r=m=1; // Line 15 + k.KO(0,t,"ฃ"); + } + } + else if(k.KKM(e, 0x4010, 0x46)) { + if(k.KCM(2,t,"DE",2)){ + r=m=1; // Line 17 + k.KO(2,t,"คฅฆ"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.kmn b/common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.kmn similarity index 86% rename from common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.kmn rename to common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.kmn index 9a966aa651..c9947cfcc5 100644 --- a/common/test/keyboards/baseline/k_006___vkey_input__shift_ctrl_.kmn +++ b/common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.kmn @@ -1,13 +1,13 @@ -store(&NAME) '006 - vkey input (shift ctrl)' +store(&NAME) '0103 - vkey input (shift ctrl)' c Description: Tests basic vkey input with shift and control (Unicode) c keys: [LCTRL SHIFT K_A][SHIFT K_B][RCTRL SHIFT K_C][K_SPACE][SHIFT K_D][SHIFT K_E][SHIFT K_F] c expected: \u0E01\u0E02\u0E03\u0020\u0E04\u0E05\u0E06 -c context: +c context: store(&version) '6.0' begin Unicode > use(Main) - + group(Main) using keys + [SHIFT CTRL K_A] > U+0E01 diff --git a/common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.kmx b/common/test/keyboards/baseline/k_0103___vkey_input__shift_ctrl_.kmx new file mode 100644 index 0000000000000000000000000000000000000000..9a9747c33db60f10305debf25314c884bcbf59e3 GIT binary patch literal 448 zcmYL^Jud@L6o#Kxl||J+4Teq)2~8V`#MTxyG(>{L+Ehj3GfETxz#x8sh(Qcu5TnTt zF^kbZ;JG(GPV$_4-gDk_Z*F62W1Td-Pv=H45+ND3VqNhp+Ways|Kjz>IA-TkE+i+{ zawP-uCO0xDpYkEupxsSMs3$zfrDP2a+MIJhlf$S>l%33yXGVJL#d)5N^JC69wL3|d zT{}Bbwah2%Gv$7PRjRD8WIabQzESX&wvMhFNAZ=iZ@{wCyxwNK8|LlR*woRXrE}XY zs3%}eej{ZO use(Main) group(Main) using keys - + + [CTRL ALT K_A] > U+0E01 + [K_B] > U+0E02 + [CTRL ALT K_C] > U+0E03 diff --git a/common/test/keyboards/baseline/k_0104___vkey_input__ctrl_alt_.kmx b/common/test/keyboards/baseline/k_0104___vkey_input__ctrl_alt_.kmx new file mode 100644 index 0000000000000000000000000000000000000000..ae53a86547b28dae18c5fc3658157af6b2b7698a GIT binary patch literal 444 zcmYL_KT84u7{;Hg%Urq=q8e|KG7NXEwCE(hjwfPMBzNyQMl? zR2=CL{=-E?cDh%@Ex=j8f1vdOCAM*vF^h+9$pTjxEkup0(_H Kb6x`V_eH;W{V}Nk literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.js b/common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.js new file mode 100644 index 0000000000..2a6c8c0d02 --- /dev/null +++ b/common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.js @@ -0,0 +1,40 @@ + +KeymanWeb.KR(new Keyboard_k_0105___vkey_input__ctrl_alt_2_()); + +function Keyboard_k_0105___vkey_input__ctrl_alt_2_() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0105___vkey_input__ctrl_alt_2_"; + this.KN="0105 - vkey input (ctrl alt 2)"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0060; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4060, 0x41)) { + if(1){ + r=m=1; // Line 14 + k.KO(0,t,"ก"); + } + } + else if(k.KKM(e, 0x4060, 0x43)) { + if(1){ + r=m=1; // Line 15 + k.KO(0,t,"ฃ"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_008___vkey_input__ctrl_alt_2_.kmn b/common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.kmn similarity index 87% rename from common/test/keyboards/baseline/k_008___vkey_input__ctrl_alt_2_.kmn rename to common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.kmn index d1660c40f2..6baa092327 100644 --- a/common/test/keyboards/baseline/k_008___vkey_input__ctrl_alt_2_.kmn +++ b/common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.kmn @@ -1,4 +1,4 @@ -store(&NAME) '008 - vkey input (ctrl alt 2)' +store(&NAME) '0105 - vkey input (ctrl alt 2)' c Description: Tests basic vkey input with control and alt (Unicode) c keys: [LCTRL LALT K_A][LCTRL LALT K_B][LCTRL LALT K_C] c expected: \u0E01\u0E03 diff --git a/common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.kmx b/common/test/keyboards/baseline/k_0105___vkey_input__ctrl_alt_2_.kmx new file mode 100644 index 0000000000000000000000000000000000000000..6f88e253897eaa40c89bd83c0ed64aff33db9903 GIT binary patch literal 390 zcmYL?yGjFL5Jt~NP%E`ktFYCgg|ZQ1oft%6(ZUN@x@d~vC1RqWg;#Kjxr}*E%}$+^6}jas_ES3cuehOab%_(>HRtM5A8KnX zyPvU3lN~nI>#W8fnOE9Q_q@@KUusUnmfh6ZGTtWsg$)j!>G+|`se7=Uz@GeCMG?~f c&8FFm95>+J)`PUnXUDZi^CwBd5EIe=0DCto;s5{u literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0106___smp.js b/common/test/keyboards/baseline/k_0106___smp.js new file mode 100644 index 0000000000..e7c75e32d7 --- /dev/null +++ b/common/test/keyboards/baseline/k_0106___smp.js @@ -0,0 +1,80 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0106___smp()); +} +function Keyboard_k_0106___smp() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0106___smp"; + this.KN="0106 - smp"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.KS=1; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 15 + k.KDC(0,t); + k.KO(-1,t,"🙂"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_2 /* 0x32 */)) { + if(k.KFCM(1,t,['🙂'])){ + r=m=1; // Line 16 + k.KDC(1,t); + k.KO(-1,t,"🙂hi😀"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_3 /* 0x33 */)) { + if(k.KFCM(1,t,['😀'])){ + r=m=1; // Line 17 + k.KDC(1,t); + k.KO(-1,t,"x"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_4 /* 0x34 */)) { + if(k.KFCM(4,t,['🙂','h','i','x'])){ + r=m=1; // Line 18 + k.KDC(4,t); + k.KO(-1,t,"😁y"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_5 /* 0x35 */)) { + if(1){ + r=m=1; // Line 22 + k.KDC(0,t); + k.KO(-1,t,"𐌳"); + r=this.g_second_1(t,e); + m=2; + } + } + return r; + }; + this.g_second_1=function(t,e) { + var k=KeymanWeb,r=1,m=0; + if(k.KFCM(1,t,['𐌳'])){ + m=1; // Line 26 + k.KDC(1,t); + k.KO(-1,t,"x"); + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_028___smp.kmn b/common/test/keyboards/baseline/k_0106___smp.kmn similarity index 94% rename from common/test/keyboards/baseline/k_028___smp.kmn rename to common/test/keyboards/baseline/k_0106___smp.kmn index 7c1eaaba96..3ce026ca4c 100644 --- a/common/test/keyboards/baseline/k_028___smp.kmn +++ b/common/test/keyboards/baseline/k_0106___smp.kmn @@ -1,4 +1,4 @@ -store(&NAME) '028 - smp' +store(&NAME) '0106 - smp' c Description: Tests SMP characters; see #4361 [1-4], #5561 [5] c keys: [K_1][K_2][K_3][K_4][K_5] c expected: \U0001F601yx diff --git a/common/test/keyboards/baseline/k_0106___smp.kmx b/common/test/keyboards/baseline/k_0106___smp.kmx new file mode 100644 index 0000000000000000000000000000000000000000..cfbb429d0b77716c4943aa91589a3007bfec4807 GIT binary patch literal 576 zcmYL_y-EX75QWdGQL#~jsE9?dNN3281{4BuK`eqcDx?yE2_}U<7!dOwDa0obpTY-7 zB_dm`V3k5FEG=BWx$c^QZ<%vu=H9zgs~;U|Mj8&z>LNV*5K}M)RmfpR1nGZNtw=1w z9rR%d9^f8q{s|so8eU-lbMOhnIG^C`pEzG7Uxqwds;Q-(&ehO`(|HxBl$Fssbg5k7 zXLX<*?Q56Z>Nz)^)eY0vbaiy;<_lD%J*pYH8~Ao=Q5()JxD#7Cb=^(8E%0?rSI4 use(Main) - + group(Main) using keys 'a' + [K_COLON] > 'e' diff --git a/common/test/keyboards/baseline/k_0107___punctkeys.kmx b/common/test/keyboards/baseline/k_0107___punctkeys.kmx new file mode 100644 index 0000000000000000000000000000000000000000..d55d4d2c972c6a5b2156cc5cc2eb1be2d92deae8 GIT binary patch literal 644 zcmYL`J1>J_7=~{K432e7EFGi~LE1zd!tfD7QbeMX4hD^))m9rVAu$*X2Js8T;$Jv+ zG8t_SgTdq{NVwk5gEzVQJlFla-`n>6qVd?Gs-%n2&U>*c+y{%u?>%aO@QX$Jw~i`* z+BV7w978*t!6{Tj8P1^w9^nBR;RD{ScVF^J9|kF^HSH^>gtmMSE5c+*LG?jFJLIb> zDdX=evL~c@jcZO*^n>d6&k1Rl`L>EmEAO8a;T&n2X^_1Ma(Dg+OlXNd&8c}Mc}nWx z7Y)Ggs-_-fhWAhvLv2@XS~(2EM9;Y+`T_}QVHLKGTIC-JHQX2 hfF>Ysb;D}PYTD|iRd;LjISc#1H?uPu@DgnB32e+=RfcV zSo#YrtSl|9Z1v2z`oWpK_kQ2Z&eS_=Ek>YpxA2Hn3X3%)L1&UEzAfc{-4=tBCVjb- zDY=(x8I~t`kVIbOS;pmE-U|KY_fx6@b#^#rj}7*tuTo={lo>fR-Q~!<%nCUT7S(f9 z;@&cC{VFY%Y1$|5geALaJh2zgti|bh)^$C$IAGgr|Thu_8OupG&R}uk2=Up}&$aH&JAL{f)d18t@U<%^(1i_^mB+NkDT>>&Pv@R#%h z9GmBJsljUl8zOJ)=LDa5hoUP>FBL-z;W+bnhf diff --git a/common/test/keyboards/baseline/k_014___groups_and_virtual_keys.js b/common/test/keyboards/baseline/k_014___groups_and_virtual_keys.js deleted file mode 100755 index 65d043fda0..0000000000 --- a/common/test/keyboards/baseline/k_014___groups_and_virtual_keys.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_014___groups_and_virtual_keys());function Keyboard_k_014___groups_and_virtual_keys(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_014___groups_and_virtual_keys";this.KN="014 - groups and virtual keys";this.KMINVER="9.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0070;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16416,50)) {if(1){r=m=1;k.KDO(0,t,0);}}else if(k.KKM(e,16448,50)) {if(1){r=m=1;k.KDO(0,t,0);}}else if(k.KKM(e,16400,50)) {if(1){r=m=1;k.KDO(0,t,1);}}else if(k.KKM(e,16384,65)) {if(1){r=m=1;k.KO(0,t,"α");}}if(m==1) {r=this.g1(t,e);m=2;}return r;};this.g1=function(t,e) {var k=KeymanWeb,r=1,m=0;if(k.KDM(1,t,0)&&k.KCM(1,t,"α",1)){m=1;k.KO(1,t,"ᾱ");}else if(k.KDM(1,t,1)&&k.KCM(1,t,"α",1)){m=1;k.KO(1,t,"ᾰ");}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_014___groups_and_virtual_keys.kmx b/common/test/keyboards/baseline/k_014___groups_and_virtual_keys.kmx deleted file mode 100644 index 03bb1508a55ebf46c59d21379908465c37eba734..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 764 zcmZvay)T1N6vm(W2x3qM!lE%WA|b7akaTF9ib#DVzGBo+B4|ZRbnzD$3}O^9i9y&J zlffYV0x@+k8!QZx*YDo5p-;1km$ zpg-|tibOkj1P`DCJcB3D0NPpiLT&_o@E*_#kCS5{2wx*FJAOz$aQv8jWHEmQb_$^UAxL_Pdh50OvfsDUmN&E{EW8Hn|4Bh)nQF5 zp(%~QM>Sw~2x}2Nt2s?*hPuCRn64b_wwa$}-ijufRcQ zAiOK|HSoMfdxpP^5^-B=zSZB#@J{m~Dm1+MP3rP3y`kU1ZFhB=S%2eHjh*%lw@zUB diff --git a/common/test/keyboards/baseline/k_015___ralt_2.js b/common/test/keyboards/baseline/k_015___ralt_2.js deleted file mode 100755 index 741a087184..0000000000 --- a/common/test/keyboards/baseline/k_015___ralt_2.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_015___ralt_2());function Keyboard_k_015___ralt_2(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_015___ralt_2";this.KN="015 - ralt 2";this.KMINVER="9.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,65)) {if(k.KCM(1,t,"c",1)){r=m=1;k.KO(1,t,"cd");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_015___ralt_2.kmx b/common/test/keyboards/baseline/k_015___ralt_2.kmx deleted file mode 100644 index 0a5e1bbf434b09618983f22e84b6f9fdc7c89d0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 330 zcmX|-!Ae3=5QaZDrqQBRZKZ`Pm1_{#P6Z2<6jGyYsF08b;iflmAwEI$96f-$dWJUj z2rk^&cdq6S-<*GD&dj;o=6$zA8XkX2pQuC#Dk;I2!EU0fvE4ymKtNn7s;z;#iq!LdpitX#+JqZj z6F(!vk6G-%Ag?{s?kXbEHoQzi3&tR^gx=_)}bPV(jgma>LMDVD~K+}3utWV z2HNxaK9t_W^M1egKb+=yx5E+?f08Yye4oRCQFyHlFjSJ(lAJm=AyD5#k!!|hP%sYLq g7;^1p=w;wiW)@`Ne=apzo|Z?Jo+a^C_@nds3FUMv6aWAK diff --git a/common/test/keyboards/baseline/k_019___multiple_deadkeys.js b/common/test/keyboards/baseline/k_019___multiple_deadkeys.js deleted file mode 100755 index 4e928ab0a5..0000000000 --- a/common/test/keyboards/baseline/k_019___multiple_deadkeys.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_019___multiple_deadkeys());function Keyboard_k_019___multiple_deadkeys(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_019___multiple_deadkeys";this.KN="019 - multiple deadkeys";this.KMINVER="9.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,49)) {if(1){r=m=1;k.KDO(0,t,0);}}else if(k.KKM(e,16384,50)) {if(1){r=m=1;k.KO(0,t,"a");k.KDO(-1,t,1);}}else if(k.KKM(e,16384,51)) {if(1){r=m=1;k.KDO(0,t,2);k.KO(-1,t,"a");}}else if(k.KKM(e,16384,52)) {if(1){r=m=1;k.KDO(0,t,3);k.KDO(-1,t,4);}}else if(k.KKM(e,16384,53)) {if(1){r=m=1;k.KO(0,t,"a");k.KDO(-1,t,5);k.KDO(-1,t,6);}}else if(k.KKM(e,16384,54)) {if(1){r=m=1;k.KO(0,t,"a");k.KDO(-1,t,7);k.KDO(-1,t,8);k.KO(-1,t,"b");}}else if(k.KKM(e,16384,55)) {if(1){r=m=1;k.KDO(0,t,9);k.KDO(-1,t,10);k.KO(-1,t,"a");}}else if(k.KKM(e,16384,56)) {if(1){r=m=1;k.KDO(0,t,11);k.KDO(-1,t,12);k.KDO(-1,t,13);}}else if(k.KKM(e,16384,57)) {if(1){r=m=1;k.KO(0,t,"{");k.KDO(-1,t,14);k.KDO(-1,t,15);k.KO(-1,t,"}");k.KDO(-1,t,16);k.KDO(-1,t,17);}}else if(k.KKM(e,16384,88)) {if(k.KCM(2,t,"{",1)&&k.KDM(1,t,14)&&k.KDM(1,t,18)&&k.KCM(1,t,"}",1)&&k.KDM(0,t,19)&&k.KDM(0,t,20)){r=m=1;k.KO(2,t,"9=OK");}else if(k.KCM(2,t,"a",1)&&k.KDM(1,t,7)&&k.KDM(1,t,8)&&k.KCM(1,t,"b",1)){r=m=1;k.KO(2,t,"6=OK ");}else if(k.KDM(1,t,15)&&k.KCM(1,t,"}",1)&&k.KDM(0,t,16)&&k.KDM(0,t,17)){r=m=1;k.KDO(1,t,18);k.KO(-1,t,"}");k.KDO(-1,t,19);k.KDO(-1,t,20);}else if(k.KCM(1,t,"a",1)&&k.KDM(0,t,5)&&k.KDM(0,t,6)){r=m=1;k.KO(1,t,"5=OK ");}else if(k.KDM(1,t,9)&&k.KDM(1,t,10)&&k.KCM(1,t,"a",1)){r=m=1;k.KO(1,t,"7=OK ");}else if(k.KDM(0,t,11)&&k.KDM(0,t,12)&&k.KDM(0,t,13)){r=m=1;k.KO(0,t,"8=OK ");}else if(k.KCM(1,t,"a",1)&&k.KDM(0,t,1)){r=m=1;k.KO(1,t,"2=OK ");}else if(k.KDM(1,t,2)&&k.KCM(1,t,"a",1)){r=m=1;k.KO(1,t,"3=OK ");}else if(k.KDM(0,t,3)&&k.KDM(0,t,4)){r=m=1;k.KO(0,t,"4=OK ");}else if(k.KDM(1,t,9)&&k.KCM(1,t,"a",1)){r=m=1;k.KO(1,t,"7=Fail1 ");}else if(k.KDM(1,t,10)&&k.KCM(1,t,"a",1)){r=m=1;k.KO(1,t,"7=Fail2 ");}else if(k.KDM(0,t,11)&&k.KDM(0,t,12)){r=m=1;k.KO(0,t,"8=Fail4 ");}else if(k.KDM(0,t,11)&&k.KDM(0,t,13)){r=m=1;k.KO(0,t,"8=Fail5 ");}else if(k.KDM(0,t,12)&&k.KDM(0,t,13)){r=m=1;k.KO(0,t,"8=Fail6 ");}else if(k.KDM(0,t,0)){r=m=1;k.KO(0,t,"1=OK ");}else if(k.KDM(0,t,11)){r=m=1;k.KO(0,t,"8=Fail1 ");}else if(k.KDM(0,t,12)){r=m=1;k.KO(0,t,"8=Fail2 ");}else if(k.KDM(0,t,13)){r=m=1;k.KO(0,t,"8=Fail3 ");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_019___multiple_deadkeys.kmx b/common/test/keyboards/baseline/k_019___multiple_deadkeys.kmx deleted file mode 100644 index fe22a2819a535a56b6c8a43dd1239726e9575383..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2192 zcmZXU%S%;J6vmg2>{@Csvv*yr#0t%$-g~`fQqhBwEYiY3MAy`i)WRMV88i?PM-Dy-#X}F?T zqzqI20DiCGR(zx3)A&xqz4&g!L-?D9ALGXj&)_EwzsAoQeuJMkyog^g{1N}&@HhMy z!^`+zhO0P(1g3S?;&&TPSsN`hK z@g@l*D@kd?) zMVg&{j#+ojv78VCCvf#<#Lo)oF-ey>uY!OcR4dHW+S@pTsP=$f zlAJ{0TCG1DTdN&pV{5gCEa&O(r(I-ubH1j1WM#{=&=3g#JYKnU;XpU@3U5Y1`rTSQ>uNw8QWYECa7M ztrOmj>DSa?+GY3vreBikI)>nr*kkZ9r-)3!XHBa!?G1dvw06_p!@rug-?TsQQm!1` z?~rNL@T6&trZvGkOxtPNW%zZ|_Lw#VA2%&&+5~*sw8N&&!RJjoV%l5yJJa<1b$oz- zF-^~3#}Bw(jasvwzm6(+(lotIbu_};O*BD+#;V za}F1~sH!FIs}3_tU5rnH5$2USMGMU<38$31?>=0$&ME7?eJY$%>EpTZyJEF9{AS^y|@nR%Emf=^V(9>HQVP!t>Ya^6T`@3S;>i_5X|F odVl$GeN%p1@3Jr+y~!X}aZzkdRBJ^n5>;9mi|BnDK1VC~2i use(main) group(main) using keys -+ [RAlt K_A] > U+05D6 ++ [RAlt K_A] > U+05D6 + [RAlt K_O] > U+05E8 -+ [Ctrl Alt K_A] > "b" ++ [Ctrl Alt K_A] > "b" + [Ctrl Alt K_O] > "c" diff --git a/common/test/keyboards/baseline/k_0200___ralt.kmx b/common/test/keyboards/baseline/k_0200___ralt.kmx new file mode 100644 index 0000000000000000000000000000000000000000..6fd03a1b6cbc31e982a48061eed0fd82f04df5ec GIT binary patch literal 404 zcmYL_yGjF56h)U{G*R%;Xd5h2sZ8wbW&{xlF<^{X`YZxIKx_mHu@H-pLM+8^u<`>e z{Q#>}R@PQ_y6)wo2iBdv&*RRVY3yvZsla%(`HV3X4r4@u&SgyTV<`XPAvMmJ>B*hU z%A@pUR9@ss%JL?!G9@1}Nc!97mt+DBj=1E6Jx-&~ShA8)WkJr(A9G=)#s&pVR@KWa z#_1Z{`c2xb)3OeAr(rG5hdaCR)_Uw-p`+_^z!`_W73SP%K5eCCSc3hZEOZl6&f&_^ pwY2n;DR-m4l|mo(+|B(j`ksWo>6Gj1@8!K@g3oyF2kF;@_ywZWEFk~@ literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0201___ralt_2.js b/common/test/keyboards/baseline/k_0201___ralt_2.js new file mode 100644 index 0000000000..b4504c909d --- /dev/null +++ b/common/test/keyboards/baseline/k_0201___ralt_2.js @@ -0,0 +1,34 @@ + +KeymanWeb.KR(new Keyboard_k_0201___ralt_2()); + +function Keyboard_k_0201___ralt_2() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0201___ralt_2"; + this.KN="0201 - ralt 2"; + this.KMINVER="9.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_main_0(t,e); + }; + this.g_main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4000, 0x41)) { + if(k.KCM(1,t,"c",1)){ + r=m=1; // Line 13 + k.KO(1,t,"cd"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_015___ralt_2.kmn b/common/test/keyboards/baseline/k_0201___ralt_2.kmn similarity index 71% rename from common/test/keyboards/baseline/k_015___ralt_2.kmn rename to common/test/keyboards/baseline/k_0201___ralt_2.kmn index 631bea8d8d..6606a5d96d 100644 --- a/common/test/keyboards/baseline/k_015___ralt_2.kmn +++ b/common/test/keyboards/baseline/k_0201___ralt_2.kmn @@ -1,9 +1,10 @@ -store(&NAME) '015 - ralt 2' +store(&VERSION) '9.0' +store(&NAME) '0201 - ralt 2' c Description: Tests Right Alt processing with non-US kbds. c keys: [K_A][K_B][K_C][RALT K_A] c expected: abcd -store(&VERSION) '9.0' +store(&TARGETS) 'any' begin Unicode > use(main) diff --git a/common/test/keyboards/baseline/k_0201___ralt_2.kmx b/common/test/keyboards/baseline/k_0201___ralt_2.kmx new file mode 100644 index 0000000000000000000000000000000000000000..79ead9aea3c068f3534e7d3f82f0906876a2df47 GIT binary patch literal 370 zcmX|*KTASU7>6I1Qb=g3rQuF@EA(z|-XKJ!1ieOUSdfqk5`oaiXb?YvIJUR-LHYoV z?e?6L^@HaHwXCEpZ?ciF z>r*}?m2dfyLpgBIo&=wGo=8m(UG7;h;g)HNHS_%=8(i&(Cz5xSqb0a>H55VX% zI2jiG{y$Z2^7TLGo_lZO;r*RzQt&q1i*n3|qGff++obtJA^&St4W7~2z#7hB3$Jht zAMg$?e8LVI@C{#;KH-iFK3&}gEe&*| zzPjj+F73^hp6$kxox)xX6p;5wJ!TX7=3mzk=>ctS7aFt06-Nr;uZ|GL9`+*KDR`kY VCCcCyUx$$16TXBIK7q7)e*x!tD@6bR literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_020___deadkeys_and_backspace.js b/common/test/keyboards/baseline/k_020___deadkeys_and_backspace.js deleted file mode 100755 index 85742c0edd..0000000000 --- a/common/test/keyboards/baseline/k_020___deadkeys_and_backspace.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_020___deadkeys_and_backspace());function Keyboard_k_020___deadkeys_and_backspace(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_020___deadkeys_and_backspace";this.KN="020 - deadkeys and backspace";this.KMINVER="9.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,8)) {if(k.KCM(2,t,"c",1)&&k.KDM(1,t,11)&&k.KCM(1,t,"d",1)){r=m=1;k.KO(2,t," ok");}else if(k.KCM(2,t,"cd",2)){r=m=1;k.KO(2,t," fail");}}else if(k.KKM(e,16384,49)) {if(1){r=m=1;k.KDO(0,t,0);}}else if(k.KKM(e,16384,50)) {if(1){r=m=1;k.KO(0,t,"a");k.KDO(-1,t,1);}}else if(k.KKM(e,16384,51)) {if(1){r=m=1;k.KDO(0,t,2);k.KO(-1,t,"a");}}else if(k.KKM(e,16384,52)) {if(1){r=m=1;k.KDO(0,t,3);k.KDO(-1,t,4);}}else if(k.KKM(e,16384,53)) {if(1){r=m=1;k.KO(0,t,"a");k.KDO(-1,t,5);k.KDO(-1,t,6);k.KO(-1,t,"b");}}else if(k.KKM(e,16384,54)) {if(1){r=m=1;k.KO(0,t,"a");k.KDO(-1,t,7);k.KDO(-1,t,8);k.KO(-1,t,"b");k.KDO(-1,t,9);k.KDO(-1,t,10);}}else if(k.KKM(e,16384,55)) {if(1){r=m=1;k.KO(0,t,"c");k.KDO(-1,t,11);k.KO(-1,t,"de");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_021___options.js b/common/test/keyboards/baseline/k_021___options.js deleted file mode 100755 index 8d0463e821..0000000000 --- a/common/test/keyboards/baseline/k_021___options.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_021___options());}function Keyboard_k_021___options(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_021___options";this.KN="021 - options";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5=KeymanWeb.KLOAD(this.KI,"foo","0");this.s8="1";this.s9="0";this.s10="1";this.s11="0";this.KVER="16.0.138.0";this.KVS=['s5'];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,48)) {if(1){r=m=1;k.KDC(0,t);this.s5=this.s11;}}else if(k.KKM(e,16384,49)) {if(1){r=m=1;k.KDC(0,t);this.s5=this.s10;}}else if(k.KKM(e,16384,65)) {if(this.s5===this.s8){r=m=1;k.KDC(0,t);k.KO(-1,t,"foo.");}else if(this.s5===this.s9){r=m=1;k.KDC(0,t);k.KO(-1,t,"no foo.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_021___options.kmx b/common/test/keyboards/baseline/k_021___options.kmx deleted file mode 100644 index f35da34878adc50c677ebe1bc952d99bc916fc91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 556 zcmZvZ&n^Q|6vjW33Pqy+gk3YS=t5{Zyg*6Rq9GAP7a|!-RG2o1#2Z+9CJXTdVreaw zA~x6W+_}ZVX@2v4=iGBo@62tscD6MlZJqDcL=4!27zOin=wTdz{fUJrw=>8iJishG z!xId_2fV;Aj4>k$!{^X4l&IIx`QRI99m>@A(N^$>=t1zOXgl}}Jp+GmHFd08T_{z? zeyc7iQLIJis;6sp&`ejXRkW!UZDS9)ojJ8ua(s_gpuTzgHFK+%z4Lzo(2hi2qqD()SIB_&WLk diff --git a/common/test/keyboards/baseline/k_022___options_with_preset.js b/common/test/keyboards/baseline/k_022___options_with_preset.js deleted file mode 100755 index 2e85641ef3..0000000000 --- a/common/test/keyboards/baseline/k_022___options_with_preset.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_022___options_with_preset());}function Keyboard_k_022___options_with_preset(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_022___options_with_preset";this.KN="022 - options with preset";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5=KeymanWeb.KLOAD(this.KI,"foo","0");this.s8="1";this.s9="0";this.s10="1";this.s11="0";this.KVER="16.0.138.0";this.KVS=['s5'];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,48)) {if(1){r=m=1;k.KDC(0,t);this.s5=this.s11;k.KSAVE("foo",this.s5);}}else if(k.KKM(e,16384,49)) {if(1){r=m=1;k.KDC(0,t);this.s5=this.s10;k.KSAVE("foo",this.s5);}}else if(k.KKM(e,16384,65)) {if(this.s5===this.s8){r=m=1;k.KDC(0,t);k.KO(-1,t,"foo.");}else if(this.s5===this.s9){r=m=1;k.KDC(0,t);k.KO(-1,t,"no foo.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_022___options_with_preset.kmx b/common/test/keyboards/baseline/k_022___options_with_preset.kmx deleted file mode 100644 index e681df83394f04ad7be451a4d82051d74924c8d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 592 zcmZXRJxjw-7==%ZqDB$1t%69&AjLsTTS^5dEs8=>1Qj|7!4K?U8`@A&9K=CfoL!y$ z9S-6z5PynGd~WVl3%=ppbKb9$gxhEy?8}pu9#@`3q|8B#1Ebf#10p7nzp zuV5B@fOjwgCfWOhN5KMm&KMG_a1BhMx8b_eM{pD5sYh_=^flaf`WC)%`X0UmC1a|F zPIaXV1!^aGNfjPn%b=rBky>zDJ@QL*q;piLE_*!?u~pEn*0rNebQ#}b;$2XmewQih zVBdI#TPK;Tac(i`vl%dB-d|Rgv#vw3mX4V`!Nb%|*e@Q`&nf8z{KOE#q<@ZPC+FH< zv^;LWIAmRIf_xqXS6opR9Qf#p8AvqX5KN&r;8mxO;5L{e--9om9>IO5@8BD!AK-gXH$&CZ znQnEZNU`;Gg<6)cCD2t*Lv`R-1N=35s0-A9`VpN{RXbYOwl>iLGi!Ek)vorbOS{wE z&Y9G;bt^o#sPyTKs4;s7>?<{Ofa~al%2T^TKsI~ZzxpXBy?`tV2xEUIniH1Xvd5P% z0W-l~8C=2pAVim4-8_B)MEGf!Tf{e9ZpP)B_&ty$MHTG5XPV!FNRl#n6X~gIHdi8- Pw>KMeKL4M!3F^K9(8fOx diff --git a/common/test/keyboards/baseline/k_024___options_with_save_and_preset.js b/common/test/keyboards/baseline/k_024___options_with_save_and_preset.js deleted file mode 100755 index 81152ece46..0000000000 --- a/common/test/keyboards/baseline/k_024___options_with_save_and_preset.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_024___options_with_save_and_preset());}function Keyboard_k_024___options_with_save_and_preset(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_024___options_with_save_and_preset";this.KN="024 - options with save and preset";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5=KeymanWeb.KLOAD(this.KI,"foo","0");this.s8="1";this.s9="0";this.s10="1";this.s11="0";this.s12="0";this.KVER="16.0.138.0";this.KVS=['s5'];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,48)) {if(1){r=m=1;k.KDC(0,t);this.s5=this.s11;}}else if(k.KKM(e,16384,49)) {if(1){r=m=1;k.KDC(0,t);this.s5=this.s10;}}else if(k.KKM(e,16384,50)) {if(this.s5===this.s12){r=m=1;k.KDC(0,t);k.KSAVE("foo",this.s5);}}else if(k.KKM(e,16384,65)) {if(this.s5===this.s8){r=m=1;k.KDC(0,t);k.KO(-1,t,"foo.");}else if(this.s5===this.s9){r=m=1;k.KDC(0,t);k.KO(-1,t,"no foo.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_024___options_with_save_and_preset.kmx b/common/test/keyboards/baseline/k_024___options_with_save_and_preset.kmx deleted file mode 100644 index 1fecdfac2131f0ebb90d36134ae99c5f0d5e1342..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 656 zcmZXSy-EW?6opR$!QVnmVmjF>RSZcGu@F%~6oVETA(a@6At_8kvLpz0T8oHg}C-?wEAVc35JPcOQ^JXAXhD%@qU4!?XK7o5+8vhbLclsK>a{3m&arz#< zbNUf}06DXPiaOM>j#N?8<~bEKD^D|^rM7%E;HJ9deYCGSs!M&3PS5sL;kG*DUEnh( ztt~BUQ>*AaJ7w)|Y1`AGDx4Xfp~n1{t()VyMx{q*g&K3BJg4ECXqT*^11hWRVSE$e zI}Ga3d5K7`;3r}Tlm5*$bxF5e;14YTGbiD^Me=n}AUA)`#0L2`sGujUBkhsbofmhW rPksi1Ag-9ktQ%^s4-o`Oe8UMiYHv{Z6|w`axeHC+*VF&C5!Su|**i;w diff --git a/common/test/keyboards/baseline/k_025___options_with_reset.js b/common/test/keyboards/baseline/k_025___options_with_reset.js deleted file mode 100755 index e8a48164b0..0000000000 --- a/common/test/keyboards/baseline/k_025___options_with_reset.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_025___options_with_reset());}function Keyboard_k_025___options_with_reset(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_025___options_with_reset";this.KN="025 - options with reset";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5=KeymanWeb.KLOAD(this.KI,"foo","0");this.s8="1";this.s9="0";this.s10="1";this.s11="0";this.KVER="16.0.138.0";this.KVS=['s5'];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,48)) {if(1){r=m=1;k.KDC(0,t);this.s5=this.s11;}}else if(k.KKM(e,16384,49)) {if(1){r=m=1;k.KDC(0,t);this.s5=this.s10;}}else if(k.KKM(e,16384,51)) {if(1){r=m=1;k.KDC(0,t);this.s5=k.KLOAD(this.KI,"foo","0");}}else if(k.KKM(e,16384,65)) {if(this.s5===this.s8){r=m=1;k.KDC(0,t);k.KO(-1,t,"foo.");}else if(this.s5===this.s9){r=m=1;k.KDC(0,t);k.KO(-1,t,"no foo.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_025___options_with_reset.kmx b/common/test/keyboards/baseline/k_025___options_with_reset.kmx deleted file mode 100644 index 028f81cb5feb143b688f8ea96ef43bcce6d86368..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 608 zcmZvayH3ME5JhhyMZ8h~2__Y?B1i>RLWq0psjHB1#meu?4E||d&;lS!EII{W{zOniqz5`V= zRBavWT4(YVBzaYfYRJ_B=;>UMx^SRA`6W8iDJrC^4l6OEH7nDnGexUg=h&XoeO{8z_ TC0-FPo7`={`?>$@jZpUudIdme diff --git a/common/test/keyboards/baseline/k_026___system_stores.js b/common/test/keyboards/baseline/k_026___system_stores.js deleted file mode 100755 index b49711fb24..0000000000 --- a/common/test/keyboards/baseline/k_026___system_stores.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_026___system_stores());}function Keyboard_k_026___system_stores(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_026___system_stores";this.KN="026 - system stores";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5="1234567890";this.s6="abcdefghij";this.s9="windows";this.s10="desktop";this.s11="hardware";this.s12="native";this.s13="en-US";this.s14="kbdus.dll";this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,48)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,49)) {if(k.KIFS(31,this.s9,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"windows.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,50)) {if(k.KIFS(31,this.s10,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"desktop.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,51)) {if(k.KIFS(31,this.s11,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"hardware.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,52)) {if(k.KIFS(31,this.s12,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"native.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,53)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,54)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,55)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,56)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,57)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,65)) {if(k.KIFS(32,this.s13,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"en-US.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,66)) {if(k.KIFS(32,this.s14,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"kbdus.dll.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,67)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,68)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,69)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,70)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,71)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,72)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,73)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,74)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_026___system_stores.kmx b/common/test/keyboards/baseline/k_026___system_stores.kmx deleted file mode 100644 index bb918cf1429b4e57b68ea4d8bd08e226d558426d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1972 zcmd^<%}bO~6viK=53>>>(>_2f!bPO$_zf*8$^uIS4cyN7j-TT=%#51sGBI!d0{kX%Q09A|kZkxpUvV*}~bi=nT)C^E~&Q^WOJX3DBU?X( zRoEX^11!DG#)5qWOTRyI0jz4@{Ph1VG_6q(CXd{*el-81Fl~mU8HYL=p zCbfV9BLx-7n02hEIptvmGMhE1>$;~~#O?HIb^V&Pz<8dFDRQl2JN-J;sV=(qs8@Y1 zFJgQG6v;>`r7=a+jiXJXPNQbvMfdEy>(ayjZEBl%W|Evz?=I9Ex(}P8$DHdTExPdt zzUbyErx!Fszd7Zo5zk37&xj23X{Tk0i`3dXn5F64Lib_EW|(KBc{;Y@GyKf@S;-*~ z+c|;?us2IvXFCUGqlcsg&`x~HDbfS@Bd^7IPvGkyK~9~|+kn6JTAa5D{|Y+DIqmbl z!K)6Jv^cL0o&cTX*!eW;gx~a9oHqo|0$bNu%fXjHcc87npM#!2TZ6v=y@B=?z76^U z?F+o-i0!*{7MRt-8@+bEBixGNtUq2xeRy-i+7o5e9`t7adVKFI5Wm?4 m_T(gQmSX=3th?>&61zIj?(W~!zrPw`mzpxWl=GzjIp-IYEd-wc diff --git a/common/test/keyboards/baseline/k_027___system_stores_2.js b/common/test/keyboards/baseline/k_027___system_stores_2.js deleted file mode 100755 index 47da49cf68..0000000000 --- a/common/test/keyboards/baseline/k_027___system_stores_2.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_027___system_stores_2());}function Keyboard_k_027___system_stores_2(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_027___system_stores_2";this.KN="027 - system stores 2";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5="1234567890";this.s6="abcdefghij";this.s9="linux";this.s10="desktop";this.s11="hardware";this.s12="native";this.s13="fr-FR";this.s14="kbdfr.dll";this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,48)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,49)) {if(k.KIFS(31,this.s9,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"linux.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,50)) {if(k.KIFS(31,this.s10,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"desktop.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,51)) {if(k.KIFS(31,this.s11,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"hardware.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,52)) {if(k.KIFS(31,this.s12,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"native.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,53)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,54)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,55)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,56)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,57)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"platform-fail.");}}else if(k.KKM(e,16384,65)) {if(k.KIFS(32,this.s13,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"fr-FR.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,66)) {if(k.KIFS(32,this.s14,t)){r=m=1;k.KDC(0,t);k.KO(-1,t,"kbdfr.dll.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,67)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,68)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,69)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,70)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,71)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,72)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,73)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}else if(k.KKM(e,16384,74)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"baselayout-fail.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_027___system_stores_2.kmx b/common/test/keyboards/baseline/k_027___system_stores_2.kmx deleted file mode 100644 index dac90ab985bd96e1b54a14967406fb4236e80d09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1968 zcmd^<&uUXa6vj_W)f#IlsI68gag&AEkn~T|?qbm@)_+umE=`);CT-G`B(3cWxCm9m zl`9`Wq?FP}5EtS?M8pRW5h=x$NGZnOnanjqT_igfPWW=p_sw_Cy?18rotn9OM*<>` zeq?V6qfP%9-9YmM2)B#W7^Hv3=8<~ZOV|NlK_A!$yFjPU)8H4e6C}uEwt1E~ZSyLz z0($T~CqA?JHgN+CpuZ=+w)tn`2b=#SezAEc_qb>CUh)9Y+6%zqMT$~_m0?4;Lvm9t$_=?p9;IK{^bE-go)WGce(f5?JuD+K zDlvMG$++>QnV$m{97##ZtfZ;)(6XrWsCjtBT)$+x#QDEMZIEjw@zi^dqE5&?SdJb= z(?x4_epyzT6{D49fnG&fGD?;XCG-a-W{kE-UZGC!Ux$ZdP$p&Cum$chZL}~k&rioB zD|s9Eqo1S=H11H>SZw&1U<=KJ2kcfl~8 zQ`Yw#-f^g|`Mw@_7>wZ2^Qj{OPgu?OU5C#DT~lAn!>b_XXzTD7Ans@{;cvj0qrHWH z1LKai0}mY5Jr_9xbacV{t#-C9NeF%wq~N-$Ilg*T0u__y$2|C6j5V!3_$IjZ$6Ba&-x{~JtA*NTPxi0p8(#qb o$o5Jm4sgJNS$5g}EoR4Um`gjhu4f>;CvQNh9{n20I-z<`+lVIlT{_!k82 ztwbzRMXMBIVQC?(XP&!e;4E|R%)Iw@8oS$Dnvyo}A8$l>_8}%91$CIij0n>IShgaO zgDbd%S-6F3u=xkLgGqRWC&<7j4C6e-**|ffC(l6%Ej83uPe*F%*y)l2RaMYDbn#Dd zi`vkN*0oCRGq>Poi#liajINGO+_Xd4oQb_5`UC8Z+1UF+ zf5Rf$HgB`z+?;`0KOC49MPoYT-L<~Zf9?f-qP;=Ssc>LjR#CtF7DZ`s2+`$VN1HGw NZy%yULlu%4=@$SrOV9uS diff --git a/common/test/keyboards/baseline/k_029___beep.js b/common/test/keyboards/baseline/k_029___beep.js deleted file mode 100755 index 7862cedc62..0000000000 --- a/common/test/keyboards/baseline/k_029___beep.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_029___beep());}function Keyboard_k_029___beep(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_029___beep";this.KN="029 - beep";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,49)) {if(1){r=m=1;k.KDC(0,t);k.KB(t);}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_029___beep.kmx b/common/test/keyboards/baseline/k_029___beep.kmx deleted file mode 100644 index abf8b899836172c2802a5c5f3972aa85ee03ab52..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmYL^u}VT=7=|C0lt6IO^-K;z;b}XIn3N4tOA4-5XK=8jNbn9CqALimq6=tt@&baO zOK50tIX?eE?S<$3@A=;E{o(Ho`_~-8diDH`DujRi zlcIdcLQ1lfPpQa{d~N-o=dUycdZf&mFycP{Z*oFH#F5;XrA(dIx#E;d&h@d)K7&RN|T&h^Q1k=p0) ztAtUe6Js-`xC5K25SeEH7siCk7O6uSBk?)50X&Hx$CiPo@vksV{f_^JCBVP&bB0%y z6US6<#3v1B@vVlt@EwNx@jZqI@K+2!!VepMfgd&e20v-|Eq==INBjrFU-6#}&)|O; z{)_)*IKdrMV_N4<{5HdReA@6Se3#+N_=|>z@plZ5;h!0Pjem)?vZqM5T$hJ3Bn7$S zc&oG#Nl8+gu_1XNw`EucfO7l;oL@$$8kIT$Q_Se~}D3iFCT`6sX9xuC&L~@HUUP!Q0tATG8&5 zE1r@;$&}<|o#N-@P_iXCd8ha}0ZOhUC*|tRiJz5ncbSjnY2Eo)p4Oh{4x-vqoF&Ok z6iPI$KZvc>69lofdWL}e^!L+K1iU$4({luJ!_)L#sdf|XBVWoiRvg7Y)PINJ|EL)= zOGRceeMg&Y$sGJIrtfKsY5(9=mBRT%wwqQB--u=44W`w@o3Jc=mudUpN3a}xw`m>l z9!$TcX487%H!%H@RM#;8AH_z%2c1G6flrv$Xxdx&2h$Fi_8I=uv>m4XfmhOWbiX~O z)xjG~YcVYiKVn+FX}$1ErfoHC06uJ5(zK`WanqVin}ko9w%4?G@K2`c{pPy_IVCnYb|q~%Un-1Yk5go!k~ZoNIGM)$83baBE#y1n+=;!PJoeoXsU7z^)Tt1GV4o)yN5HR}Ht#kGI= laeY&MTzgpv?rYRp2j1`{=bU%nO?asv?(Zohh5b@PRLXAD2$)`j9O8>Y{?>hZAZK|z zKo92N2_9h-o}mw8@Cq-Gg?D&Mbeh>8=n6=6o#{rGiq!JHqN+j_wFD=m9d%K$+PDik z0&T0NEp4DfW|aM$K-bKO$xQleUsH9-4Xd9wYNGQ;F?Tq>y&-cVoF+tpW=A@ zS^Vu>Aju`mpLAw8jSxR!nUlux`6QdPtR@xk0aURwmQf}A3fR|8LDunRyi2la%h36hOG_j{O`VR DUGYIM diff --git a/common/test/keyboards/baseline/k_032___caps_control.js b/common/test/keyboards/baseline/k_032___caps_control.js deleted file mode 100755 index d8afdda31d..0000000000 --- a/common/test/keyboards/baseline/k_032___caps_control.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_032___caps_control());}function Keyboard_k_032___caps_control(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_032___caps_control";this.KN="032 - caps control";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0310;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16912,51)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16656,51)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16640,49)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,49)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16896,50)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16640,50)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16640,52)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,52)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16896,53)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16640,53)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16896,54)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16640,54)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16640,55)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,55)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_032___caps_control.kmx b/common/test/keyboards/baseline/k_032___caps_control.kmx deleted file mode 100644 index 1914d1954bb7186f7edb96a9a28e64df0ce182d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 880 zcmdUs%Pxaa6oprjxJF9cHIzgnf@teD)W#(t45&nm+}dbT+O#6^3MM8Vz(9-)MZ^P$ z2M{A8F)$JlV|@GXDbL{i`OevEowL_}TUbl1s7CrcdCQ66vx!j!R!>2m;+sLKa+?@A zSF}){!x^-~66z*Jxf`dPF}%1li=g7xcUHn$4s41N{Y~$WG_k zkFEpr0_Me~dUOZa+jcoGfbMr*w|V3ZpvMhlk2^Pso_1cZJ2#77h6!|^^AhL{=Y?GF W7J462-nY&0A8q7N1+Jp{FMB^|wPG3o diff --git a/common/test/keyboards/baseline/k_033___caps_always_off.js b/common/test/keyboards/baseline/k_033___caps_always_off.js deleted file mode 100755 index da223fb088..0000000000 --- a/common/test/keyboards/baseline/k_033___caps_always_off.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_033___caps_always_off());}function Keyboard_k_033___caps_always_off(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_033___caps_always_off";this.KN="033 - caps always off";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0300;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16640,49)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,49)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16640,50)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,50)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16640,51)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,51)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_033___caps_always_off.kmx b/common/test/keyboards/baseline/k_033___caps_always_off.kmx deleted file mode 100644 index cb9a71a0460da245d17985bf76235ebdf6c93080..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 572 zcmbV}!Ab&A6o!8Xv8at!) zOL19!=Z*ueJ(us^^WQn=_c+tLxxUhl^fCC}6_K-z*aFKhpilBgkScE*(e%>ukmC(r zp$wn!4%R<|DQv?Jd;vct55Hf|B2>tIu)N8626b|&r+ZEGpiqxa*VSP8I)+bg2$`fM3mdR`iVL6O}{7&NXngncKQo<`n3ZnlAl5ej%MUO`sF@ zwg#vn)5N;NS&DK}0$CJDOs;pP|CRAH=g|UeijuXor6tgdxdI`KDehFkJ zT2U*L&?oo+li(YCfdP@f_MN_f8(<2*312yV17ADcf^VI^ zhwq$zf*+lJfuBLf3{y^Jo$E+NRl_`^InB${45+ED6II}&!0sY*IzjfYd_t)~FC zT1qLeWo>AcURfrj!zn49Q4>&Qd)e9hbgPAR3q04U^jKM>#(YVZ?~qosO;*t!l|DU; zZ(=rlnu=a+_tcI^@8CcB5GL(*FOrSB*VCL;9vE-Jc{}93^TLD2uah^NmvD8L}0ESh9r_wQ9%@f7Ct~Mgghk>qr@l}tOTtsEJQ>s)Iw57 z3b7Px5o@s!e}VW1)^B!4gBQ-8$IRTB-JR6R(xSSg>%+#FsDOD;y};-R@PKeB+w9>sH^x4G=S%DW$yjw4t=ho{wo%NjVw;o7z%UMYybOd=9mvj7qF=Nb-ytuCjU^ zm!m^O^P1G0rqOZsh$k%T{H+`?S;%Hv_?pcIZFYn|wwd{}rq1zo zkUFvg!Z&NC-Ds26{-r&nWxj~> U*RQ$4+)dXF)6av!#Dx*cv)tUNg!yWZ}FQPhEODF6zipf3DXKztWt!rDG=nC$oAZ(dB zhE&sj`IDs_?_hf~z86p%-^=^n0(BL*vzBKJ_7=~{K3=VZRHikwdnzoV#gH#hF8XcS>21y-CTRo(u34_7ZLHq*oL!4)$ z6&=LnCm3+Op9gPp^?9!QdA~RL-mi((rA0MKwR*fHR)hOt5qW)#>LdJO(f+NI#-Fy2 zatbx*hjTcCX1Ik5Xn{v~03W==oAsa64+w#j(6$bhS4suXLmJhX{2GCh4oEk(ubj85 z!j6EFn$o7xpIrvy}GURFgJ6}@x93NxQ&>Su3?+?_rSaV^tlIJKxPo|1-m*9iQs zRvM@O&%I&;ZXA;axrG4KQTO&P8^(ihjdoZT!J}}4yBknUn!qQ)-BPDzaeM~u@Gi^d z@FZN~ZI&(ID{zIkTegO;!xP?P*#@45XS~<4EM9;Y+Mw#3E>;g6(8{5Q!6r5^x78f-4Bwk1oK{ zHKelDGe4tVIP>58y{3PCc|jH4;(QNPDL%?l@QLrP#c!qk)3hAiwlbHQ?8ri1WnJE7 zDI4-BA5xbuS(Sd%J5_0zq0cQZJd%=!+@M8=h<&-Ym&=49nK|QGKXP`YgP3!=oN=N* z2akmZjZTf3)&Spl3%T9iuk|RGi^zfz@4oJ SIX2fMv6h=BGBBr-mG2L_11f6( diff --git a/common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.js b/common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.js new file mode 100644 index 0000000000..32aebaea24 --- /dev/null +++ b/common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.js @@ -0,0 +1,69 @@ + +KeymanWeb.KR(new Keyboard_k_0400___groups_and_virtual_keys()); + +function Keyboard_k_0400___groups_and_virtual_keys() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0400___groups_and_virtual_keys"; + this.KN="0400 - groups and virtual keys"; + this.KMINVER="9.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0070; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_UMain_0(t,e); + }; + this.gs=function(t,e) { + return this.g_UMain_0(t,e); + }; + this.g_UMain_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4020, 0x32)) { + if(1){ + r=m=1; // Line 16 + k.KDO(0,t,0); + } + } + else if(k.KKM(e, 0x4040, 0x32)) { + if(1){ + r=m=1; // Line 17 + k.KDO(0,t,0); + } + } + else if(k.KKM(e, 0x4010, 0x32)) { + if(1){ + r=m=1; // Line 18 + k.KDO(0,t,1); + } + } + else if(k.KKM(e, 0x4000, 0x41)) { + if(1){ + r=m=1; // Line 15 + k.KO(0,t,"α"); + } + } + if(m==1) { + + r=this.g_DK1_1(t,e); + m=2; + } + return r; + }; + this.g_DK1_1=function(t,e) { + var k=KeymanWeb,r=1,m=0; + if(k.KDM(1,t,0)&&k.KCM(1,t,"α",1)){ + m=1; // Line 25 + k.KO(1,t,"ᾱ"); + } + else if(k.KDM(1,t,1)&&k.KCM(1,t,"α",1)){ + m=1; // Line 26 + k.KO(1,t,"ᾰ"); + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_014___groups_and_virtual_keys.kmn b/common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.kmn similarity index 92% rename from common/test/keyboards/baseline/k_014___groups_and_virtual_keys.kmn rename to common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.kmn index 0e32c432eb..67e63340a1 100644 --- a/common/test/keyboards/baseline/k_014___groups_and_virtual_keys.kmn +++ b/common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.kmn @@ -1,4 +1,4 @@ -store(&NAME) '014 - groups and virtual keys' +store(&NAME) '0400 - groups and virtual keys' c Description: Tests multiple groups and virtual keys with mnemonic layout c keys: [K_A][SHIFT K_2][K_A][LCTRL K_2][K_A] c expected: \u03B1\u1FB0\u1FB1 diff --git a/common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.kmx b/common/test/keyboards/baseline/k_0400___groups_and_virtual_keys.kmx new file mode 100644 index 0000000000000000000000000000000000000000..c0ab17f657754e43c5da65328588b52beb5e9107 GIT binary patch literal 766 zcmZvayDx)L7{;HvM8%*CZVQ8S5Tq3m7O94axFw2Mi^jFBs7h+`7Z?m;6tNHkMlp#& z`~@PW4rT+3!RL3*cMyp;dCvR1&wDxNeCHdTn@*@w%AT&i3k#S9s{$n;20joy4EkfA zCW+O7dvFKp!6SG86`+B>CwvgJ!&^ZOJdW=NA^0+W-tk@hj^q3IJ;%@RCyw9ZZyYb; zpFxB<(x_4@D6OP2Hjb#9Ohhf}0883bR(WkGM`UUi@!MKK-$GAnop{a8$k89xga$OO zA$XrU?H*yx5>F|i5lxc!cMemPp)bw+4D%K=#=md&dkD^4!<#;OET_adIi{oBGZ2g8iV) zy<{030dPfp?KDFB7Z~q(<(B`wga3*xFiSf8nAMJM9a&a$#)% literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0401___multiple_groups.js b/common/test/keyboards/baseline/k_0401___multiple_groups.js new file mode 100644 index 0000000000..12bc00f9e6 --- /dev/null +++ b/common/test/keyboards/baseline/k_0401___multiple_groups.js @@ -0,0 +1,73 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0401___multiple_groups()); +} +function Keyboard_k_0401___multiple_groups() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0401___multiple_groups"; + this.KN="401 - multiple groups"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 13 + k.KDC(0,t); + k.KO(-1,t,"a"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_2 /* 0x32 */)) { + if(k.KFCM(1,t,['b'])){ + r=m=1; // Line 14 + k.KDC(1,t); + k.KO(-1,t,"b"); + r=this.g_b_2(t,e); + m=2; + } + } + if(m==1) { + + k.KDC(-1,t); + r=this.g_a_1(t,e); + m=2; + } + return r; + }; + this.g_a_1=function(t,e) { + var k=KeymanWeb,r=1,m=0; + if(k.KFCM(1,t,['a'])){ + m=1; // Line 20 + k.KDC(1,t); + k.KO(-1,t,"b"); + } + return r; + }; + this.g_b_2=function(t,e) { + var k=KeymanWeb,r=1,m=0; + if(k.KFCM(1,t,['b'])){ + m=1; // Line 24 + k.KDC(1,t); + k.KO(-1,t,"abc"); + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_030___multiple_groups.kmn b/common/test/keyboards/baseline/k_0401___multiple_groups.kmn similarity index 90% rename from common/test/keyboards/baseline/k_030___multiple_groups.kmn rename to common/test/keyboards/baseline/k_0401___multiple_groups.kmn index b9148827bc..87097387aa 100644 --- a/common/test/keyboards/baseline/k_030___multiple_groups.kmn +++ b/common/test/keyboards/baseline/k_0401___multiple_groups.kmn @@ -1,4 +1,4 @@ -store(&NAME) "030 - multiple groups" +store(&NAME) "401 - multiple groups" c Description: Tests multiple groups. Purpose here is to interleave output and backspaces from kmx processor to consumer c keys: [K_1][K_2] c expected: abc diff --git a/common/test/keyboards/baseline/k_030___multiple_groups.kmx b/common/test/keyboards/baseline/k_0401___multiple_groups.kmx similarity index 67% rename from common/test/keyboards/baseline/k_030___multiple_groups.kmx rename to common/test/keyboards/baseline/k_0401___multiple_groups.kmx index e27ee4dd08c08fc1f45267c54dbfb6dd1bfe5109..415a932ccb7e862990a7eddee4d676b3766d6c1b 100644 GIT binary patch delta 30 mcmcb@a)pJ*J0c{Qfs29RPMm(~M4oM|CJY7)h8vIfG6DdINC?sZ delta 30 mcmcb@a)pJ*J0c{Qfs27*j?LcCi9Fj_4H%3W3^pF`Wds0;MhNTx diff --git a/common/test/keyboards/baseline/k_0402___output_and_keystroke.js b/common/test/keyboards/baseline/k_0402___output_and_keystroke.js new file mode 100644 index 0000000000..aa1e890329 --- /dev/null +++ b/common/test/keyboards/baseline/k_0402___output_and_keystroke.js @@ -0,0 +1,87 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0402___output_and_keystroke()); +} +function Keyboard_k_0402___output_and_keystroke() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0402___output_and_keystroke"; + this.KN="0402 - output and keystroke"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 13 + k.KDC(0,t); + k.KO(-1,t,"a"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_2 /* 0x32 */)) { + if(k.KFCM(1,t,['b'])){ + r=m=1; // Line 14 + k.KDC(1,t); + k.KO(-1,t,"b"); + r=this.g_b_2(t,e); + m=2; + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_3 /* 0x33 */)) { + if(k.KFCM(3,t,['a','b','c'])){ + r=m=1; // Line 15 + k.KDC(3,t); + k.KO(-1,t,"a"); + k.KO(-1,t,"bd"); + r=this.g_emit_3(t,e); + m=2; + } + } + if(m==1) { + + k.KDC(-1,t); + r=this.g_a_1(t,e); + m=2; + } + return r; + }; + this.g_a_1=function(t,e) { + var k=KeymanWeb,r=1,m=0; + if(k.KFCM(1,t,['a'])){ + m=1; // Line 21 + k.KDC(1,t); + k.KO(-1,t,"b"); + } + return r; + }; + this.g_b_2=function(t,e) { + var k=KeymanWeb,r=1,m=0; + if(k.KFCM(1,t,['b'])){ + m=1; // Line 25 + k.KDC(1,t); + k.KO(-1,t,"abc"); + } + return r; + }; + this.g_emit_3=function(t,e) { + var k=KeymanWeb,r=0,m=0; + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_043___output_and_keystroke.kmn b/common/test/keyboards/baseline/k_0402___output_and_keystroke.kmn similarity index 90% rename from common/test/keyboards/baseline/k_043___output_and_keystroke.kmn rename to common/test/keyboards/baseline/k_0402___output_and_keystroke.kmn index 4c6409c1c7..dd8df42184 100644 --- a/common/test/keyboards/baseline/k_043___output_and_keystroke.kmn +++ b/common/test/keyboards/baseline/k_0402___output_and_keystroke.kmn @@ -1,4 +1,4 @@ -store(&NAME) '043 - output and keystroke' +store(&NAME) '0402 - output and keystroke' c Description: Tests the 'emit default key' function by having an empty 'using keys' final group c keys: [K_1][K_2][K_3] c expected: abd3 diff --git a/common/test/keyboards/baseline/k_0402___output_and_keystroke.kmx b/common/test/keyboards/baseline/k_0402___output_and_keystroke.kmx new file mode 100644 index 0000000000000000000000000000000000000000..a6a883d2fd232490492a2c257e2b7bf08e1fce33 GIT binary patch literal 726 zcmZvazb`{k6vw}m5{XiYUx}fUP17F|v6T>srWPb(du>TtQPLt|5Tk*_WHyKx`~e0L zqd{!^JJ09bca@0KeBbwczvtX@@4K(XjkQ(vNsYwihlmb)5LoI01#pKM5~S_;?2OV8 z=m|W6QSb(yK@W(t?j7z06XZi+kbD|W`+ON*@cAaZ=JPsS_4z4$;`3|x3S^ig6}6>f z?J7{i>5QhS3NlR2ybO-p6JL}vmZa|h(-f25W+36Xl^XM&3TVrp@*34_22{l!iUv($R%6dzG zc1UpBV<7HtJw{IlI7eT2583{D_jnKg_-}aMU(Wh1Y)%+<%i4dxlhkkJ0^fwv2FM{3 z-rGcP1AEf}@72*~ATZ6$n44>7EjyiLuP{uqQ`J@M{}oWHIOahNN2D9(+yYx^^NcOV QBhm}CSMa^w>OXh;1y)H=<^TWy literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_040___long_context.js b/common/test/keyboards/baseline/k_040___long_context.js deleted file mode 100755 index 39d43abebc..0000000000 --- a/common/test/keyboards/baseline/k_040___long_context.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_040___long_context());function Keyboard_k_040___long_context(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_040___long_context";this.KN="040 - long context";this.KMINVER="6.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,32)) {if(1){r=m=1;k.KO(0,t," ");}}else if(k.KKM(e,16384,70)) {if(k.KCM(1,t," ",1)){r=m=1;k.KO(1,t," ");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_040___long_context.kmx b/common/test/keyboards/baseline/k_040___long_context.kmx deleted file mode 100644 index 55a88a77abb2acf83872b6a12dc061dce250738f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 366 zcmYL^!Ae3=5Qe`ZvW?)%ws++&Q3$D>1<^umlS0cPGj60pN#q;2koH3KG(AAjMtX!+ zzCnFw(3-<{&i~KMnR9RJqI1qRe0IL(7#nFbOoeWGmQDT`%D)({8p~#8GL>C^ diff --git a/common/test/keyboards/baseline/k_041___long_context_and_deadkeys.js b/common/test/keyboards/baseline/k_041___long_context_and_deadkeys.js deleted file mode 100755 index 86542bbac7..0000000000 --- a/common/test/keyboards/baseline/k_041___long_context_and_deadkeys.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_041___long_context_and_deadkeys());function Keyboard_k_041___long_context_and_deadkeys(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_041___long_context_and_deadkeys";this.KN="041 - long context and deadkeys";this.KMINVER="6.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,49)) {if(k.KDM(60,t,0)&&k.KCM(60,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh",60)){r=m=1;k.KO(-1,t,"1");}}else if(k.KKM(e,16384,50)) {if(k.KCM(63,t,"\x08\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh1",63)){r=m=1;k.KO(63,t,"FAIL TEST 2");}else if(k.KCM(62,t,"\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh1",62)){r=m=1;k.KO(62,t,"FAIL TEST 2");}else if(k.KCM(61,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh1",61)){r=m=1;k.KO(-1,t,"2");}}else if(k.KKM(e,16384,51)) {if(k.KCM(64,t,"\x08\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh12",64)){r=m=1;k.KO(64,t,"FAIL TEST 3");}else if(k.KCM(63,t,"\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh12",63)){r=m=1;k.KO(63,t,"FAIL TEST 3");}else if(k.KCM(62,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh12",62)){r=m=1;k.KO(62,t,"abcdefghijklmnopqrstuvwxyz123");}}else if(k.KKM(e,16384,52)) {if(k.KDM(29,t,0)&&k.KCM(29,t,"abcdefghijklmnopqrstuvwxyz123",29)){r=m=1;k.KO(29,t,"PASS");}}else if(k.KKM(e,16384,90)) {if(1){r=m=1;k.KDO(0,t,0);k.KO(-1,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_041___long_context_and_deadkeys.kmx b/common/test/keyboards/baseline/k_041___long_context_and_deadkeys.kmx deleted file mode 100644 index de2b1d5020c9941e3a57d1734085ca1dd0abe11d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1816 zcmc(f%PvDv6o!B5QX`E)86cHNM~EVZf)t@Nl2#%jlDc2&UY8nq1OpNA1R@^8j3+QO z6p5J_sc-EbV!#B+SttMAYyEqjefifpJ29C~sY1GadOj9bVhvUa% zg~2&E1-0N3TmTz>1Xmyk-oOh8fiUxh4EQbdQO}Rl_kebIDWL`BwXTddT->fM#S~F1 z$Z8XI32)AMIdTt`Bev{$`gxcP?V6iqml>i;s!wAY!0%R@TP3P}#&@)<6*rGqp@Z=u zMkC~A;BEDo%kI|%(TZEs=9fBoq`1qD;VqU(Tj0a0a4h^flT_mkHyhaVNxgpo_T4<3{)f(qM|X z+PGfnj5tgo3xxm*SRdpx8O@@Aoqv%EEThLNDrc$G1{!W@+v%Cp9@-vImAsDrh+T{_I3JOG5e3ctC{W0&zjl3ep4;G evuy9bdG|lwDc+gm{GBPDzuXfaC-M8Hk=_Ayq%&;* diff --git a/common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.js b/common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.js deleted file mode 100755 index da7e2138ff..0000000000 --- a/common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_042___long_context_and_split_deadkeys());function Keyboard_k_042___long_context_and_split_deadkeys(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_042___long_context_and_split_deadkeys";this.KN="042 - long context and split deadkeys";this.KMINVER="6.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,32)) {if(k.KCM(64,t,"\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk",64)){r=m=1;k.KO(64,t,"FAIL");}else if(k.KDM(63,t,0)&&k.KCM(63,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk",63)){r=m=1;k.KO(63,t,"UNEXPECTED");}}else if(k.KKM(e,16384,49)) {if(k.KCM(61,t,"defghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk ",61)){r=m=1;k.KO(61,t,"def");}}else if(k.KKM(e,16384,50)) {if(k.KDM(6,t,0)&&k.KCM(6,t,"abcdef",6)){r=m=1;k.KO(6,t,"PASS");}}else if(k.KKM(e,16384,90)) {if(1){r=m=1;k.KDO(0,t,0);k.KO(-1,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.kmx b/common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.kmx deleted file mode 100644 index fbe552d53b0f731852fd07a3aa5831d25cda51f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1072 zcmd6kyH0{Z5QPt@NGOQWL>r4gn$SrQ4T&8p-hvVmFd=p*UO+??yg+4bO`$%4@u94J z0$coML2W2aaQ>W~Gqbbv&z?;e@;L>h`R7nXn9mk$92if60;G#Ue=IiIqtm!2&;c{x z6}$jD{|Vke5QOOA2NUo){A`~m@bNy+;I~1H8Y!(~wREAPYA%jxS#fz<099R*J%t@P z)};1cO=7Dq;Tx(`Rd%@&yG63+u49945oNThJ#D}fin>2Wbj$uVC(Evuhs)aEF>Lwg2#pP%MMq1!Y;+m1j*cSGODd2eb85(a_ZKP$J7)<@g3^GAK8UH!v4lLbai$>U7%t zG(TyDYJ%!JL2wW+ zK*UMB0x!bR!7V=L81!Xk564NPyr7*S%#Kl`i(7pOeI zJuJdAJi-iozzfVm%={N|9+uEawcjGHRC<%R4mNW{9KbRq>J)FC5pk$<)R_4RUTSJj+uGF*y2EKLKe4F`CUO;Q+r0HU_#WK`(}B8G?e>iG zhs3~!xFdCyli7BmE_va-4fegkApK!N}O diff --git a/common/test/keyboards/baseline/k_045___deadkey_and_context.js b/common/test/keyboards/baseline/k_045___deadkey_and_context.js deleted file mode 100755 index 750277ccbe..0000000000 --- a/common/test/keyboards/baseline/k_045___deadkey_and_context.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_045___deadkey_and_context());}function Keyboard_k_045___deadkey_and_context(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_045___deadkey_and_context";this.KN="045 - deadkey and context";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0010;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16400,191)) {if(k.KFCM(7,t,['<',{t:'d',d:0},'a',{t:'d',d:1},'b',{t:'d',d:2},'>'])){r=m=1;k.KDC(7,t);k.KO(-1,t,"correct");}}else if(k.KKM(e,16384,89)) {if(1){r=m=1;k.KDC(0,t);k.KDO(-1,t,0);k.KO(-1,t,"a");k.KDO(-1,t,1);k.KO(-1,t,"b");k.KDO(-1,t,2);}}else if(k.KKM(e,16384,90)) {if(k.KFCM(5,t,[{t:'d',d:0},'a',{t:'d',d:1},'b',{t:'d',d:2}])){r=m=1;k.KDC(5,t);k.KO(-1,t,"<");k.KDO(-1,t,0);k.KO(-1,t,"a");k.KDO(-1,t,1);k.KO(-1,t,"b");k.KDO(-1,t,2);k.KO(-1,t,">");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_045___deadkey_and_context.kmx b/common/test/keyboards/baseline/k_045___deadkey_and_context.kmx deleted file mode 100644 index 4b1e3bfb2aa31a9c5885a151a395d08e36c9a9fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 576 zcmaKpO-chn5QSeRf>9LIg>FKaMF?(`nHV8L&={0}K@n6CSB@r&DE<&dk{rXeM{psY zKs<#<$O+u)S8YdKh&8;b_o`l3(@f)Ve^295R2gJNq%09*z<3q(As+_Nk37Goo`Hz7QbR5EbfH9-PDd(f zS)mp{lUYJOcb?FBn)FX~h5MFnmn;>uqjha-6CSg7(d{ni4o62fYCFHpVjOj*A?}2} z-MIp4I)Jy`X1mqAW%7pe+Nq(AIa~ati|8fveM))&!$?C+{@k;Mn(^Z|Mg!18Px{^n s{~!zc=xN`}q340UxWm_i*^4Xu!3_HoR|B26n${|_zbCfPPW|us1di2800000 diff --git a/common/test/keyboards/baseline/k_046___deadkey_and_contextex.js b/common/test/keyboards/baseline/k_046___deadkey_and_contextex.js deleted file mode 100755 index 45dc72f186..0000000000 --- a/common/test/keyboards/baseline/k_046___deadkey_and_contextex.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_046___deadkey_and_contextex());}function Keyboard_k_046___deadkey_and_contextex(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_046___deadkey_and_contextex";this.KN="046 - deadkey and contextex";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0010;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16400,191)) {if(k.KFCM(3,t,['<',{t:'d',d:0},'>'])){r=m=1;k.KDC(3,t);k.KO(-1,t,"correct");}}else if(k.KKM(e,16400,77)) {if(k.KFCM(5,t,[{t:'d',d:0},'a',{t:'d',d:1},'b',{t:'d',d:2}])){r=m=1;k.KDC(5,t);k.KO(-1,t,"<");k.KDO(-1,t,0);k.KO(-1,t,">");}}else if(k.KKM(e,16384,89)) {if(1){r=m=1;k.KDC(0,t);k.KDO(-1,t,0);k.KO(-1,t,"a");k.KDO(-1,t,1);k.KO(-1,t,"b");k.KDO(-1,t,2);}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_046___deadkey_and_contextex.kmx b/common/test/keyboards/baseline/k_046___deadkey_and_contextex.kmx deleted file mode 100644 index 618eefbf27fa97b51828277312f179cc1a9aecfd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 566 zcmZ{h%}PR16or=-WkH|~YSQ4+K$;X@6EUzKqi7&H$)Hhi>q(t( z@Hu*f9w3_3w~xna(!Q*{*V=oXeUwu_Z5?Y~x_sEqiAY%@=78}%Fo1j!(4Q!$$8?GE z44%L;cm*$D7JPyc$bc+6WvTaS zl@(|m#LOb{mGcD76Vt!Y4eo^Qz0Xo!P1V%UAzMOrZ@B$=-Qnu#RvmZ7W+9FvrUCAV zzTLY8_H_d9xb1ecc`M`t=e1K49dfq#M;FnX=wV8F1e2J8nEbtG7q#feZ;akS1MMD* v`hlM2E&A{U?^{8afc@(pUmKP%tMZB&_V0L}^L*Tm+%&CoSM8Vl*O$Hl`LRaN diff --git a/common/test/keyboards/baseline/k_047___caps_always_off_initially_on.js b/common/test/keyboards/baseline/k_047___caps_always_off_initially_on.js deleted file mode 100755 index 3775e99174..0000000000 --- a/common/test/keyboards/baseline/k_047___caps_always_off_initially_on.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_047___caps_always_off_initially_on());}function Keyboard_k_047___caps_always_off_initially_on(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_047___caps_always_off_initially_on";this.KN="047 - caps always off initially on";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0300;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16640,49)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,49)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16640,50)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,50)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}else if(k.KKM(e,16640,51)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"fail.");}}else if(k.KKM(e,16896,51)) {if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"pass.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_047___caps_always_off_initially_on.kmx b/common/test/keyboards/baseline/k_047___caps_always_off_initially_on.kmx deleted file mode 100644 index 301fcddc0469177249bea6a3887abb6daae0cf5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 598 zcmbV}J4*vm5QR^IM6r-We544n)fS>5@qv;mS?~cNA{c{(%@PeRtR@&y(pg(uh`&Jm z1O6?`6oP(pca_x6a_-DI^Saz^p0!UjD}9`o$HFppVAH_jI=CYE#t1cK2iD0ZehK#i zp20GB1FyjPKfybg0Xb%T;aQ~;aS`N+>-bt4cksucf-W_6sgbS~>c;VkwzMNp>!6D| z(2yuptOw4KV}14bJVo?Gx&xMv$$IL$Ilhk6P)mEvtg@->w)whe+buJqw603t|JyUU zCD~!!+teJ;?=dfQJ5Ak04Rq>m&}G^MlcmRu^aOq_M__caQz}@xA!T{pIbgS#H!a|` z;3cpDT`-Nh75HkZEt(ccYw%rQ_pm==bv5{YsufKOq(gWc^xWNJUczhu8}cRWzquc6 CV?lcW diff --git a/common/test/keyboards/baseline/k_048___modifier_keys_keep_context.js b/common/test/keyboards/baseline/k_048___modifier_keys_keep_context.js deleted file mode 100755 index 5b171674cf..0000000000 --- a/common/test/keyboards/baseline/k_048___modifier_keys_keep_context.js +++ /dev/null @@ -1 +0,0 @@ -KeymanWeb.KR(new Keyboard_k_048___modifier_keys_keep_context());function Keyboard_k_048___modifier_keys_keep_context(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_048___modifier_keys_keep_context";this.KN="048 - modifier keys keep context";this.KMINVER="9.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,65)) {if(1){r=m=1;k.KO(0,t,"a");}}else if(k.KKM(e,16384,66)) {if(k.KCM(1,t,"a",1)){r=m=1;k.KO(1,t,"pass.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_048___modifier_keys_keep_context.kmx b/common/test/keyboards/baseline/k_048___modifier_keys_keep_context.kmx deleted file mode 100644 index 98ca5a6dbe39d8e012c3f744a706235d18dbc689..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 402 zcmYL^F-rqM5Jq28M1_b}+E}Ez&Je}IbV)!&g9=F$+ryj?BvFiof`wRFND6E5xA_As z)9ah#)LGu{_sz`i+;z_feU@NePWCWLu^AN!-I8s^x1s!tx1w>)%&WY}y1dIw7UWYt zWKrhwC96{PZbd@ZJU67FhAtToj7gc~zQGQ=)Yz0U*9;kPDH*qBuJZ0_p)zh%7j{j! zvvTha3CFZKB7Uw(J)e_srti_`fD`Mm<$`^yF(-9G%x_AEQ}rl+cj&8dSb~B4Mp+T| g|6W_S9OV`~T6&U>cBRNY>t~XN_p4K;uDUuhKPy}<Ch^2?>Q+Sc)~M$zsU*1{B27itrM? zj}Kr?uiqU3Z}QDObMDVfJh;8lq4Zh*7>X#_L3m&~f+pgJK<=a1HlE-tVF6WG!8;tl z7p$QS8~BD}IAYcV(`V#U2+&fjiQe?2M9=OXsHscUbPf}|SI%4y%FuJVrl^!`{tSPt zmu**pC;95@N3rkkja?3;?6Xrd;?kgNEY%5WNj@= zNgcoQGFW)(cc1@rp6C4Ux%bo#_I5Qat=>ipBKquu7y+xR&_x&m`4dUO%W2XhJirV* z!xId`2fRQLM)8P(`8+v>an_f~i$QObH(-|aBl2O;P4aQjXXIAU9r8J(%u6+$>P8o8 zD0g+LH9DzcEkRoyT`42yx};y$j@DJzCc45@;#|tQ#-+=IpY+}>cD3Ey3ePR)S?4{O zdsBt|oLl=;nNFB&;$dBF__O`hcbxbhdJ!RP`Ri!+ltTNJ)*D!diLmxg{Rs`~v9R_< sJ;0sVHTz#}l&I&xm`U}!8|`T>obcb3pp2PfqTp^S=L_P0dPB^819yfy3IG5A literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0501___options_with_preset.js b/common/test/keyboards/baseline/k_0501___options_with_preset.js new file mode 100644 index 0000000000..bf48622b98 --- /dev/null +++ b/common/test/keyboards/baseline/k_0501___options_with_preset.js @@ -0,0 +1,66 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0501___options_with_preset()); +} +function Keyboard_k_0501___options_with_preset() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0501___options_with_preset"; + this.KN="0501 - options with preset"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_foo_4=KeymanWeb.KLOAD(this.KI,"foo","0"); + this.s7="1"; + this.s8="0"; + this.s9="1"; + this.s10="0"; + this.KVS=['s_foo_4']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_0 /* 0x30 */)) { + if(1){ + r=m=1; // Line 21 + k.KDC(0,t); + this.s_foo_4=this.s10; + k.KSAVE("foo",this.s_foo_4); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 20 + k.KDC(0,t); + this.s_foo_4=this.s9; + k.KSAVE("foo",this.s_foo_4); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(this.s_foo_4===this.s7){ + r=m=1; // Line 18 + k.KDC(0,t); + k.KO(-1,t,"foo."); + } + else if(this.s_foo_4===this.s8){ + r=m=1; // Line 19 + k.KDC(0,t); + k.KO(-1,t,"no foo."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_022___options_with_preset.kmn b/common/test/keyboards/baseline/k_0501___options_with_preset.kmn similarity index 88% rename from common/test/keyboards/baseline/k_022___options_with_preset.kmn rename to common/test/keyboards/baseline/k_0501___options_with_preset.kmn index dbaad6e63c..98184fca34 100644 --- a/common/test/keyboards/baseline/k_022___options_with_preset.kmn +++ b/common/test/keyboards/baseline/k_0501___options_with_preset.kmn @@ -1,8 +1,8 @@ -store(&NAME) '022 - options with preset' +store(&NAME) '0501 - options with preset' c Description: Tests basic option rules with a preset supplied c keys: [K_A][K_1][K_A][K_0][K_A] c expected: foo.foo.no foo. -c context: +c context: c option: foo=1 c expected option: foo=0 c saved option: foo=0 diff --git a/common/test/keyboards/baseline/k_0501___options_with_preset.kmx b/common/test/keyboards/baseline/k_0501___options_with_preset.kmx new file mode 100644 index 0000000000000000000000000000000000000000..0ed8c43f5e518305a791b391b3cab3607fd07bf2 GIT binary patch literal 594 zcmZXRyGjE=7==%QqDGNm5^W?b7F!60ENDn!q2dJ$T6jaOT)bckH(|3x1+fqdvGN(L zeGCin3B=C#5Y}&YM-BMHnRCv6+gYZuzq75JG`08mDI#MIVi*{`03HxAf&7iFY%0g0 zSMUNRz&m&Y10c`b2RsN|^rTrx%)@n%N3X-nRv*F#piI6ChgM(1msa1xH&)-ncc5yP zs-Y8I>0G{o#8)*(#gn5M&{A8GnsA^F{sJB84AoZ1WCujdx!TmCHnf8Fn6D(;U3IC4 zbfp{8Z=SNPmGsp(*XVSZ^yx7-@HET0q+MK7M|2*u!{kk*ckb0s8R;4PL?6P~zl~<5 zWXoTaMtB3Wp=fiX_%iVEV>ajDr){oab2a=bh~t9#dFePV!6wp7t|ycJVB=Ur N8Spob{?~@+`v!5WLhb+n literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0502___options_with_save.js b/common/test/keyboards/baseline/k_0502___options_with_save.js new file mode 100644 index 0000000000..26c4fa041b --- /dev/null +++ b/common/test/keyboards/baseline/k_0502___options_with_save.js @@ -0,0 +1,71 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0502___options_with_save()); +} +function Keyboard_k_0502___options_with_save() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0502___options_with_save"; + this.KN="0502 - options with save"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_foo_4=KeymanWeb.KLOAD(this.KI,"foo","0"); + this.s7="1"; + this.s8="0"; + this.s9="1"; + this.s10="0"; + this.KVS=['s_foo_4']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_0 /* 0x30 */)) { + if(1){ + r=m=1; // Line 20 + k.KDC(0,t); + this.s_foo_4=this.s10; + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 19 + k.KDC(0,t); + this.s_foo_4=this.s9; + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_2 /* 0x32 */)) { + if(1){ + r=m=1; // Line 21 + k.KDC(0,t); + k.KSAVE("foo",this.s_foo_4); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(this.s_foo_4===this.s7){ + r=m=1; // Line 17 + k.KDC(0,t); + k.KO(-1,t,"foo."); + } + else if(this.s_foo_4===this.s8){ + r=m=1; // Line 18 + k.KDC(0,t); + k.KO(-1,t,"no foo."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_023___options_with_save.kmn b/common/test/keyboards/baseline/k_0502___options_with_save.kmn similarity index 88% rename from common/test/keyboards/baseline/k_023___options_with_save.kmn rename to common/test/keyboards/baseline/k_0502___options_with_save.kmn index 913bea076f..987b30055c 100644 --- a/common/test/keyboards/baseline/k_023___options_with_save.kmn +++ b/common/test/keyboards/baseline/k_0502___options_with_save.kmn @@ -1,8 +1,8 @@ -store(&NAME) '023 - options with save' +store(&NAME) '0502 - options with save' c Description: Tests basic option rules with save c keys: [K_A][K_1][K_A][K_0][K_A][K_2] c expected: no foo.foo.no foo. -c context: +c context: c expected option: foo=0 c saved option: foo=0 diff --git a/common/test/keyboards/baseline/k_0502___options_with_save.kmx b/common/test/keyboards/baseline/k_0502___options_with_save.kmx new file mode 100644 index 0000000000000000000000000000000000000000..5277a9c6e313a5dfd41466e86691ae2d36d1b3bd GIT binary patch literal 608 zcmZvaJ5K^Z6on5Y#21CiLn=dvq0$YDkWixWQ4nneV`1UON2G8uKztR(!uT_+{UH{{ z&d&H})^BEK)xw*cIp^HD_s-7lb`H9GnwCZ%y*Cjlvk)`D=r(vlLcC?B1>Gka7s@)w@7k9_! zoiS-(>zb_FRF>%ss4=JeT4h~V57*Z*l_&NDpKS8HfAw=pdI3pf5XSyaG%a!mIP{$WsZVA5(0{ooIdH9yg&AZ$Nz6+u#r;PpbiRQ;3qNqULM0{({=JMpy O_S=TsulBm{Pc!ayJZ literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0503___options_with_save_and_preset.js b/common/test/keyboards/baseline/k_0503___options_with_save_and_preset.js new file mode 100644 index 0000000000..0ce89bd875 --- /dev/null +++ b/common/test/keyboards/baseline/k_0503___options_with_save_and_preset.js @@ -0,0 +1,72 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0503___options_with_save_and_preset()); +} +function Keyboard_k_0503___options_with_save_and_preset() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0503___options_with_save_and_preset"; + this.KN="0503 - options with save and preset"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_foo_4=KeymanWeb.KLOAD(this.KI,"foo","0"); + this.s7="1"; + this.s8="0"; + this.s9="1"; + this.s10="0"; + this.s11="0"; + this.KVS=['s_foo_4']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_0 /* 0x30 */)) { + if(1){ + r=m=1; // Line 21 + k.KDC(0,t); + this.s_foo_4=this.s10; + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 20 + k.KDC(0,t); + this.s_foo_4=this.s9; + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_2 /* 0x32 */)) { + if(this.s_foo_4===this.s11){ + r=m=1; // Line 22 + k.KDC(0,t); + k.KSAVE("foo",this.s_foo_4); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(this.s_foo_4===this.s7){ + r=m=1; // Line 18 + k.KDC(0,t); + k.KO(-1,t,"foo."); + } + else if(this.s_foo_4===this.s8){ + r=m=1; // Line 19 + k.KDC(0,t); + k.KO(-1,t,"no foo."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_024___options_with_save_and_preset.kmn b/common/test/keyboards/baseline/k_0503___options_with_save_and_preset.kmn similarity index 86% rename from common/test/keyboards/baseline/k_024___options_with_save_and_preset.kmn rename to common/test/keyboards/baseline/k_0503___options_with_save_and_preset.kmn index 0c3004c3e3..9688ed8e61 100644 --- a/common/test/keyboards/baseline/k_024___options_with_save_and_preset.kmn +++ b/common/test/keyboards/baseline/k_0503___options_with_save_and_preset.kmn @@ -1,8 +1,8 @@ -store(&NAME) '024 - options with save and preset' +store(&NAME) '0503 - options with save and preset' c Description: Tests basic option rules with save c keys: [K_A][K_1][K_A][K_0][K_A][K_2] c expected: foo.foo.no foo. -c context: +c context: c option: foo=1 c expected option: foo=0 c saved option: foo=0 diff --git a/common/test/keyboards/baseline/k_0503___options_with_save_and_preset.kmx b/common/test/keyboards/baseline/k_0503___options_with_save_and_preset.kmx new file mode 100644 index 0000000000000000000000000000000000000000..49b55208b61eb58cb876320210f253ea9dd092fb GIT binary patch literal 658 zcmZXSy)T1N6vm%6X?zZ%Et|YkH%&_!3{pZQibY9dQc7BhwrQJ|#b_20gBZjh2JvUu zBnIpf@o&6-_r4cRoaDLBbDn$7x$no#74qxqmpO*=mAOkzTjT4fSxe}i7j{&457>Lj?*Xb5g5b2fX|%1f-jxEfv=sugKwRF zfbT)d9H5-`bgV-aRke9aQ|wI2(>SQ9u9hlrRZa2^x}`FzNk^Mr&vusJx*Ft7&|*?T zYns!l7SU-YChd6%+tZ*bm>E39KJ#m~Zklz8N{`MWHRhSp%COFBgRG)mDodPUd=tT2 zbnC!*3h|}EPec$V{hMp*;%+;`Kbi$*PRw~(@?|hVZvLH#74keNqKB;`ZId53FY3HD q`6=-Is3ID$ZlJk9gzv}k4aeZHy+grQNOrmAHdJ|EPyhG&*!u=B;!RQj literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0504___options_with_reset.js b/common/test/keyboards/baseline/k_0504___options_with_reset.js new file mode 100644 index 0000000000..5cb7dc19ae --- /dev/null +++ b/common/test/keyboards/baseline/k_0504___options_with_reset.js @@ -0,0 +1,71 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0504___options_with_reset()); +} +function Keyboard_k_0504___options_with_reset() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0504___options_with_reset"; + this.KN="0504 - options with reset"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_foo_4=KeymanWeb.KLOAD(this.KI,"foo","0"); + this.s7="1"; + this.s8="0"; + this.s9="1"; + this.s10="0"; + this.KVS=['s_foo_4']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_0 /* 0x30 */)) { + if(1){ + r=m=1; // Line 20 + k.KDC(0,t); + this.s_foo_4=this.s10; + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 19 + k.KDC(0,t); + this.s_foo_4=this.s9; + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_3 /* 0x33 */)) { + if(1){ + r=m=1; // Line 21 + k.KDC(0,t); + this.s_foo_4=k.KLOAD(this.KI,"foo","0"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(this.s_foo_4===this.s7){ + r=m=1; // Line 17 + k.KDC(0,t); + k.KO(-1,t,"foo."); + } + else if(this.s_foo_4===this.s8){ + r=m=1; // Line 18 + k.KDC(0,t); + k.KO(-1,t,"no foo."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_025___options_with_reset.kmn b/common/test/keyboards/baseline/k_0504___options_with_reset.kmn similarity index 87% rename from common/test/keyboards/baseline/k_025___options_with_reset.kmn rename to common/test/keyboards/baseline/k_0504___options_with_reset.kmn index 13a0d69283..caeb29c25d 100644 --- a/common/test/keyboards/baseline/k_025___options_with_reset.kmn +++ b/common/test/keyboards/baseline/k_0504___options_with_reset.kmn @@ -1,8 +1,8 @@ -store(&NAME) '025 - options with reset' +store(&NAME) '0504 - options with reset' c Description: Tests basic option rules with reset c keys: [K_A][K_1][K_A][K_0][K_A][K_3] c expected: foo.foo.no foo. -c context: +c context: c option: foo=1 c expected option: foo=1 diff --git a/common/test/keyboards/baseline/k_0504___options_with_reset.kmx b/common/test/keyboards/baseline/k_0504___options_with_reset.kmx new file mode 100644 index 0000000000000000000000000000000000000000..413060deca897aa94429ce8dc61d06902581fb0e GIT binary patch literal 610 zcmZvaOH0E*6opR<#TOK{wMrL~Maj;PqV1w9E%<<<8y|Ef#20p9TH4T}xDXfO)_>sI z-{C_11)@JDev?eqg%{48bI;s+C&{GMKG@f^RDW{5L}biD%mAa;!6PCjkUw#fO=Sss z1Fv8ae1LZ_0rK>H!jqtaE}MZw1FnNv^bXv#`WSA5W&8;4S$zW!t-gbAt$u*-fp3PY zrE^{DN`b;8_f=zOO^#MTS3O1Qz@Y}@BXp!oRG+>9i0E>)rw#3D6J4d-OJ=(ovfrmF z?N3jChQaW6rN?m9?ouvW`xvJY$COO{7o!S3hT@7ch<-!lb_wO;6Eo z=lS|ez)UDuuS{M6=G+DAx#S)Q$mgu*lQ*n4Z@n$@BM`?0<&wJ}YkmzPj!XC^(zo^! SuZWjTZa3upoPYMFsQU)ZB0x6) literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0505___options_double_set_reset.js b/common/test/keyboards/baseline/k_0505___options_double_set_reset.js new file mode 100644 index 0000000000..7e89315cda --- /dev/null +++ b/common/test/keyboards/baseline/k_0505___options_double_set_reset.js @@ -0,0 +1,66 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0505___options_double_set_reset()); +} +function Keyboard_k_0505___options_double_set_reset() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0505___options_double_set_reset"; + this.KN="0505 - options double set reset"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_foo_4=KeymanWeb.KLOAD(this.KI,"foo","0"); + this.s7="1"; + this.s8="2"; + this.s9="3"; + this.s10="2"; + this.s11="3"; + this.s12="0"; + this.KVS=['s_foo_4']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(this.s_foo_4===this.s7){ + r=m=1; // Line 17 + k.KDC(0,t); + k.KO(-1,t,"foo."); + this.s_foo_4=this.s8; + this.s_foo_4=k.KLOAD(this.KI,"foo","0"); + this.s_foo_4=this.s9; + this.s_foo_4=k.KLOAD(this.KI,"foo","0"); + } + else if(this.s_foo_4===this.s10){ + r=m=1; // Line 18 + k.KDC(0,t); + k.KO(-1,t,"bar."); + } + else if(this.s_foo_4===this.s11){ + r=m=1; // Line 19 + k.KDC(0,t); + k.KO(-1,t,"baz."); + } + else if(this.s_foo_4===this.s12){ + r=m=1; // Line 20 + k.KDC(0,t); + k.KO(-1,t,"no foo."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_034___options_double_set_reset.kmn b/common/test/keyboards/baseline/k_0505___options_double_set_reset.kmn similarity index 87% rename from common/test/keyboards/baseline/k_034___options_double_set_reset.kmn rename to common/test/keyboards/baseline/k_0505___options_double_set_reset.kmn index 3fe9225eca..e91f95e26b 100644 --- a/common/test/keyboards/baseline/k_034___options_double_set_reset.kmn +++ b/common/test/keyboards/baseline/k_0505___options_double_set_reset.kmn @@ -1,8 +1,8 @@ -store(&NAME) '034 - options double set reset' +store(&NAME) '0505 - options double set reset' c Description: Tests basic option rules with save reset+set+reset c keys: [K_A][K_A] c expected: foo.foo. -c context: +c context: c option: foo=1 c expected option: foo=1 diff --git a/common/test/keyboards/baseline/k_0505___options_double_set_reset.kmx b/common/test/keyboards/baseline/k_0505___options_double_set_reset.kmx new file mode 100644 index 0000000000000000000000000000000000000000..f44ef699c0f52077b291ffcc34bd3668a4640185 GIT binary patch literal 676 zcmY+C&q{(p6vdBHR8~+awu^7&B1qJ58x=%>6hQ?M5ojt1rt$R$3RgkU1GJD9(L!28 zi)ax&Ld(`s5IsTk0`;43CdCV9&bepq-0S#FZgYK25$WUnrC&tIEW|J{dKNq*ehFkd zT45{W&?k5Y7fj*Go+z)ITFQI2lLt+Qs0wd@uTz2{lZh#5=CVc7iHGJiC3%+ss z4!(8z0ls(o34R1AGfX*^bfP`wRSWWzvg~B#X$sV}uR~SfnhwZ|s3R3r<&=k0V%L)o zTP-EDqB$*Vfo^F!C4)H$9aG~|WqaA_WxCaax-9D=l^!Sa)R^Cr)->z9HpnX4rLss5 z9Nw>`<%S_Q@%bKW+2*?Cdt`Q#1f#hiCR-URk8 wNnS!!y&8byu+1VaGw&pZ8xFpCfq6dvPsbfZ8~3!!9m1_~d#^pCbHcpCKUr*4!T-8S= zWd!;HpI{LDfN#(S#@Y7^w}Ux!N*hwE@CxWf+wi*4$M7K-BENvojlPC2jlP9%jJ}8O zjDCP?MnA!iAg+f=T8gqKo01jV^KnTsGa;6YfQoEMRm!j}+xP-%M{=^kE{mkdta6q8 zYq$bEqOu^9GB4BU1ifP3Nm1El-eIlZ%|E|Hzlygm$vDeOi=A24=+h)*jB!eqaAnD} zvOo{bwMM;BS2Sz?y*>hbb?{%U2(^vwSzMo)&hWoVK(nyP9Q=XF226H}KQo#BTdga6 z4dl@MUc#NgzkobGWU^QM8}Q#b#+?aCi*zvSx?xn%y9qg-!Qq=V(k`^7`%P&#sm&L$ U>irr!^me*#gq~XdIb34u581X?V*mgE literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0507___options___double_reset_staged.js b/common/test/keyboards/baseline/k_0507___options___double_reset_staged.js new file mode 100644 index 0000000000..754fd8ae65 --- /dev/null +++ b/common/test/keyboards/baseline/k_0507___options___double_reset_staged.js @@ -0,0 +1,63 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0507___options___double_reset_staged()); +} +function Keyboard_k_0507___options___double_reset_staged() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0507___options___double_reset_staged"; + this.KN="0507- options - double reset staged"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_foo_4=KeymanWeb.KLOAD(this.KI,"foo","0"); + this.s7="1"; + this.s8="2"; + this.s9="2"; + this.s10="0"; + this.KVS=['s_foo_4']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(this.s_foo_4===this.s7){ + r=m=1; // Line 17 + k.KDC(0,t); + k.KO(-1,t,"foo."); + this.s_foo_4=this.s8; + } + else if(this.s_foo_4===this.s9){ + r=m=1; // Line 19 + k.KDC(0,t); + k.KO(-1,t,"bar."); + } + else if(this.s_foo_4===this.s10){ + r=m=1; // Line 20 + k.KDC(0,t); + k.KO(-1,t,"no foo."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_B /* 0x42 */)) { + if(1){ + r=m=1; // Line 18 + k.KDC(0,t); + this.s_foo_4=k.KLOAD(this.KI,"foo","0"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_036___options___double_reset_staged.kmn b/common/test/keyboards/baseline/k_0507___options___double_reset_staged.kmn similarity index 88% rename from common/test/keyboards/baseline/k_036___options___double_reset_staged.kmn rename to common/test/keyboards/baseline/k_0507___options___double_reset_staged.kmn index 53157b487d..e250695af1 100644 --- a/common/test/keyboards/baseline/k_036___options___double_reset_staged.kmn +++ b/common/test/keyboards/baseline/k_0507___options___double_reset_staged.kmn @@ -1,4 +1,4 @@ -store(&NAME) '036 - options - double reset staged' +store(&NAME) '0507- options - double reset staged' c Description: Tests basic option rules with save reset+reset c keys: [K_A][K_B][K_B][K_A] c expected: foo.foo. diff --git a/common/test/keyboards/baseline/k_036___options___double_reset_staged.kmx b/common/test/keyboards/baseline/k_0507___options___double_reset_staged.kmx similarity index 79% rename from common/test/keyboards/baseline/k_036___options___double_reset_staged.kmx rename to common/test/keyboards/baseline/k_0507___options___double_reset_staged.kmx index ccb05e04c1faa64a540ea3bf3307c988ddfd2e50..2aba8f9cdbcd1adf51d1287a0e109e7d48aea911 100644 GIT binary patch delta 30 mcmaFC@`8oOJ0c{Qfs29R{g;=V6L~JMnlczLm~VX8&IkaW*a|iP delta 30 mcmaFC@`8oOJ0c{Qfs27*?`=`3i98orjTy`s6gEC=X9NI_9SIcx diff --git a/common/test/keyboards/baseline/k_0508___options___double_reset.js b/common/test/keyboards/baseline/k_0508___options___double_reset.js new file mode 100644 index 0000000000..9f208eaaaf --- /dev/null +++ b/common/test/keyboards/baseline/k_0508___options___double_reset.js @@ -0,0 +1,58 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0508___options___double_reset()); +} +function Keyboard_k_0508___options___double_reset() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0508___options___double_reset"; + this.KN="0508 - options - double reset"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_foo_4=KeymanWeb.KLOAD(this.KI,"foo","0"); + this.s7="1"; + this.s8="2"; + this.s9="2"; + this.s10="0"; + this.KVS=['s_foo_4']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(this.s_foo_4===this.s7){ + r=m=1; // Line 17 + k.KDC(0,t); + k.KO(-1,t,"foo."); + this.s_foo_4=this.s8; + this.s_foo_4=k.KLOAD(this.KI,"foo","0"); + this.s_foo_4=k.KLOAD(this.KI,"foo","0"); + } + else if(this.s_foo_4===this.s9){ + r=m=1; // Line 18 + k.KDC(0,t); + k.KO(-1,t,"bar."); + } + else if(this.s_foo_4===this.s10){ + r=m=1; // Line 19 + k.KDC(0,t); + k.KO(-1,t,"no foo."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_037___options___double_reset.kmn b/common/test/keyboards/baseline/k_0508___options___double_reset.kmn similarity index 86% rename from common/test/keyboards/baseline/k_037___options___double_reset.kmn rename to common/test/keyboards/baseline/k_0508___options___double_reset.kmn index 05e5fe7b02..766cf5f87c 100644 --- a/common/test/keyboards/baseline/k_037___options___double_reset.kmn +++ b/common/test/keyboards/baseline/k_0508___options___double_reset.kmn @@ -1,8 +1,8 @@ -store(&NAME) '037 - options - double reset' +store(&NAME) '0508 - options - double reset' c Description: Tests basic option rules with save reset+reset c keys: [K_A][K_A] c expected: foo.foo. -c context: +c context: c option: foo=1 c expected option: foo=1 diff --git a/common/test/keyboards/baseline/k_0508___options___double_reset.kmx b/common/test/keyboards/baseline/k_0508___options___double_reset.kmx new file mode 100644 index 0000000000000000000000000000000000000000..f34e800c022715d58e1dbf0be0f193f4af38bc23 GIT binary patch literal 586 zcmYk4y-EW?6opSB;%}iwRx4QorqYloL93tv5fT(Z1xq)^Kpd+lpcSjsqT0vNpko)AA6a$wc8l^*m4 zUcnsr0PkP~c&z(`N5K+0YX)K!xD2MydvMk1CVUJQ$X~;kPT#^ePT#|KPCvpApkRio zrc+(%Oo2LaTu_P1x_m8zQ0MBY1$WeSxdu^Rb+uXPE5dg{kJUNtYEwJfLKm5mkN3#w zf_g-konv=yG9`@rO89L$eO3nam~#}him&L9sHGD+8_Y0yV=Mo>y~T4%dI5hngfL+; zF(8_DnJRV3x#pDplu zv{|9WntIl*nKZM;jTKjP$x=N|&$-|-#d>BbCv{Wbyyr&R*>Y2s-mzqCl^u1KYCBGZ jJzsqyzZNq1?>qE1R;KSwJ;7+3rzi%c!jSq0-H0_u diff --git a/common/test/keyboards/baseline/k_051___if_and_context.js b/common/test/keyboards/baseline/k_051___if_and_context.js deleted file mode 100755 index b43ca031c4..0000000000 --- a/common/test/keyboards/baseline/k_051___if_and_context.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_051___if_and_context());}function Keyboard_k_051___if_and_context(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_051___if_and_context";this.KN="051 - if_and_context";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5="mnpqrstv";this.s6=KeymanWeb.KLOAD(this.KI,"ifx","1");this.s9="1";this.KVER="16.0.138.0";this.KVS=['s6'];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,68)) {if(k.KFCM(1,t,[{t:'a',a:this.s5}])&&this.s6===this.s9){r=m=1;k.KDC(1,t);k.KO(-1,t,"4");k.KIO(-1,this.s5,1,t);k.KO(-1,t,"5");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_051___if_and_context.kmx b/common/test/keyboards/baseline/k_051___if_and_context.kmx deleted file mode 100644 index facfe9185907dbd013cba72c5fe2bf6596bc5828..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 450 zcmYL`&q@MO6vjUXG{=>J)J|NvOGcO$LW>e2LUf@f?nIm-L8m`T*aPI+M`+Qqh4cjB z^Y{Sm>US=ae(<~JyXT&BE_bHU?{<`v-rl`yp_DDi2lM9;V}22Kr%h6LL}m@2a17t@ z1qZN&4P?Qi{)cEP;|ocDNDLrPzD_(#e2>_MBKZmN9s+AtL$`X>R71sXALvw7m2?7Q z-D%)XBH~C7)Xb@0uyU_jx=>S>_$t#XZem$4R6J`&x7CZ;u^#p0a&u0VOq#hqxmy;_ zhpbmjDKT|O-nwg0*A0H``XZ*=eWoR^Si!%{8vE{uoqY?_2S;lN`TB?Qc&Gh`f--m? Imr|O{AM0N?6aWAK diff --git a/common/test/keyboards/baseline/k_052___nul_and_index.js b/common/test/keyboards/baseline/k_052___nul_and_index.js deleted file mode 100755 index 1094d1b56a..0000000000 --- a/common/test/keyboards/baseline/k_052___nul_and_index.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_052___nul_and_index());}function Keyboard_k_052___nul_and_index(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_052___nul_and_index";this.KN="052 - nul_and_index";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5="mnpqrstv";this.s6="MNPQRSTV";this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,66)) {if(k.KFCM(2,t,[{t:'n'},{t:'a',a:this.s5}])){r=m=1;k.KDC(1,t);k.KO(-1,t,"2");k.KIO(-1,this.s6,1,t);k.KO(-1,t,"3");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_052___nul_and_index.kmx b/common/test/keyboards/baseline/k_052___nul_and_index.kmx deleted file mode 100644 index 7e533db7912c4e8278d8b7bf9a9bd7610f26fc7d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 442 zcmYL_Juib%7>2Jll$cBy8$&lzRf9zk(xIuKFX<+whKjamHLRWehz?>jiNWfB_yK04 zq^@&PJjr#=eV&i|yzeR3k}5M$>c4+uq{3oMOVFEgp%@v;zjzxr&Y5|Xq0GyRJjs-N z$g2deFZq-Z3(jW7^F{YXnKi%TzA@G{_eAn>qRct>w5ZdL=R9i^$g(7DZn@+n)*9|j zGY$Li?98#p78Q2YD|#(QzZ`w*H+1doM8}rv71uG>vkGUi(p6RT*yn&lsw5nn>3Cz$ z>EKy(E$N!IuO9D)b#vPs>Di1v;cH;v-#o}~1R40BJM|RaA;i$qvlM*!G#S#YnjMWM IB*moq2f&RvnE(I) diff --git a/common/test/keyboards/baseline/k_053___if_and_index.js b/common/test/keyboards/baseline/k_053___if_and_index.js deleted file mode 100755 index eb1710226b..0000000000 --- a/common/test/keyboards/baseline/k_053___if_and_index.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_053___if_and_index());}function Keyboard_k_053___if_and_index(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_053___if_and_index";this.KN="053 - if_and_index";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0000;this.s5="mnpqrstv";this.s6="MNPQRSTV";this.s7=KeymanWeb.KLOAD(this.KI,"ifx","1");this.s10="1";this.KVER="16.0.138.0";this.KVS=['s7'];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16384,68)) {if(k.KFCM(1,t,[{t:'a',a:this.s5}])&&this.s7===this.s10){r=m=1;k.KDC(1,t);k.KO(-1,t,"4");k.KIO(-1,this.s6,1,t);k.KO(-1,t,"5");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_053___if_and_index.kmx b/common/test/keyboards/baseline/k_053___if_and_index.kmx deleted file mode 100644 index ee4261303484ecd53002c78e9d892ab151eb3770..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 488 zcmYL`KT88a5XD~(qLMTUqK!zZbO{L>(9S=IV2G$WC7lM(z!foSVo+OKi{Qtwwy+Ru z3$gSw_yO$K-;S#eynAnF-puT=^;XWg2;^UU2ICBwXYd4O z!5er1iLTXETc>ue zsHO!KR063wINeXW0a}sM^*HbP$8|t`A z8S3n_%^o|tSDd*V=hnHk>zV<*=)oHbF1dVIyPHbo2TPB#>d($ljd_G{TUm}ug|SqDAF#1F=Kufz diff --git a/common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.js b/common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.js deleted file mode 100755 index e6913c358e..0000000000 --- a/common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.js +++ /dev/null @@ -1 +0,0 @@ -if(typeof keyman === 'undefined') {console.log('Keyboard requires KeymanWeb 10.0 or later');if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later");} else {KeymanWeb.KR(new Keyboard_k_055___deadkey_cancelled_by_arrow());}function Keyboard_k_055___deadkey_cancelled_by_arrow(){this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9;this.KI="Keyboard_k_055___deadkey_cancelled_by_arrow";this.KN="050 - deadkey cancelled by arrow";this.KMINVER="10.0";this.KV=null;this.KDU=0;this.KH='';this.KM=0;this.KBVER="1.0";this.KMBM=0x0010;this.KVER="16.0.138.0";this.KVS=[];this.gs=function(t,e) {return this.g0(t,e);};this.gs=function(t,e) {return this.g0(t,e);};this.g0=function(t,e) {var k=KeymanWeb,r=0,m=0;if(k.KKM(e,16400,54)) {if(1){r=m=1;k.KDC(0,t);k.KDO(-1,t,0);}}else if(k.KKM(e,16384,69)) {if(k.KFCM(1,t,[{t:'d',d:0}])){r=m=1;k.KDC(1,t);k.KO(-1,t,"FAIL.");}else if(1){r=m=1;k.KDC(0,t);k.KO(-1,t,"PASS.");}}return r;};} \ No newline at end of file diff --git a/common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.kmx b/common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.kmx deleted file mode 100644 index 551a263920962bfeedacfad7bce1988442f10d40..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 474 zcmYL`yGjE=6o&sOk`VAxh(fBZQV52mP_RoR7bHdkF<>RcWWmKtUUwS0bxMliKUNWzF3-6nTleL6N*@rCZ+P#MeCEAP@6E}- XAW1U*57l|eiB5UL(rx2)80JZT7dbcL diff --git a/common/test/keyboards/baseline/k_0600___system_stores.js b/common/test/keyboards/baseline/k_0600___system_stores.js new file mode 100644 index 0000000000..b72c56cc1c --- /dev/null +++ b/common/test/keyboards/baseline/k_0600___system_stores.js @@ -0,0 +1,211 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0600___system_stores()); +} +function Keyboard_k_0600___system_stores() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0600___system_stores"; + this.KN="0600 - system stores"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_digit_4="1234567890"; + this.s_letter_5="abcdefghij"; + this.s8="windows"; + this.s9="desktop"; + this.s10="hardware"; + this.s11="native"; + this.s12="en-US"; + this.s13="kbdus.dll"; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_0 /* 0x30 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(k.KIFS(31,this.s8,t)){ + r=m=1; // Line 19 + k.KDC(0,t); + k.KO(-1,t,"windows."); + } + else if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_2 /* 0x32 */)) { + if(k.KIFS(31,this.s9,t)){ + r=m=1; // Line 20 + k.KDC(0,t); + k.KO(-1,t,"desktop."); + } + else if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_3 /* 0x33 */)) { + if(k.KIFS(31,this.s10,t)){ + r=m=1; // Line 21 + k.KDC(0,t); + k.KO(-1,t,"hardware."); + } + else if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_4 /* 0x34 */)) { + if(k.KIFS(31,this.s11,t)){ + r=m=1; // Line 22 + k.KDC(0,t); + k.KO(-1,t,"native."); + } + else if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_5 /* 0x35 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_6 /* 0x36 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_7 /* 0x37 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_8 /* 0x38 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_9 /* 0x39 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(k.KIFS(32,this.s12,t)){ + r=m=1; // Line 25 + k.KDC(0,t); + k.KO(-1,t,"en-US."); + } + else if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_B /* 0x42 */)) { + if(k.KIFS(32,this.s13,t)){ + r=m=1; // Line 26 + k.KDC(0,t); + k.KO(-1,t,"kbdus.dll."); + } + else if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_C /* 0x43 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_D /* 0x44 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_E /* 0x45 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_F /* 0x46 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_G /* 0x47 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_H /* 0x48 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_I /* 0x49 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_J /* 0x4A */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_026___system_stores.kmn b/common/test/keyboards/baseline/k_0600___system_stores.kmn similarity index 94% rename from common/test/keyboards/baseline/k_026___system_stores.kmn rename to common/test/keyboards/baseline/k_0600___system_stores.kmn index 0538c51364..9b63ffb576 100644 --- a/common/test/keyboards/baseline/k_026___system_stores.kmn +++ b/common/test/keyboards/baseline/k_0600___system_stores.kmn @@ -1,8 +1,8 @@ -store(&NAME) '026 - system stores' +store(&NAME) '0600 - system stores' c Description: Tests platform and baselayout system store rules c keys: [K_1][K_2][K_3][K_4][K_A][K_B] c expected: windows.desktop.hardware.native.en-US.kbdus.dll. -c context: +c context: c (default) option: &platform=windows desktop hardware native <-- ignored by test c (default) option: &baseLayout=kbdus.dll <-- ignored by test c (default) option: &baseLayoutAlt=en-US <-- ignored by test diff --git a/common/test/keyboards/baseline/k_0600___system_stores.kmx b/common/test/keyboards/baseline/k_0600___system_stores.kmx new file mode 100644 index 0000000000000000000000000000000000000000..54c86383bc360fb33bd4c49a2b0deb24c54bc904 GIT binary patch literal 1974 zcmd^<%}bO~6vm&VPcxA|v=qW1tVJW^w{D_@N)ko1AX=r)j82Z@@XnaoU(lk3NJxwR zgcczo(z;cvh;S7x!$m|yvk(wrMl z!ROpu<@BPa=r^MRHR3s=%rixX`LxsW#3gF&9n8}7P0)SBu_@-6(kvaD@i~5GeXQj$ zh^?N0WoKpLS=vh5Nie&;SGo^ch>tl%dH{dqwK(qyd?pj^YYkhHF2D!D7~EFXYzUt5TAUZbAA@nmV{Hk(3Q~dg68;{f z1MLIcu4X3CD&S|qM4&an`@m$NU5DpDHqi3$1z;yQp35Tq1t@T0?0jW7gAq3>L1bqn z$9XdQ^VFKQxmm}(tI#3h-Ky>WY@hJ3nvdD8)jMxPSbw;T`tat2wN+)*?)GN?dVKpU q5Wm?O_T&g}Hpc!HS$Esld3JS{-QBsXe}6T?F4bjrDd$Q5bIvamWdf`K literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0601___system_stores_2.js b/common/test/keyboards/baseline/k_0601___system_stores_2.js new file mode 100644 index 0000000000..2a2d14135e --- /dev/null +++ b/common/test/keyboards/baseline/k_0601___system_stores_2.js @@ -0,0 +1,211 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0601___system_stores_2()); +} +function Keyboard_k_0601___system_stores_2() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0601___system_stores_2"; + this.KN="0601 - system stores 2"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_digit_4="1234567890"; + this.s_letter_5="abcdefghij"; + this.s8="linux"; + this.s9="desktop"; + this.s10="hardware"; + this.s11="native"; + this.s12="fr-FR"; + this.s13="kbdfr.dll"; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_0 /* 0x30 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_1 /* 0x31 */)) { + if(k.KIFS(31,this.s8,t)){ + r=m=1; // Line 19 + k.KDC(0,t); + k.KO(-1,t,"linux."); + } + else if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_2 /* 0x32 */)) { + if(k.KIFS(31,this.s9,t)){ + r=m=1; // Line 20 + k.KDC(0,t); + k.KO(-1,t,"desktop."); + } + else if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_3 /* 0x33 */)) { + if(k.KIFS(31,this.s10,t)){ + r=m=1; // Line 21 + k.KDC(0,t); + k.KO(-1,t,"hardware."); + } + else if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_4 /* 0x34 */)) { + if(k.KIFS(31,this.s11,t)){ + r=m=1; // Line 22 + k.KDC(0,t); + k.KO(-1,t,"native."); + } + else if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_5 /* 0x35 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_6 /* 0x36 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_7 /* 0x37 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_8 /* 0x38 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_9 /* 0x39 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"platform-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(k.KIFS(32,this.s12,t)){ + r=m=1; // Line 25 + k.KDC(0,t); + k.KO(-1,t,"fr-FR."); + } + else if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_B /* 0x42 */)) { + if(k.KIFS(32,this.s13,t)){ + r=m=1; // Line 26 + k.KDC(0,t); + k.KO(-1,t,"kbdfr.dll."); + } + else if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_C /* 0x43 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_D /* 0x44 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_E /* 0x45 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_F /* 0x46 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_G /* 0x47 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_H /* 0x48 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_I /* 0x49 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_J /* 0x4A */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"baselayout-fail."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_027___system_stores_2.kmn b/common/test/keyboards/baseline/k_0601___system_stores_2.kmn similarity index 93% rename from common/test/keyboards/baseline/k_027___system_stores_2.kmn rename to common/test/keyboards/baseline/k_0601___system_stores_2.kmn index 95457c8463..3e30cbf5e5 100644 --- a/common/test/keyboards/baseline/k_027___system_stores_2.kmn +++ b/common/test/keyboards/baseline/k_0601___system_stores_2.kmn @@ -1,8 +1,8 @@ -store(&NAME) '027 - system stores 2' +store(&NAME) '0601 - system stores 2' c Description: Tests platform and baselayout system store rules c keys: [K_1][K_2][K_3][K_4][K_A][K_B] c expected: linux.desktop.hardware.native.fr-FR.kbdfr.dll. -c context: +c context: c option: &platform=linux desktop hardware native c option: &baseLayout=kbdfr.dll c option: &baseLayoutAlt=fr-FR diff --git a/common/test/keyboards/baseline/k_0601___system_stores_2.kmx b/common/test/keyboards/baseline/k_0601___system_stores_2.kmx new file mode 100644 index 0000000000000000000000000000000000000000..f19063be7d9468a57f487aa5e5d6963171dbff6b GIT binary patch literal 1970 zcmd^J+InNdJuW1C8`FVH<3L9#8{2K&P+JV3&9hM9Cwzd6qbB^D1!( z9L4jJ_`>F!#5HgM{S)z>&A$^r+x!=C%jVtOW6kDg$bCR-gT!7CA{UvEq^w9@Vp1?X zBqPj(B_REv%v@P2c=Co-q$nj=88(2wPbTG>+?5;TVd{dWYo9FPDdEcC*S=xggEAz; zbRU(7j2T~o`8iO*5tF#gN`kr+S{gNrnuAx&^-HG9DE~L94RFmEo<{Fs)TrEtW#~~f zU9?u`7iF1QFdA{TD5E#OvCsfA(JZd%1Hwn)HT~kjhz^h=y(N^KF!KkCXfxib4NBaQZ z24jx41NU|5o{O9XI{fhSRy)^_eC^n9hvTa@QyrQjLV zAa3`>DzDdjIOm;mh`d#$zBkR&?N;+4YgxVbO>pZEw^8rDHEyl1joMaE_OIugUjXmP nF0v;_c(OQqS7zOHPgmH{MRs=Yj{g0{aJ%^1?9$Ga{%6l`Dk54%qf`fiP(&~!EvQ2q{27!w&~rWs>Ga*CoNk$PLvKu{%?g$0dEjQ1nG>g}og3){7c;S?3-(DqU$qUr;)2|5 z{Ow#Nnd>cc7n2a;r!0$j_rI_nbY9{&gloo#-;%dgzcG*UNcZBXZb_x%9z C;Xw%i literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0701___caps_control.js b/common/test/keyboards/baseline/k_0701___caps_control.js new file mode 100644 index 0000000000..0b4ee57e6d --- /dev/null +++ b/common/test/keyboards/baseline/k_0701___caps_control.js @@ -0,0 +1,131 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0701___caps_control()); +} +function Keyboard_k_0701___caps_control() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0701___caps_control"; + this.KN="0701 - caps control"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=modCodes.SHIFT | modCodes.CAPS | modCodes.NO_CAPS /* 0x0310 */; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.SHIFT | modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4210 */, keyCodes.K_3 /* 0x33 */)) { + if(1){ + r=m=1; // Line 24 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.SHIFT | modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4110 */, keyCodes.K_3 /* 0x33 */)) { + if(1){ + r=m=1; // Line 25 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + else if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 17 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 18 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_2 /* 0x32 */)) { + if(1){ + r=m=1; // Line 20 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_2 /* 0x32 */)) { + if(1){ + r=m=1; // Line 21 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + else if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_4 /* 0x34 */)) { + if(1){ + r=m=1; // Line 27 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_4 /* 0x34 */)) { + if(1){ + r=m=1; // Line 28 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_5 /* 0x35 */)) { + if(1){ + r=m=1; // Line 30 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_5 /* 0x35 */)) { + if(1){ + r=m=1; // Line 31 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_6 /* 0x36 */)) { + if(1){ + r=m=1; // Line 33 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_6 /* 0x36 */)) { + if(1){ + r=m=1; // Line 34 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + else if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_7 /* 0x37 */)) { + if(1){ + r=m=1; // Line 37 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_7 /* 0x37 */)) { + if(1){ + r=m=1; // Line 38 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_032___caps_control.kmn b/common/test/keyboards/baseline/k_0701___caps_control.kmn similarity index 96% rename from common/test/keyboards/baseline/k_032___caps_control.kmn rename to common/test/keyboards/baseline/k_0701___caps_control.kmn index 884fb41a6d..13c9aa29a0 100644 --- a/common/test/keyboards/baseline/k_032___caps_control.kmn +++ b/common/test/keyboards/baseline/k_0701___caps_control.kmn @@ -1,4 +1,4 @@ -store(&NAME) '032 - caps control' +store(&NAME) '0701 - caps control' c Description: Tests Caps Lock env set c keys: [K_1][K_CAPS][K_2][SHIFT K_3][K_4][K_CAPS][K_5][K_CAPS][K_6][K_SHIFT][K_7] c expected: pass.pass.pass.pass.pass.pass.pass. diff --git a/common/test/keyboards/baseline/k_0701___caps_control.kmx b/common/test/keyboards/baseline/k_0701___caps_control.kmx new file mode 100644 index 0000000000000000000000000000000000000000..c9f04435d20f61f96ba98f4087eade84ca6f99ef GIT binary patch literal 882 zcmdUsxk^J(5QcvjTp|P&R}_tcDT0Q?En;N?E)cbG!9tLz2?nAGNf3MoYikR!v=R&P z0YtD>D=V?El=S+|^+cb+xqRo$|DTz;TXJiCO+IPovHn>^jV(kISUv}3k}rZ(b+!;i zmvoU|z&UioHC#d?yuuCGtO|TU3;3AV0L|oK_7Jp^FS9SWe3yM2BKT5LX`Sd$DIIw_ zq8KMp1vCbG_yv``EKfyQMdg*FGN@I>wW4|QC>>#MUQox(E7Fmr&L&2^+L8`%GW2IS zO>>ogXIE>g_p&}C$8*`)6zd|>1Kcgel%J^+xCw2bvP{ZrpPABWjdTXp@ROMQ>$JWe zXiZ30wbCt^*K1x}x)&g(Rf-U`}&?Ic^D z^J>w4=k=SH;NIwdu(us>-T*q}yg~DrH;SHtY2=Wrn?)};Z`jo>q1PdX9&z3#de?bD Y*Sn7{K*syFIsT(X0afDqQUB%a8*Er$$^ZZW literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0702___caps_always_off.js b/common/test/keyboards/baseline/k_0702___caps_always_off.js new file mode 100644 index 0000000000..48455fb1a9 --- /dev/null +++ b/common/test/keyboards/baseline/k_0702___caps_always_off.js @@ -0,0 +1,75 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0702___caps_always_off()); +} +function Keyboard_k_0702___caps_always_off() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0702___caps_always_off"; + this.KN="0702 - caps always off"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=modCodes.CAPS | modCodes.NO_CAPS /* 0x0300 */; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 16 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_1 /* 0x31 */)) { + if(1){ + r=m=1; // Line 17 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + else if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_2 /* 0x32 */)) { + if(1){ + r=m=1; // Line 19 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_2 /* 0x32 */)) { + if(1){ + r=m=1; // Line 20 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + else if(k.KKM(e, modCodes.CAPS | modCodes.VIRTUAL_KEY /* 0x4100 */, keyCodes.K_3 /* 0x33 */)) { + if(1){ + r=m=1; // Line 22 + k.KDC(0,t); + k.KO(-1,t,"fail."); + } + } + else if(k.KKM(e, modCodes.NO_CAPS | modCodes.VIRTUAL_KEY /* 0x4200 */, keyCodes.K_3 /* 0x33 */)) { + if(1){ + r=m=1; // Line 23 + k.KDC(0,t); + k.KO(-1,t,"pass."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_033___caps_always_off.kmn b/common/test/keyboards/baseline/k_0702___caps_always_off.kmn similarity index 90% rename from common/test/keyboards/baseline/k_033___caps_always_off.kmn rename to common/test/keyboards/baseline/k_0702___caps_always_off.kmn index 912f2c5ac0..fb2099bbe9 100644 --- a/common/test/keyboards/baseline/k_033___caps_always_off.kmn +++ b/common/test/keyboards/baseline/k_0702___caps_always_off.kmn @@ -1,4 +1,4 @@ -store(&NAME) '033 - caps always off' +store(&NAME) '0702 - caps always off' c Description: Tests Caps Lock always off c keys: [K_1][K_CAPS][K_2][K_CAPS][K_3] c expected: pass.pass.pass. diff --git a/common/test/keyboards/baseline/k_0702___caps_always_off.kmx b/common/test/keyboards/baseline/k_0702___caps_always_off.kmx new file mode 100644 index 0000000000000000000000000000000000000000..f8d6c0c9df547bbdbe6942e2d6fc9b4a9c73d61d GIT binary patch literal 574 zcmbV}KTE@45Ql$}P^FXAqJvB5P+S@k6?7=27K%er#6RE~)MBBU(t^_O(LwwK;^%R2 zbZ~NT6gPeDO#+?0@Vs}wd+)B-q<3+4sSGubfh1&&)c>6tCpj#gkH&W pRm)LVMF+5rw69=wHFTKg>}yzEglEr!jMOeWOY#La+4K4}3F+xq+fkhLUU&K9w zC$I!w!3(hdPw)n249xh#vq}}>GAI#;_+}nQ_#;q5m)g3}NLPw=?Ria`WEyf>10D3f z21Kz^4LL`i_0;8aO6W>-3oM_Kb?W&^fezKufp(Z$XJXaw3v|c68)hVVU7dXJw`Y7y zw!^wNsM)38F)#KzO>LltI`uc`FzuYl(tSaC1iv;#V064wnzeL`cjkRdz-}>TT8M{N zz&do^H0m6DHP;qQ3#BT23)nsEpIBWJzL#suriIcz{0wyc-BVt|tPdOTW$eGXA4ujw A?*IS* literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0800___long_context.js b/common/test/keyboards/baseline/k_0800___long_context.js new file mode 100644 index 0000000000..9870e97456 --- /dev/null +++ b/common/test/keyboards/baseline/k_0800___long_context.js @@ -0,0 +1,40 @@ + +KeymanWeb.KR(new Keyboard_k_0800___long_context()); + +function Keyboard_k_0800___long_context() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0800___long_context"; + this.KN="0800 - long context"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4000, 0x20)) { + if(1){ + r=m=1; // Line 13 + k.KO(0,t," "); + } + } + else if(k.KKM(e, 0x4000, 0x46)) { + if(k.KCM(1,t," ",1)){ + r=m=1; // Line 16 + k.KO(1,t," "); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_040___long_context.kmn b/common/test/keyboards/baseline/k_0800___long_context.kmn similarity index 91% rename from common/test/keyboards/baseline/k_040___long_context.kmn rename to common/test/keyboards/baseline/k_0800___long_context.kmn index f570d25710..b14373ae3d 100644 --- a/common/test/keyboards/baseline/k_040___long_context.kmn +++ b/common/test/keyboards/baseline/k_0800___long_context.kmn @@ -1,4 +1,4 @@ -store(&NAME) '040 - long context' +store(&NAME) '0800 - long context' c Description: Tests context longer than 64 chars c keys: [K_SPACE][K_F] c expected: 012345678901234567890123456789012345678901234567890123456789012\u0020 diff --git a/common/test/keyboards/baseline/k_0800___long_context.kmx b/common/test/keyboards/baseline/k_0800___long_context.kmx new file mode 100644 index 0000000000000000000000000000000000000000..7ff3b9dc82e133cb72829a0915a2926e915f63dc GIT binary patch literal 368 zcmYL^y-EX75Jpc@L>s}%SZPvTN?Ht4q1*18CVvd&GVaU94KvU3Bz1X}7g>>a zd6QN7ln+^#Z}}>9%{f)c_0Z#*M@F184xh7UB`2dPLnh{LRhOaWc0Vw;v%xV3^y#X1 z*^X%q7S^ZCD54v7{NO0&^}VBrTlUR$I8_%h_sUbg$2Ya)FRF@U|IcN*HK7d`mTnT- P^oJ?#^h3$Qr8V&jEA1xH literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.js b/common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.js new file mode 100644 index 0000000000..01f5f0f0d2 --- /dev/null +++ b/common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.js @@ -0,0 +1,75 @@ + +KeymanWeb.KR(new Keyboard_k_0801___long_context_and_deadkeys()); + +function Keyboard_k_0801___long_context_and_deadkeys() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0801___long_context_and_deadkeys"; + this.KN="0801 - long context and deadkeys"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4000, 0x31)) { + if(k.KDM(60,t,0)&&k.KCM(60,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh",60)){ + r=m=1; // Line 18 + k.KO(-1,t,"1"); + } + } + else if(k.KKM(e, 0x4000, 0x32)) { + if(k.KCM(63,t,"\x08\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh1",63)){ + r=m=1; // Line 22 + k.KO(63,t,"FAIL TEST 2"); + } + else if(k.KCM(62,t,"\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh1",62)){ + r=m=1; // Line 23 + k.KO(62,t,"FAIL TEST 2"); + } + else if(k.KCM(61,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh1",61)){ + r=m=1; // Line 24 + k.KO(-1,t,"2"); + } + } + else if(k.KKM(e, 0x4000, 0x33)) { + if(k.KCM(64,t,"\x08\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh12",64)){ + r=m=1; // Line 28 + k.KO(64,t,"FAIL TEST 3"); + } + else if(k.KCM(63,t,"\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh12",63)){ + r=m=1; // Line 29 + k.KO(63,t,"FAIL TEST 3"); + } + else if(k.KCM(62,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh12",62)){ + r=m=1; // Line 30 + k.KO(62,t,"abcdefghijklmnopqrstuvwxyz123"); + } + } + else if(k.KKM(e, 0x4000, 0x34)) { + if(k.KDM(29,t,0)&&k.KCM(29,t,"abcdefghijklmnopqrstuvwxyz123",29)){ + r=m=1; // Line 33 + k.KO(29,t,"PASS"); + } + } + else if(k.KKM(e, 0x4000, 0x5A)) { + if(1){ + r=m=1; // Line 15 + k.KDO(0,t,0); + k.KO(-1,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefgh"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_041___long_context_and_deadkeys.kmn b/common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.kmn similarity index 96% rename from common/test/keyboards/baseline/k_041___long_context_and_deadkeys.kmn rename to common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.kmn index 455fa1c41c..29fea90590 100644 --- a/common/test/keyboards/baseline/k_041___long_context_and_deadkeys.kmn +++ b/common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.kmn @@ -1,4 +1,4 @@ -store(&NAME) '041 - long context and deadkeys' +store(&NAME) '0801 - long context and deadkeys' c Description: Tests that we don't split a dk in context:set. Note that we start with a context c with length MAXCONTEXT-1 (abc...fgh is 60 characters/bytes long + 3 bytes for dk(1)). c keys: [K_Z][K_1][K_2][K_3][K_4] diff --git a/common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.kmx b/common/test/keyboards/baseline/k_0801___long_context_and_deadkeys.kmx new file mode 100644 index 0000000000000000000000000000000000000000..ff8c7a55ba229eaa123e993acea544e7bd50172c GIT binary patch literal 1818 zcmc(f%PvDv6o!B5QX^tOBS=je6HSYVVF?v!iKHcBAnJapYwP+LVj!MC47`BE(6CQn zXy^f?lls=~AqGs4oOSZ=z1F|i*_VHvvs3fgj2fi!<3mYUjWt*!Fh2oia4Hz?r*&8Y z)&{P@6=(;y;0D<6E4TweV3WPkwSW+QD=~3c%(6x9mm_Ok&eKJHQ`wJbtX>l4M%EG0N9GAq}e_3 zlgF8&X32oG2rMt;80ne#1=#wX9=B8{odM&zJg!XKT3_Y5J?@gY1O|zFJTA>wFb5Wh zn~h6QS>h0-tW*LhV11C&RnB$sFYllO z^_x^$VP&aehBoXp@pD(E%TN3APpfLR0!|&j>h+T{_I3JOG5e3ctC{W0&zjl3ep4;G evuy9bdG|lwsot40{GAz|zuXfaC-M8Hk=_AjP%`@f literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.js b/common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.js new file mode 100644 index 0000000000..467eb87472 --- /dev/null +++ b/common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.js @@ -0,0 +1,57 @@ + +KeymanWeb.KR(new Keyboard_k_0802___long_context_and_split_deadkeys()); + +function Keyboard_k_0802___long_context_and_split_deadkeys() +{ + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0802___long_context_and_split_deadkeys"; + this.KN="0802 - long context and split deadkeys"; + this.KMINVER="6.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0x0000; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, 0x4000, 0x20)) { + if(k.KCM(64,t,"\x01abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk",64)){ + r=m=1; // Line 18 + k.KO(64,t,"FAIL"); + } + else if(k.KDM(63,t,0)&&k.KCM(63,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk",63)){ + r=m=1; // Line 19 + k.KO(63,t,"UNEXPECTED"); + } + } + else if(k.KKM(e, 0x4000, 0x31)) { + if(k.KCM(61,t,"defghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk ",61)){ + r=m=1; // Line 22 + k.KO(61,t,"def"); + } + } + else if(k.KKM(e, 0x4000, 0x32)) { + if(k.KDM(6,t,0)&&k.KCM(6,t,"abcdef",6)){ + r=m=1; // Line 23 + k.KO(6,t,"PASS"); + } + } + else if(k.KKM(e, 0x4000, 0x5A)) { + if(1){ + r=m=1; // Line 14 + k.KDO(0,t,0); + k.KO(-1,t,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.kmn b/common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.kmn similarity index 93% rename from common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.kmn rename to common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.kmn index ce31d18e28..a6d883886a 100644 --- a/common/test/keyboards/baseline/k_042___long_context_and_split_deadkeys.kmn +++ b/common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.kmn @@ -1,4 +1,4 @@ -store(&NAME) '042 - long context and split deadkeys' +store(&NAME) '0802 - long context and split deadkeys' c Description: Tests that we don't split a dk in context. Note that we start with a context with length MAXCONTEXT. c keys: [K_Z][K_SPACE][K_1][K_2] c context: diff --git a/common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.kmx b/common/test/keyboards/baseline/k_0802___long_context_and_split_deadkeys.kmx new file mode 100644 index 0000000000000000000000000000000000000000..f26e1e438669835cd63e808ed77e34432cbe3269 GIT binary patch literal 1074 zcmd6k%Pxaa6opqQIuL{eBl!o?8L1MffutxxX_~Z>rn6F)QdMnTDn`bJBH{@|;+>2= zfmwa~w3u`#sr_f2v-aief1h>YnRH6M(%a(rpfH~;SRXJR1zAV~gZ^09-=w2#Pv8NJ zffw)$?EEKq1p&}c4?h@!PqI(6c!Yhf#gputAViH6*S_jHRZb=6hZG?bmZvFD)EV(Z z*q&oGs;^bUxB5JLRb{FQE|w>oBYNU`R_Pa1LQC4#Dtunk?w>(jlCN;G;Cf0ke9}5u zkJ=n@n`HqkYX@F%f4A;pvRT%ctF==VpL7eptp{T6ZyyhD7?{12`T!n$!~$5cOS%Kr z&2%;kbfX~%!%c6qd;CX`g%4ODithL!-e`?mZfJ|3kNJ0**QPx{xg(}OMv)>Km$+|P z=kD$`U7*7iYSwl0hi8Oh3G~h=$-1I6YmB)Xjle&ct*MGSrjCaaN!}{O*G`jmu}-|9 F^aaqPst5o8 literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0803___if_and_context.js b/common/test/keyboards/baseline/k_0803___if_and_context.js new file mode 100644 index 0000000000..68ac3f6dcf --- /dev/null +++ b/common/test/keyboards/baseline/k_0803___if_and_context.js @@ -0,0 +1,51 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0803___if_and_context()); +} +function Keyboard_k_0803___if_and_context() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0803___if_and_context"; + this.KN="0803 - if and context"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_nfc_5=KeymanWeb.KLOAD(this.KI,"nfc","0"); + this.s_diaeresisBase_6="ae"; + this.s8="0"; + this.KVS=['s_nfc_5']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_A /* 0x41 */)) { + if(1){ + r=m=1; // Line 16 + k.KDC(0,t); + k.KO(-1,t,"exay"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_B /* 0x42 */)) { + if(k.KFCM(4,t,[{t:'a',a:this.s_diaeresisBase_6},'x',{t:'a',a:this.s_diaeresisBase_6},'y'])&&this.s_nfc_5===this.s8){ + r=m=1; // Line 20 + k.KDC(4,t); + k.KIO(-1,this.s_diaeresisBase_6,1,t); + k.KO(-1,t,"x"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_044___if_and_context.kmn b/common/test/keyboards/baseline/k_0803___if_and_context.kmn similarity index 91% rename from common/test/keyboards/baseline/k_044___if_and_context.kmn rename to common/test/keyboards/baseline/k_0803___if_and_context.kmn index 352490325c..e19a96c17a 100644 --- a/common/test/keyboards/baseline/k_044___if_and_context.kmn +++ b/common/test/keyboards/baseline/k_0803___if_and_context.kmn @@ -1,4 +1,4 @@ -store(&NAME) '044 - if and context' +store(&NAME) '0803 - if and context' c Description: Tests that context(x) takes if() statements into account. See #4275. c keys: [K_A][K_B] c expected: ex diff --git a/common/test/keyboards/baseline/k_0803___if_and_context.kmx b/common/test/keyboards/baseline/k_0803___if_and_context.kmx new file mode 100644 index 0000000000000000000000000000000000000000..17e648142b55eb513a34e68e5e75cb7060eccecf GIT binary patch literal 502 zcmYL`yGjF55QhJaVvLnSh>b|9R4N;6Vk0IX7C{>o#6mbG3R@T@8$x^uYab$o_yi$^ zh4=(ML`n;r^_y`u1K-R)w{!N=zBoJ8iu5*}EengxVI?qq07FEEA^+_wAFNP$fibMZ z1YV&CGnj%MyvY1FaTPYum3%)YZsmHP*Z`ZkB3{BKdO&=D7%jDRqetB-sONdC2Ay41 zwGD}G@z(1SJGw^=*cjoZnoiWzu@2F7ws!o?nubjDm9lN~)~n->=vJ8y)U9gw_c*^p z3~Y!y5?6gP+fLOYPrbKCzom0F5`T`aSAXB(DUzPy&k6`j=XV7%`wnIkTJLa;E_+4# gApZn=v%vQ-%d#~U+%I@m))IM%O2q#d<'])){ + r=m=1; // Line 18 + k.KDC(7,t); + k.KO(-1,t,"correct"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_Y /* 0x59 */)) { + if(1){ + r=m=1; // Line 13 + k.KDC(0,t); + k.KDO(-1,t,0); + k.KO(-1,t,"a"); + k.KDO(-1,t,1); + k.KO(-1,t,"b"); + k.KDO(-1,t,2); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_Z /* 0x5A */)) { + if(k.KFCM(5,t,[{t:'d',d:0},'a',{t:'d',d:1},'b',{t:'d',d:2}])){ + r=m=1; // Line 17 + k.KDC(5,t); + k.KO(-1,t,"<"); + k.KDO(-1,t,0); + k.KO(-1,t,"a"); + k.KDO(-1,t,1); + k.KO(-1,t,"b"); + k.KDO(-1,t,2); + k.KO(-1,t,">"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_045___deadkey_and_context.kmn b/common/test/keyboards/baseline/k_0804___deadkey_and_context.kmn similarity index 90% rename from common/test/keyboards/baseline/k_045___deadkey_and_context.kmn rename to common/test/keyboards/baseline/k_0804___deadkey_and_context.kmn index c79953a05b..3c6522d470 100644 --- a/common/test/keyboards/baseline/k_045___deadkey_and_context.kmn +++ b/common/test/keyboards/baseline/k_0804___deadkey_and_context.kmn @@ -1,4 +1,4 @@ -store(&NAME) '045 - deadkey and context' +store(&NAME) '0804 - deadkey and context' c Description: Tests that context emits deadkeys correctly. See #4275. c keys: [K_Y][K_Z][SHIFT K_SLASH] c expected: correct diff --git a/common/test/keyboards/baseline/k_0804___deadkey_and_context.kmx b/common/test/keyboards/baseline/k_0804___deadkey_and_context.kmx new file mode 100644 index 0000000000000000000000000000000000000000..c0a8199fa5ded9ea4d2cd160efad1532d3952870 GIT binary patch literal 578 zcmaKp%`QVx6opq?p(F$YW_m`INJwvqlt`-$F(?Lp5(5Ue+Ck$lxkOYvhOs9w5Kkap zz}zEv0yDmSoMIsM%{qInz1QC7-rV}$&b9`mgO|yih?E^fKQO)wZXh27^gC+lFFHng z0QX=VJb_2h2j0Om$bunu^nhV_p6mi&B+m!FMP3iQLEaBMAs>SRvr=6xb#$Uwr(PFS zqBAF_Y0#t_a~^q@^R6cKL!IHjpnAp0J7`l?ZD?h{>OODyY%Wex>yWI_SYr t>*X&@fNS(fs5$f$urE${S}^'])){ + r=m=1; // Line 18 + k.KDC(3,t); + k.KO(-1,t,"correct"); + } + } + else if(k.KKM(e, modCodes.SHIFT | modCodes.VIRTUAL_KEY /* 0x4010 */, keyCodes.K_M /* 0x4D */)) { + if(k.KFCM(5,t,[{t:'d',d:0},'a',{t:'d',d:1},'b',{t:'d',d:2}])){ + r=m=1; // Line 17 + k.KDC(5,t); + k.KO(-1,t,"<"); + k.KDO(-1,t,0); + k.KO(-1,t,">"); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_Y /* 0x59 */)) { + if(1){ + r=m=1; // Line 13 + k.KDC(0,t); + k.KDO(-1,t,0); + k.KO(-1,t,"a"); + k.KDO(-1,t,1); + k.KO(-1,t,"b"); + k.KDO(-1,t,2); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_046___deadkey_and_contextex.kmn b/common/test/keyboards/baseline/k_0805___deadkey_and_contextex.kmn similarity index 89% rename from common/test/keyboards/baseline/k_046___deadkey_and_contextex.kmn rename to common/test/keyboards/baseline/k_0805___deadkey_and_contextex.kmn index 48ad796c3e..f120a98252 100644 --- a/common/test/keyboards/baseline/k_046___deadkey_and_contextex.kmn +++ b/common/test/keyboards/baseline/k_0805___deadkey_and_contextex.kmn @@ -1,4 +1,4 @@ -store(&NAME) '046 - deadkey and contextex' +store(&NAME) '0805 - deadkey and contextex' c Description: Tests that context() emits deadkeys correctly. See #4275. c keys: [K_Y][SHIFT K_M][SHIFT K_SLASH] c expected: correct diff --git a/common/test/keyboards/baseline/k_0805___deadkey_and_contextex.kmx b/common/test/keyboards/baseline/k_0805___deadkey_and_contextex.kmx new file mode 100644 index 0000000000000000000000000000000000000000..73811a388add9124ceeb4bdc43f3589713cbeaf1 GIT binary patch literal 568 zcmZ{hy-EX75QR@7=qd;%g?6%qq!5&BL|H{*6vZM$1T|Q?ng~JsAql~BK8AI$v=Ds( z@hxn81Rp>I{qD^~ZM@5O=bV|jb9dSD;r^b+q`TLrs#qzvu|~n^65JrZSje9hr~7h} z@BsHP1<&vZBk&0?5I~k00ZgE0i8H2)#1+$3;;!ja;*seN@e1;smCCBCt8*o~@IJ4Y z%A!KeL5*s{e&)ME-&G@jqD%VQWUp1=^ZNg wjO9M?!~Bgde%x}?_$6>(-Q=mG+SFG0j{)lW<-@so?tR~L&b{Zh4);4u!t>kvE=D0XV_ZVlWkvCADF5OqZ=5xAFLyF0FY+K0 z@*%HMlrQ;|8JY5KQ9>_z&P!DdEmE!+kTA@Al{G7?EU+X4PU+F-SW?c-oMio@T&0|; zj_ew8Vdc^t%Iwf!n{{=KN;auXSHDMxP1@FB*##R`V@~3P_(4sY9H{%*yFFiptparA lH^vlU|L-+)r6||o+R}|QwbOa-R{tnTcz>NRa#hrk`2iqlFEs!F literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0807___enter_invalidates_context.js b/common/test/keyboards/baseline/k_0807___enter_invalidates_context.js new file mode 100644 index 0000000000..90948d0648 --- /dev/null +++ b/common/test/keyboards/baseline/k_0807___enter_invalidates_context.js @@ -0,0 +1,40 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0807___enter_invalidates_context()); +} +function Keyboard_k_0807___enter_invalidates_context() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0807___enter_invalidates_context"; + this.KN="0807 - enter_invalidates_context"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_C /* 0x43 */)) { + if(k.KFCM(2,t,['a','b'])){ + r=m=1; // Line 17 + k.KDC(2,t); + k.KO(-1,t,"abd"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_049___enter_invalidates_context.kmn b/common/test/keyboards/baseline/k_0807___enter_invalidates_context.kmn similarity index 89% rename from common/test/keyboards/baseline/k_049___enter_invalidates_context.kmn rename to common/test/keyboards/baseline/k_0807___enter_invalidates_context.kmn index 78363865ef..c66f2fccf0 100644 --- a/common/test/keyboards/baseline/k_049___enter_invalidates_context.kmn +++ b/common/test/keyboards/baseline/k_0807___enter_invalidates_context.kmn @@ -1,4 +1,4 @@ -store(&NAME) '049 - enter_invalidates_context' +store(&NAME) '0807 - enter_invalidates_context' c Description: Tests that core context is cleared when kb processor c determines its invalid. eg Enter key See #10182. c keys: [K_A][K_B][K_ENTER][K_C] diff --git a/common/test/keyboards/baseline/k_0807___enter_invalidates_context.kmx b/common/test/keyboards/baseline/k_0807___enter_invalidates_context.kmx new file mode 100644 index 0000000000000000000000000000000000000000..863379d98c803b81f35eb9fdfcfd8b93325e9133 GIT binary patch literal 378 zcmYL@y=nqM6orpX6pN4)#!j{nyNFA`SQ>*^EZQW(c45t02>yVplH>_e1fL-IP(FcJ zr%oHcJ6ZL@H}}lBKQlr2{G_~8*e>@XGIkIbV7du)#2ObFLSS&@1}JsF-Yig8!;n z+VzGfRn*gix@x0+c2(U=6=rQu!nE~U?T)iU)uTId`_1)nTk6v@a=T;Zq#i#G;TR^3 W^W-D9Yb!UUF{K4W8t~WuEFA#veJ#-d literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0808___nul_and_context.js b/common/test/keyboards/baseline/k_0808___nul_and_context.js new file mode 100644 index 0000000000..cca0be5e35 --- /dev/null +++ b/common/test/keyboards/baseline/k_0808___nul_and_context.js @@ -0,0 +1,43 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0808___nul_and_context()); +} +function Keyboard_k_0808___nul_and_context() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0808___nul_and_context"; + this.KN="0808 - nul_and_context"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_cons_4="mnpqrstv"; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_B /* 0x42 */)) { + if(k.KFCM(2,t,[{t:'n'},{t:'a',a:this.s_cons_4}])){ + r=m=1; // Line 15 + k.KDC(1,t); + k.KO(-1,t,"2"); + k.KIO(-1,this.s_cons_4,1,t); + k.KO(-1,t,"3"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_050___nul_and_context.kmn b/common/test/keyboards/baseline/k_0808___nul_and_context.kmn similarity index 87% rename from common/test/keyboards/baseline/k_050___nul_and_context.kmn rename to common/test/keyboards/baseline/k_0808___nul_and_context.kmn index 206777b7f0..fabac4155c 100644 --- a/common/test/keyboards/baseline/k_050___nul_and_context.kmn +++ b/common/test/keyboards/baseline/k_0808___nul_and_context.kmn @@ -1,4 +1,4 @@ -store(&NAME) '050 - nul_and_context' +store(&NAME) '0808 - nul_and_context' c Description: Tests that context has the right offset when used with nul c keys: [K_T][K_B] c expected: 2t3 diff --git a/common/test/keyboards/baseline/k_0808___nul_and_context.kmx b/common/test/keyboards/baseline/k_0808___nul_and_context.kmx new file mode 100644 index 0000000000000000000000000000000000000000..2304b23fe76af70fbe235faec5648f9ad493eea2 GIT binary patch literal 406 zcmYL_&nkpr6o;P?k&-_PHWrh`lm*R<(%3O2YGQ-3V;E}0=g$nWaRJtnT!CDX3$S(z zpXa=NIQ6{e_nvcp=X?8F`@1`g!u)A%45Ji>F)X21WmAzG%D;Fi2B)pO%CpSKySz#G zKjlM4)WN+)Jwi4&kdbrH?{S|OID=Gp1PZ6 mJ8pzS-+d;(5i-O;{8yL^m0@3+Wapc-0iqH)z$O2WZ*KMfe0F zJx>qN=K9UyS_9vi|IExkhkF~H_MMVa>dpHQ5wU|vfayAn5CMVwi|=qSN97Baa0qKy z!9M)J1`Z&~{4d$!7@Z6KRdNZ^)UU}Gq3)2|a75iF_n~NJHT0x~2I|Up_oB|})Rfl= z^z^I;*Yn7a8ZtG-G3S&DYUxr<-Js8Kow}U`&6s%61h>tL?Y>4DyV{hl!c7zBlY3?E zbeZ#(EqS(fshhh7SGq^{oX=ysy=U>tcf7+cOd9`gkDL7si%(iBDD(d_+EayE5M&ic KCr}Z^sB8hh2REPq literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0810___nul_and_index.js b/common/test/keyboards/baseline/k_0810___nul_and_index.js new file mode 100644 index 0000000000..1f86fe5ac0 --- /dev/null +++ b/common/test/keyboards/baseline/k_0810___nul_and_index.js @@ -0,0 +1,44 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0810___nul_and_index()); +} +function Keyboard_k_0810___nul_and_index() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0810___nul_and_index"; + this.KN="0810 - nul_and_index"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_cons_4="mnpqrstv"; + this.s_outs_5="MNPQRSTV"; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_B /* 0x42 */)) { + if(k.KFCM(2,t,[{t:'n'},{t:'a',a:this.s_cons_4}])){ + r=m=1; // Line 16 + k.KDC(1,t); + k.KO(-1,t,"2"); + k.KIO(-1,this.s_outs_5,1,t); + k.KO(-1,t,"3"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_052___nul_and_index.kmn b/common/test/keyboards/baseline/k_0810___nul_and_index.kmn similarity index 88% rename from common/test/keyboards/baseline/k_052___nul_and_index.kmn rename to common/test/keyboards/baseline/k_0810___nul_and_index.kmn index c56c411c07..91940d089c 100644 --- a/common/test/keyboards/baseline/k_052___nul_and_index.kmn +++ b/common/test/keyboards/baseline/k_0810___nul_and_index.kmn @@ -1,4 +1,4 @@ -store(&NAME) '052 - nul_and_index' +store(&NAME) '0810 - nul_and_index' c Description: Tests that context has the right offset when used with nul c keys: [K_T][K_B] c expected: 2T3 diff --git a/common/test/keyboards/baseline/k_0810___nul_and_index.kmx b/common/test/keyboards/baseline/k_0810___nul_and_index.kmx new file mode 100644 index 0000000000000000000000000000000000000000..ea1a20064e46006982419a50c1f8bb87e34d189c GIT binary patch literal 444 zcmYL_J5K^p5QPuK2ce?U#LB|ZX;6&O4o$>jvqk}lp)n{HBs^5mNKb7^O^C6!FjoEz zdw&2m?fT7R(Mi5L=g!P2!P)-`e!a_$IptAX08tK<8e_O(rKU7OI+qguN1 zZiC#U(!lY|*{n`=s8Gjfb8PvE3I7y3&nzdZ>^YXF69&WmQzA z(&ffJZkxHwdg5;hd4b(69l((;&`qCXuaSm)&kM}Mr19^&W@mrGVnXX3cKG*6Eh(uy L)hJqkgci}i|JXUl literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0811___if_and_index.js b/common/test/keyboards/baseline/k_0811___if_and_index.js new file mode 100644 index 0000000000..68205a31e7 --- /dev/null +++ b/common/test/keyboards/baseline/k_0811___if_and_index.js @@ -0,0 +1,46 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0811___if_and_index()); +} +function Keyboard_k_0811___if_and_index() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0811___if_and_index"; + this.KN="0811 - if_and_index"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=0 /* 0x0000 */; + this.s_cons_4="mnpqrstv"; + this.s_outs_5="MNPQRSTV"; + this.s_ifx_6=KeymanWeb.KLOAD(this.KI,"ifx","1"); + this.s9="1"; + this.KVS=['s_ifx_6']; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_D /* 0x44 */)) { + if(k.KFCM(1,t,[{t:'a',a:this.s_cons_4}])&&this.s_ifx_6===this.s9){ + r=m=1; // Line 17 + k.KDC(1,t); + k.KO(-1,t,"4"); + k.KIO(-1,this.s_outs_5,1,t); + k.KO(-1,t,"5"); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_053___if_and_index.kmn b/common/test/keyboards/baseline/k_0811___if_and_index.kmn similarity index 89% rename from common/test/keyboards/baseline/k_053___if_and_index.kmn rename to common/test/keyboards/baseline/k_0811___if_and_index.kmn index 86479a8e88..b019ffcc2b 100644 --- a/common/test/keyboards/baseline/k_053___if_and_index.kmn +++ b/common/test/keyboards/baseline/k_0811___if_and_index.kmn @@ -1,4 +1,4 @@ -store(&NAME) '053 - if_and_index' +store(&NAME) '0811 - if_and_index' c Description: Tests that index() has the right offset when used with if c keys: [K_T][K_D] c expected: 4T5 diff --git a/common/test/keyboards/baseline/k_0811___if_and_index.kmx b/common/test/keyboards/baseline/k_0811___if_and_index.kmx new file mode 100644 index 0000000000000000000000000000000000000000..3313e890f9c24dc0855e0f7001a6daedac407aad GIT binary patch literal 490 zcmYL`&n`nj6vn^a#Gf=4gs^M6knYI62?5_eHWTdBk|Scu245s6rc z2N1FL3?9IC{N@;(n{U2v&iT%nxta1#t*X5Aa6dUJBIg%^l<7tImZT$)fAJZN<7A$} z6PN&R-~|kTFYpcq!4Uo^^u%x>=rwpD=v}xDhVdW6`$1p9Jy0Nj17Cv}EtPesOEuNd ziS1*}Dd8(>3S>Icp4Cz~!;|9g;VfxgOR8uEoiJQb>d@_H%1-xZC7NYj<%A+V4ZDXlPi|S;%+GA5zu8ZpbjSZa mg5U7c==ZxpFtk)7w<7;g~qj?U%OhxZ#u(LCn> literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_054___nul_and_contextex.kmn b/common/test/keyboards/baseline/k_0812___nul_and_contextex.kmn similarity index 88% rename from common/test/keyboards/baseline/k_054___nul_and_contextex.kmn rename to common/test/keyboards/baseline/k_0812___nul_and_contextex.kmn index 39ef0d4534..ae57598e1c 100644 --- a/common/test/keyboards/baseline/k_054___nul_and_contextex.kmn +++ b/common/test/keyboards/baseline/k_0812___nul_and_contextex.kmn @@ -1,4 +1,4 @@ -store(&NAME) '054 - nul_and_contextex' +store(&NAME) '0812 - nul_and_contextex' c Description: Tests that context in context part of rule has the right offset when used with nul c keys: [K_T][K_T][K_B] c expected: 2tt3 diff --git a/common/test/keyboards/baseline/k_0812___nul_and_contextex.kmx b/common/test/keyboards/baseline/k_0812___nul_and_contextex.kmx new file mode 100644 index 0000000000000000000000000000000000000000..ae1dd8d8f84358a9e6287c15c4acfc78226b113f GIT binary patch literal 422 zcmYL_&n`nj6orYGAdWJ5rjS9)(4m5_{C3A!WuiqcU2#d~V3dGaD-S(XoZmEix9 zPnnY+`IZnhy;WIM*Il!uw_G=*5xcrv@Wd5;inwpENs|^Ct5R^!C8x2PyPk9H*+|c0 z%FgDHZ4TJg-*oC)oLuL@t~-Vdq6hCNxZyUQjjWQU4Wn<}yr(mBQeRJaOU-=58UCpDm50<=-wb74tOVwz8~Bg_%@=2@j4qjQ{`u literal 0 HcmV?d00001 diff --git a/common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.js b/common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.js new file mode 100644 index 0000000000..3991bda76c --- /dev/null +++ b/common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.js @@ -0,0 +1,52 @@ +if(typeof keyman === 'undefined') { + console.log('Keyboard requires KeymanWeb 10.0 or later'); + if(typeof tavultesoft !== 'undefined') tavultesoft.keymanweb.util.alert("This keyboard requires KeymanWeb 10.0 or later"); +} else { +KeymanWeb.KR(new Keyboard_k_0813___deadkey_cancelled_by_arrow()); +} +function Keyboard_k_0813___deadkey_cancelled_by_arrow() +{ + var modCodes = keyman.osk.modifierCodes; + var keyCodes = keyman.osk.keyCodes; + + this._v=(typeof keyman!="undefined"&&typeof keyman.version=="string")?parseInt(keyman.version,10):9; + this.KI="Keyboard_k_0813___deadkey_cancelled_by_arrow"; + this.KN="0813 - deadkey cancelled by arrow"; + this.KMINVER="10.0"; + this.KV=null; + this.KDU=0; + this.KH=''; + this.KM=0; + this.KBVER="1.0"; + this.KMBM=modCodes.SHIFT /* 0x0010 */; + this.KVS=[]; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.gs=function(t,e) { + return this.g_Main_0(t,e); + }; + this.g_Main_0=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e, modCodes.SHIFT | modCodes.VIRTUAL_KEY /* 0x4010 */, keyCodes.K_6 /* 0x36 */)) { + if(1){ + r=m=1; // Line 13 + k.KDC(0,t); + k.KDO(-1,t,0); + } + } + else if(k.KKM(e, modCodes.VIRTUAL_KEY /* 0x4000 */, keyCodes.K_E /* 0x45 */)) { + if(k.KFCM(1,t,[{t:'d',d:0}])){ + r=m=1; // Line 14 + k.KDC(1,t); + k.KO(-1,t,"FAIL."); + } + else if(1){ + r=m=1; // Line 15 + k.KDC(0,t); + k.KO(-1,t,"PASS."); + } + } + return r; + }; +} diff --git a/common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.kmn b/common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.kmn similarity index 88% rename from common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.kmn rename to common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.kmn index b84e9a4ab7..f52c747f36 100644 --- a/common/test/keyboards/baseline/k_055___deadkey_cancelled_by_arrow.kmn +++ b/common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.kmn @@ -1,4 +1,4 @@ -store(&NAME) '050 - deadkey cancelled by arrow' +store(&NAME) '0813 - deadkey cancelled by arrow' c Description: Tests that context gets reset if we encounter a right-arrow c after a deadkey (#12968) c keys: [SHIFT K_6][K_RIGHT][K_E][SHIFT K_6][K_LEFT][K_E][SHIFT K_6][K_UP][K_E][SHIFT K_6][K_DOWN][K_E] diff --git a/common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.kmx b/common/test/keyboards/baseline/k_0813___deadkey_cancelled_by_arrow.kmx new file mode 100644 index 0000000000000000000000000000000000000000..526c9300b5609310f64e816218644ab09da09a73 GIT binary patch literal 476 zcmYL`F-ikL6o&txU=X5KNnMQGA8QBF;VB zK?xq=0c`&dJV72N>HlS&gL!ljOh>Ghpf_2o5aCNrrMgv5iTXZ|w4zu`a$0~hstNPC z?{aGUzBbtfBc9YbBJL!aFiGo%JpM|Xm6 z?kZGugzj+Pz<-1FF5}mHukGsQq$~K3352ENb56(#q5Mqg1yb^v;JuQ+1#dQZALO5q WW%=-r>bzu2+q_}y?%}l<=1G4)IyjX8 literal 0 HcmV?d00001 diff --git a/common/test/resources/keyboards/options_with_save.js b/common/test/resources/keyboards/options_with_save.js index 8252b51660..aa8507e073 100644 --- a/common/test/resources/keyboards/options_with_save.js +++ b/common/test/resources/keyboards/options_with_save.js @@ -1,4 +1,4 @@ -// Original source may be found within the repo at /common/tests/keyboards/baseline/k_023___options_with_save.kmn +// Original source may be found within the repo at /common/tests/keyboards/baseline/k_0502___options_with_save.kmn if(typeof keyman === 'undefined') { console.log('Keyboard requires KeymanWeb 10.0 or later'); @@ -61,4 +61,4 @@ function Keyboard_options_with_save() { } return r; }; -} \ No newline at end of file +} diff --git a/common/test/resources/keyboards/test_8568_deadkeys.kmn b/common/test/resources/keyboards/test_8568_deadkeys.kmn index 4cf7cc799d..f7f3067daa 100644 --- a/common/test/resources/keyboards/test_8568_deadkeys.kmn +++ b/common/test/resources/keyboards/test_8568_deadkeys.kmn @@ -1,6 +1,6 @@ store(&NAME) 'Testcases for deadkeys bug (#8568)' c Description: Tests deadkey backspacing -c See also common/test/keyboards/baseline/k_020___deadkeys_and_backspace.kmn +c See also common/test/keyboards/baseline/k_0302___deadkeys_and_backspace.kmn c 1. One deadkey in context dk(1) + BKSP = nul c 2. One char and one deadkey in context 'a' dk(2) + BKSP = nul c 3. One deadkey and one char in context dk(3) 'a' + BKSP = nul diff --git a/core/tests/unit/km_core_keyboard_api.tests.cpp b/core/tests/unit/km_core_keyboard_api.tests.cpp index 06e604c023..aa49a93c0d 100644 --- a/core/tests/unit/km_core_keyboard_api.tests.cpp +++ b/core/tests/unit/km_core_keyboard_api.tests.cpp @@ -23,7 +23,7 @@ protected: TEST_F(KmCoreKeyboardApiTests, LoadFromBlob) { // Setup - km::core::path kmxfile = km::core::path(test_dir / "kmx/k_020___deadkeys_and_backspace.kmx"); + km::core::path kmxfile = km::core::path(test_dir / "kmx/k_0302___deadkeys_and_backspace.kmx"); std::vector data = km::tests::load_kmx_file(kmxfile.native()); ASSERT_GT(data.size(), (size_t)0); diff --git a/core/tests/unit/kmnkbd/action_set_api.tests.cpp b/core/tests/unit/kmnkbd/action_set_api.tests.cpp index 72a2d9be53..96d30d3514 100644 --- a/core/tests/unit/kmnkbd/action_set_api.tests.cpp +++ b/core/tests/unit/kmnkbd/action_set_api.tests.cpp @@ -68,7 +68,7 @@ void setup(const char *keyboard, const km_core_cu* context) { } void run_test(km_core_action_item const * action_items, const km_core_actions &actions) { - setup("k_000___null_keyboard.kmx", u""); + setup("k_0000___null_keyboard.kmx", u""); test_state->set_actions(actions); auto set_actions = test_state->actions(); diff --git a/core/tests/unit/kmnkbd/debug_api.tests.cpp b/core/tests/unit/kmnkbd/debug_api.tests.cpp index d40664436b..6cd04200f6 100644 --- a/core/tests/unit/kmnkbd/debug_api.tests.cpp +++ b/core/tests/unit/kmnkbd/debug_api.tests.cpp @@ -76,7 +76,7 @@ void setup(const char *keyboard) { * Test 1: Start with debugging disabled */ void test_debugging_disabled() { - setup("k_000___null_keyboard.kmx"); + setup("k_0000___null_keyboard.kmx"); try_status(km_core_state_debug_set(test_state, 0)); try_status(km_core_process_event(test_state, KM_CORE_VKEY_S, KM_CORE_MODIFIER_SHIFT, 1, KM_CORE_EVENT_FLAG_DEFAULT)); test_assert(debug_items(test_state, { @@ -93,7 +93,7 @@ void test_debugging_disabled() { * Test 2: Debugging enabled, no rule match */ void test_debugging_no_rule_match() { - setup("k_000___null_keyboard.kmx"); + setup("k_0000___null_keyboard.kmx"); DEBUG_GROUP gp = {u"Main"}; try_status(km_core_state_debug_set(test_state, 1)); try_status(km_core_process_event(test_state, KM_CORE_VKEY_S, KM_CORE_MODIFIER_SHIFT, 1, KM_CORE_EVENT_FLAG_DEFAULT)); @@ -114,7 +114,7 @@ void test_debugging_no_rule_match() { * Test 3: Debugging enabled, function key pressed, no rule match */ void test_debugging_function_key() { - setup("k_000___null_keyboard.kmx"); + setup("k_0000___null_keyboard.kmx"); DEBUG_GROUP gp = {u"Main"}; try_status(km_core_state_debug_set(test_state, 1)); try_status(km_core_process_event(test_state, KM_CORE_VKEY_F1, 0, 1, KM_CORE_EVENT_FLAG_DEFAULT)); @@ -136,7 +136,7 @@ void test_debugging_function_key() { * Test 4: basic rule match */ void test_basic_rule_matches() { - setup("k_002___basic_input_unicode.kmx"); + setup("k_0101___basic_input_unicode.kmx"); DEBUG_GROUP gp = {u"Main"}; DEBUG_KEY kp = { 'F', /*line*/17, /*shift*/0 }; // vkey is a char try_status(km_core_state_debug_set(test_state, 1)); @@ -202,7 +202,7 @@ void test_basic_rule_matches() { * Test 5: Multiple groups */ void test_multiple_groups() { - setup("k_030___multiple_groups.kmx"); + setup("k_0401___multiple_groups.kmx"); DEBUG_GROUP gp = {u"Main"}, gpa = {u"a"}, gpb = {u"b"}; DEBUG_KEY kp1 = { KM_CORE_VKEY_1, /*line*/13, /*shift*/KM_CORE_MODIFIER_VIRTUALKEY }, kp2 = { KM_CORE_VKEY_2, /*line*/14, /*shift*/KM_CORE_MODIFIER_VIRTUALKEY }, @@ -283,7 +283,7 @@ void test_multiple_groups() { * Test 6: store offsets */ void test_store_offsets() { - setup("k_044___if_and_context.kmx"); + setup("k_0803___if_and_context.kmx"); DEBUG_GROUP gp = {u"Main"}; DEBUG_KEY kpa = { 'a', /*line*/16, }, kpb = { 'b', /*line*/20, }; @@ -357,7 +357,7 @@ void test_store_offsets() { * Test 7: set option */ void test_set_option() { - setup("k_021___options.kmx"); + setup("k_0500___options.kmx"); DEBUG_GROUP gp = {u"Main"}; DEBUG_KEY kp1 = { '1', /*line*/17, }; DEBUG_STORE sp = {0, u"foo", u"1"}; @@ -384,7 +384,7 @@ void test_set_option() { * Test 8: save option */ void test_save_option() { - setup("k_023___options_with_save.kmx"); + setup("k_0502___options_with_save.kmx"); DEBUG_GROUP gp = {u"Main"}; DEBUG_KEY kp1 = { '2', /*line*/21, }; // DEBUG_STORE sp = {0, u"foo", u"0"}; @@ -420,7 +420,7 @@ void test_save_option() { * an 'unknown' backspace because we are at start-of-context */ void test_backspace_markers() { - setup("k_000___null_keyboard.kmx"); + setup("k_0000___null_keyboard.kmx"); km_core_context_item marker_context[] = { {KM_CORE_CT_MARKER, {0,}, {1}}, {KM_CORE_CT_MARKER, {0,}, {1}}, diff --git a/core/tests/unit/kmnkbd/state_context_api.tests.cpp b/core/tests/unit/kmnkbd/state_context_api.tests.cpp index 34de27cd94..d66dc6663d 100644 --- a/core/tests/unit/kmnkbd/state_context_api.tests.cpp +++ b/core/tests/unit/kmnkbd/state_context_api.tests.cpp @@ -133,7 +133,7 @@ void test_context_set_if_needed__identical_context() { km_core_cu const *cached_context = u"This is a test"; km_core_cu const *new_app_context = u"This is a test"; - setup("k_000___null_keyboard.kmx", cached_context, false); + setup("k_0000___null_keyboard.kmx", cached_context, false); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UNCHANGED); test_assert(is_identical_context(cached_context)); teardown(); @@ -143,7 +143,7 @@ void test_context_set_if_needed__different_context() { km_core_cu const *cached_context = u"This isn't a test"; km_core_cu const *new_app_context = u"This is a test"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UPDATED); test_assert(!is_identical_context(cached_context)); test_assert(is_identical_context(new_app_context)); @@ -154,7 +154,7 @@ void test_context_set_if_needed__cached_context_cleared() { km_core_cu const *cached_context = u""; km_core_cu const *new_app_context = u"This is a test"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); km_core_state_context_clear(test_state); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UPDATED); test_assert(!is_identical_context(cached_context)); @@ -166,7 +166,7 @@ void test_context_set_if_needed__application_context_empty() { km_core_cu const *cached_context = u"This is a test"; km_core_cu const *new_app_context = u""; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UPDATED); test_assert(!is_identical_context(cached_context)); test_assert(is_identical_context(new_app_context)); @@ -177,7 +177,7 @@ void test_context_set_if_needed__app_context_is_longer() { km_core_cu const *cached_context = u"This is a test"; km_core_cu const *new_app_context = u"Longer This is a test"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UPDATED); test_assert(!is_identical_context(cached_context)); test_assert(is_identical_context(new_app_context)); @@ -188,7 +188,7 @@ void test_context_set_if_needed__app_context_is_shorter() { km_core_cu const *cached_context = u"This is a test"; km_core_cu const *new_app_context = u"is a test"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UPDATED); test_assert(!is_identical_context(cached_context)); test_assert(is_identical_context(new_app_context)); @@ -199,7 +199,7 @@ void test_context_set_if_needed__identical_context_and_markers() { km_core_cu const *cached_context = u"123"; km_core_cu const *new_app_context = u"123"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); km_core_context_item const citems[] = { {KM_CORE_CT_MARKER, {0}, {5}}, {KM_CORE_CT_CHAR, {0}, {'1'}}, {KM_CORE_CT_MARKER, {0}, {1}}, @@ -220,7 +220,7 @@ void test_context_set_if_needed__cached_context_shorter_and_markers() { km_core_cu const *cached_context = u"123"; km_core_cu const *new_app_context = u"0123"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); km_core_context_item const citems[] = { {KM_CORE_CT_MARKER, {0}, {5}}, {KM_CORE_CT_CHAR, {0}, {'1'}}, {KM_CORE_CT_MARKER, {0}, {1}}, @@ -279,7 +279,7 @@ void test_context_set_if_needed__cached_context_longer_and_markers() { km_core_cu const *cached_context = u"0123"; km_core_cu const *new_app_context = u"123"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); km_core_context_item const citems[] = { {KM_CORE_CT_CHAR, {0}, {'0'}}, @@ -337,7 +337,7 @@ void test_context_set_if_needed__surrogate_pairs_unchanged() { km_core_cu const *cached_context = u"a\U00010100"; km_core_cu const *new_app_context = u"a\U00010100"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UNCHANGED); test_assert(is_identical_context(new_app_context)); teardown(); @@ -347,7 +347,7 @@ void test_context_set_if_needed__surrogate_pairs_app_context_longer() { km_core_cu const *cached_context = u"a\U00010100"; km_core_cu const *new_app_context = u"xa\U00010100"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UPDATED); test_assert(is_identical_context(new_app_context)); teardown(); @@ -357,7 +357,7 @@ void test_context_set_if_needed__surrogate_pairs_cached_context_longer() { km_core_cu const *cached_context = u"xa\U00010100"; km_core_cu const *new_app_context = u"a\U00010100"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); assert_equal_status(km_core_state_context_set_if_needed(test_state, new_app_context), KM_CORE_CONTEXT_STATUS_UPDATED); test_assert(is_identical_context(new_app_context)); teardown(); @@ -367,7 +367,7 @@ void test_context_set_if_needed__surrogate_pairs_unchanged_and_markers() { km_core_cu const *cached_context = u"a\U00010100"; km_core_cu const *new_app_context = u"a\U00010100"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); km_core_context_item const citems[] = { {KM_CORE_CT_CHAR, {0}, {'a'}}, @@ -387,7 +387,7 @@ void test_context_set_if_needed__surrogate_pairs_app_context_longer_and_markers() { km_core_cu const *cached_context = u"a\U00010100"; km_core_cu const *new_app_context = u"\U00010200a\U00010100"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); km_core_context_item const citems[] = { {KM_CORE_CT_CHAR, {0}, {'a'}}, @@ -414,7 +414,7 @@ void test_context_set_if_needed__surrogate_pairs_cached_context_longer_and_markers() { km_core_cu const *cached_context = u"\U00010200a\U00010100"; km_core_cu const *new_app_context = u"a\U00010100"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); km_core_context_item const citems[] = { {KM_CORE_CT_CHAR, {0}, {0x10200}}, @@ -474,7 +474,7 @@ test_context_set_if_needed() { void test_context_clear() { km_core_cu const *cached_context = u"This is a test"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); try_status(km_core_state_context_clear(test_state)); test_assert(!is_identical_context(cached_context)); test_assert(is_identical_context(u"")); @@ -485,7 +485,7 @@ test_context_clear() { void test_context_debug_empty() { km_core_cu const *cached_context = u""; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); auto str = km_core_state_context_debug(test_state, KM_CORE_DEBUG_CONTEXT_CACHED); // std::cout << str << std::endl; test_assert(std::u16string(str) == u"|| (len: 0) [ ]"); @@ -494,7 +494,7 @@ void test_context_debug_empty() { void test_context_debug_various() { km_core_cu const *cached_context = u"123\U0001F923"; - setup("k_000___null_keyboard.kmx", cached_context); + setup("k_0000___null_keyboard.kmx", cached_context); km_core_context_item const citems[] = { { KM_CORE_CT_MARKER, {0}, { 5 } }, diff --git a/core/tests/unit/kmx/README.md b/core/tests/unit/kmx/README.md index 909d891f7d..434fb7b197 100644 --- a/core/tests/unit/kmx/README.md +++ b/core/tests/unit/kmx/README.md @@ -65,12 +65,12 @@ Alternatively it's possible to run a single test with: ```bash cd core -build/arch/debug/tests/unit/kmx/kmx '../common/test/keyboards/baseline/k_038___punctkeys.kmn' '../common/test/keyboards/baseline/k_038___punctkeys.kmx' +build/arch/debug/tests/unit/kmx/kmx '../common/test/keyboards/baseline/k_0107___punctkeys.kmn' '../common/test/keyboards/baseline/k_0107___punctkeys.kmx' ``` or shorter: ```bash cd core -build/arch/debug/tests/unit/kmx/kmx '../common/test/keyboards/baseline/k_038___punctkeys'.km{n,x} +build/arch/debug/tests/unit/kmx/kmx '../common/test/keyboards/baseline/k_0107___punctkeys'.km{n,x} ``` diff --git a/core/tests/unit/kmx/meson.build b/core/tests/unit/kmx/meson.build index 71e2aed1b5..a3af0a741e 100644 --- a/core/tests/unit/kmx/meson.build +++ b/core/tests/unit/kmx/meson.build @@ -35,59 +35,61 @@ kmx = executable('kmx', objects: [lib.extract_all_objects(recursive: false), kmx_test_source_lib.extract_all_objects(recursive: false)]) tests = [ - 'k_000___null_keyboard', - 'k_001___basic_input_unicodei', - 'k_002___basic_input_unicode', - 'k_003___nul', - 'k_004___basic_input__shift_2_', - 'k_005___nul_with_initial_context', - 'k_006___vkey_input__shift_ctrl_', - 'k_007___vkey_input__ctrl_alt_', - 'k_008___vkey_input__ctrl_alt_2_', - 'k_012___ralt', - 'k_013___deadkeys', - 'k_014___groups_and_virtual_keys', - 'k_015___ralt_2', - 'k_017___space_mnemonic_kbd', - 'k_018___nul_testing', - 'k_019___multiple_deadkeys', - 'k_020___deadkeys_and_backspace', - 'k_021___options', - 'k_022___options_with_preset', - 'k_023___options_with_save', - 'k_024___options_with_save_and_preset', - 'k_025___options_with_reset', - 'k_026___system_stores', - 'k_027___system_stores_2', - 'k_028___smp', - 'k_029___beep', - 'k_030___multiple_groups', - 'k_031___caps_lock', - 'k_032___caps_control', - 'k_033___caps_always_off', - 'k_034___options_double_set_reset', - 'k_035___options_double_set_staged', - 'k_036___options___double_reset_staged', - 'k_037___options___double_reset', - 'k_038___punctkeys', - 'k_039___generic_ctrlalt', - 'k_040___long_context', - 'k_041___long_context_and_deadkeys', - 'k_042___long_context_and_split_deadkeys', - 'k_043___output_and_keystroke', - 'k_044___if_and_context', - 'k_045___deadkey_and_context', - 'k_046___deadkey_and_contextex', - 'k_047___caps_always_off_initially_on', - 'k_048___modifier_keys_keep_context', - 'k_049___enter_invalidates_context', - 'k_050___nul_and_context', - 'k_051___if_and_context', - 'k_052___nul_and_index', - 'k_053___if_and_index', - 'k_054___nul_and_contextex', + 'k_0000___null_keyboard', + 'k_0001___nul', + 'k_0002___nul_with_initial_context', + 'k_0003___nul_testing', + 'k_0004___space_mnemonic_kbd', + 'k_0005___beep', + 'k_0100___basic_input_unicodei', + 'k_0101___basic_input_unicode', + 'k_0102___basic_input__shift_2_', + 'k_0103___vkey_input__shift_ctrl_', + 'k_0104___vkey_input__ctrl_alt_', + 'k_0105___vkey_input__ctrl_alt_2_', + 'k_0106___smp', + 'k_0107___punctkeys', + 'k_0200___ralt', + 'k_0201___ralt_2', + 'k_0203___generic_ctrlalt', + 'k_0300___deadkeys', + 'k_0301___multiple_deadkeys', + 'k_0302___deadkeys_and_backspace', + 'k_0400___groups_and_virtual_keys', + 'k_0401___multiple_groups', + 'k_0402___output_and_keystroke', + 'k_0500___options', + 'k_0501___options_with_preset', + 'k_0502___options_with_save', + 'k_0503___options_with_save_and_preset', + 'k_0504___options_with_reset', + 'k_0505___options_double_set_reset', + 'k_0506___options_double_set_staged', + 'k_0507___options___double_reset_staged', + 'k_0508___options___double_reset', + 'k_0600___system_stores', + 'k_0601___system_stores_2', + 'k_0700___caps_lock', + 'k_0701___caps_control', + 'k_0702___caps_always_off', + 'k_0703___caps_always_off_initially_on', + 'k_0800___long_context', + 'k_0801___long_context_and_deadkeys', + 'k_0802___long_context_and_split_deadkeys', + 'k_0803___if_and_context', + 'k_0804___deadkey_and_context', + 'k_0805___deadkey_and_contextex', + 'k_0806___modifier_keys_keep_context', + 'k_0807___enter_invalidates_context', + 'k_0808___nul_and_context', + 'k_0809___if_and_context', + 'k_0810___nul_and_index', + 'k_0811___if_and_index', + 'k_0812___nul_and_contextex', + # Skipped: 'k_0813___deadkey_cancelled_by_arrow', ] + node = find_program('node', required: true) kmc_root = meson.current_source_dir() / '../../../../developer/src/kmc/build/src/kmc.js' @@ -248,7 +250,7 @@ external_e = executable('ext_event_tests', ['kmx_external_event.tests.cpp', comm dependencies: [icu_uc, icu_i18n], objects: lib.extract_all_objects(recursive: false)) -test_kbd = 'k_033___caps_always_off' +test_kbd = 'k_0702___caps_always_off' kbd_src = common_test_keyboards_baseline + '/' + test_kbd + '.kmn' diff --git a/core/tests/unit/wasm/wasm.tests.js b/core/tests/unit/wasm/wasm.tests.js index 0342c9db96..1f73764539 100644 --- a/core/tests/unit/wasm/wasm.tests.js +++ b/core/tests/unit/wasm/wasm.tests.js @@ -30,10 +30,10 @@ describe('Unit tests for wasm Core API', function () { it('can load keyboard from blob', function () { // Setup - const kmxdata = fs.readFileSync(path.join(__dirname, 'tests/unit/kmx/k_020___deadkeys_and_backspace.kmx')); + const kmxdata = fs.readFileSync(path.join(__dirname, 'tests/unit/kmx/k_0302___deadkeys_and_backspace.kmx')); // Execute - const result = km_core.keyboard_load_from_blob('k_020___deadkeys_and_backspace', kmxdata); + const result = km_core.keyboard_load_from_blob('k_0302___deadkeys_and_backspace', kmxdata); // Verify assert.equal(result.status, 0); @@ -58,7 +58,7 @@ describe('Unit tests for wasm Core API', function () { it('can dispose keyboard', function () { // Setup - const keyboard = loadKeyboard('k_020___deadkeys_and_backspace'); + const keyboard = loadKeyboard('k_0302___deadkeys_and_backspace'); // Execute km_core.keyboard_dispose(keyboard); @@ -66,7 +66,7 @@ describe('Unit tests for wasm Core API', function () { it('can get keyboard attributes', function () { // Setup - const keyboard = loadKeyboard('k_022___options_with_preset'); + const keyboard = loadKeyboard('k_0501___options_with_preset'); // Execute const result = km_core.keyboard_get_attrs(keyboard); @@ -74,14 +74,14 @@ describe('Unit tests for wasm Core API', function () { // Verify assert.equal(result.status, 0); assert.isOk(result.object); - assert.equal(result.object.id, 'k_022___options_with_preset'); + assert.equal(result.object.id, 'k_0501___options_with_preset'); assert.equal(result.object.version_string, '0.0'); assert.deepEqual(result.object.default_options, [{ key: 'foo', value: '0', scope: 1 }]); }); it('can create the state object', function () { // Setup - const keyboard = loadKeyboard('k_020___deadkeys_and_backspace'); + const keyboard = loadKeyboard('k_0302___deadkeys_and_backspace'); // Execute const result = km_core.state_create(keyboard, []); @@ -93,7 +93,7 @@ describe('Unit tests for wasm Core API', function () { it('can dispose the state object', function () { // Setup - const keyboard = loadKeyboard('k_020___deadkeys_and_backspace'); + const keyboard = loadKeyboard('k_0302___deadkeys_and_backspace'); const state = km_core.state_create(keyboard, []); // Execute @@ -102,7 +102,7 @@ describe('Unit tests for wasm Core API', function () { it('can clone the state object', function () { // Setup - const keyboard = loadKeyboard('k_020___deadkeys_and_backspace'); + const keyboard = loadKeyboard('k_0302___deadkeys_and_backspace'); const state = km_core.state_create(keyboard, []); // Execute @@ -116,7 +116,7 @@ describe('Unit tests for wasm Core API', function () { it('can process event', function () { // Setup - const state = createState('k_020___deadkeys_and_backspace'); + const state = createState('k_0302___deadkeys_and_backspace'); // Execute const status = km_core.process_event(state, 0x20, 0, 1, 0); @@ -135,7 +135,7 @@ describe('Unit tests for wasm Core API', function () { it('can set the context', function () { // Setup - const state = createState('k_020___deadkeys_and_backspace'); + const state = createState('k_0302___deadkeys_and_backspace'); // Execute const status = km_core.state_context_set_if_needed(state, 'abc'); @@ -160,7 +160,7 @@ describe('Unit tests for wasm Core API', function () { it('can get and set context items', function () { // Setup - const state = createState('k_020___deadkeys_and_backspace'); + const state = createState('k_0302___deadkeys_and_backspace'); const context = km_core.state_context(state); const data = "Hello, အရှောက်, मानव अधिकारों की सार्वभौम घोषणा"; const contextItems = contextItemsFromString(data); diff --git a/developer/src/kmc-kmn/test/compiler.tests.ts b/developer/src/kmc-kmn/test/compiler.tests.ts index cb190f519d..3fced32b1e 100644 --- a/developer/src/kmc-kmn/test/compiler.tests.ts +++ b/developer/src/kmc-kmn/test/compiler.tests.ts @@ -36,9 +36,9 @@ describe('Compiler class', function() { assert(await compiler.init(callbacks, {saveDebug: true, shouldAddCompilerVersion: false})); assert(compiler.verifyInitialized()); - const fixtureName = baselineDir + 'k_000___null_keyboard.kmx'; - const infile = baselineDir + 'k_000___null_keyboard.kmn'; - const outFile = __dirname + '/k_000___null_keyboard.kmx'; + const fixtureName = baselineDir + 'k_0000___null_keyboard.kmx'; + const infile = baselineDir + 'k_0000___null_keyboard.kmn'; + const outFile = __dirname + '/k_0000___null_keyboard.kmx'; if(fs.existsSync(outFile)) { fs.rmSync(outFile); diff --git a/developer/src/kmc-kmn/test/fixtures/kmw/test_options.kmn b/developer/src/kmc-kmn/test/fixtures/kmw/test_options.kmn index 8f08280614..856d78a9c0 100644 --- a/developer/src/kmc-kmn/test/fixtures/kmw/test_options.kmn +++ b/developer/src/kmc-kmn/test/fixtures/kmw/test_options.kmn @@ -1,4 +1,4 @@ -c Adapted from common baseline test keyboard k_021__options.kmn +c Adapted from common baseline test keyboard k_0500___options.kmn store(&NAME) 'test_options' store(&version) '10.0' diff --git a/developer/src/kmcmplib/tests/meson.build b/developer/src/kmcmplib/tests/meson.build index e0a042ece4..7d90e03cf0 100644 --- a/developer/src/kmcmplib/tests/meson.build +++ b/developer/src/kmcmplib/tests/meson.build @@ -29,57 +29,58 @@ kmcompxtest = executable('kmcompxtests', ['kmcompx.tests.cpp','util_filesystem.c # Test keyboards that we have in Core tests = [ - 'k_000___null_keyboard', - 'k_001___basic_input_unicodei', - 'k_002___basic_input_unicode', - 'k_003___nul', - 'k_004___basic_input__shift_2_', - 'k_005___nul_with_initial_context', - 'k_006___vkey_input__shift_ctrl_', - 'k_007___vkey_input__ctrl_alt_', - 'k_008___vkey_input__ctrl_alt_2_', - 'k_012___ralt', - 'k_013___deadkeys', - 'k_014___groups_and_virtual_keys', - 'k_015___ralt_2', - 'k_017___space_mnemonic_kbd', - 'k_018___nul_testing', - 'k_019___multiple_deadkeys', - 'k_020___deadkeys_and_backspace', - 'k_021___options', - 'k_022___options_with_preset', - 'k_023___options_with_save', - 'k_024___options_with_save_and_preset', - 'k_025___options_with_reset', - 'k_026___system_stores', - 'k_027___system_stores_2', - 'k_028___smp', - 'k_029___beep', - 'k_030___multiple_groups', - 'k_031___caps_lock', - 'k_032___caps_control', - 'k_033___caps_always_off', - 'k_034___options_double_set_reset', - 'k_035___options_double_set_staged', - 'k_036___options___double_reset_staged', - 'k_037___options___double_reset', - 'k_038___punctkeys', - 'k_039___generic_ctrlalt', - 'k_040___long_context', - 'k_041___long_context_and_deadkeys', - 'k_042___long_context_and_split_deadkeys', - 'k_043___output_and_keystroke', - 'k_044___if_and_context', - 'k_045___deadkey_and_context', - 'k_046___deadkey_and_contextex', - 'k_047___caps_always_off_initially_on', - 'k_048___modifier_keys_keep_context', - 'k_049___enter_invalidates_context', - 'k_050___nul_and_context', - 'k_051___if_and_context', - 'k_052___nul_and_index', - 'k_053___if_and_index', - 'k_054___nul_and_contextex', + 'k_0000___null_keyboard', + 'k_0001___nul', + 'k_0002___nul_with_initial_context', + 'k_0003___nul_testing', + 'k_0004___space_mnemonic_kbd', + 'k_0005___beep', + 'k_0100___basic_input_unicodei', + 'k_0101___basic_input_unicode', + 'k_0102___basic_input__shift_2_', + 'k_0103___vkey_input__shift_ctrl_', + 'k_0104___vkey_input__ctrl_alt_', + 'k_0105___vkey_input__ctrl_alt_2_', + 'k_0106___smp', + 'k_0107___punctkeys', + 'k_0200___ralt', + 'k_0201___ralt_2', + 'k_0203___generic_ctrlalt', + 'k_0300___deadkeys', + 'k_0301___multiple_deadkeys', + 'k_0302___deadkeys_and_backspace', + 'k_0400___groups_and_virtual_keys', + 'k_0401___multiple_groups', + 'k_0402___output_and_keystroke', + 'k_0500___options', + 'k_0501___options_with_preset', + 'k_0502___options_with_save', + 'k_0503___options_with_save_and_preset', + 'k_0504___options_with_reset', + 'k_0505___options_double_set_reset', + 'k_0506___options_double_set_staged', + 'k_0507___options___double_reset_staged', + 'k_0508___options___double_reset', + 'k_0600___system_stores', + 'k_0601___system_stores_2', + 'k_0700___caps_lock', + 'k_0701___caps_control', + 'k_0702___caps_always_off', + 'k_0703___caps_always_off_initially_on', + 'k_0800___long_context', + 'k_0801___long_context_and_deadkeys', + 'k_0802___long_context_and_split_deadkeys', + 'k_0803___if_and_context', + 'k_0804___deadkey_and_context', + 'k_0805___deadkey_and_contextex', + 'k_0806___modifier_keys_keep_context', + 'k_0807___enter_invalidates_context', + 'k_0808___nul_and_context', + 'k_0809___if_and_context', + 'k_0810___nul_and_index', + 'k_0811___if_and_index', + 'k_0812___nul_and_contextex', + 'k_0813___deadkey_cancelled_by_arrow', ] foreach kbd : tests diff --git a/docs/settings/linux/launch.json b/docs/settings/linux/launch.json index 1ddd8d7334..40a622645f 100644 --- a/docs/settings/linux/launch.json +++ b/docs/settings/linux/launch.json @@ -20,7 +20,7 @@ "name": "Launch kmx unit tests", "target": "build/arch/debug/tests/unit/kmx/kmx", "cwd": "${workspaceRoot}/core/", - "arguments": "tests/unit/kmx/k_033___caps_always_off.km{n,x}", + "arguments": "tests/unit/kmx/k_0702___caps_always_off.km{n,x}", "valuesFormatting": "parseText" }, { @@ -40,7 +40,7 @@ "valuesFormatting": "parseText" }, { - // start: linux/ibus-keyman/tests/scripts/run-tests.sh --remote-debug --no-surrounding-text --no-wayland -- k_001___basic_input_unicodei + // start: linux/ibus-keyman/tests/scripts/run-tests.sh --remote-debug --no-surrounding-text --no-wayland -- k_0100___basic_input_unicodei // then attach debugger in vscode "type": "gdb", "request": "attach", @@ -58,7 +58,7 @@ } }, { - // - Run Docker container with `resources/docker-images/run.sh --remote-debug :linux -- linux/ibus-keyman/tests/scripts/run-tests.sh --no-x11 --remote-debug -- --directory /home/build/.local/share/keyman/test_kmx k_001___basic_input_unicodei` + // - Run Docker container with `resources/docker-images/run.sh --remote-debug :linux -- linux/ibus-keyman/tests/scripts/run-tests.sh --no-x11 --remote-debug -- --directory /home/build/.local/share/keyman/test_kmx k_0100___basic_input_unicodei` // - then attach debugger in vscode "type": "gdb", "request": "attach", diff --git a/linux/ibus-keyman/tests/README.md b/linux/ibus-keyman/tests/README.md index 0bee95e3b8..90bd8e7e09 100644 --- a/linux/ibus-keyman/tests/README.md +++ b/linux/ibus-keyman/tests/README.md @@ -22,7 +22,7 @@ To run a single test you pass the testname (as found in `common/test/keyboards/baseline`). Multiple tests should be separated by space. ```bash -scripts/run-tests.sh -- k_000___null_keyboard k_005___nul_with_initial_context +scripts/run-tests.sh -- k_0000___null_keyboard k_0002___nul_with_initial_context ``` ## Debugging tests @@ -39,7 +39,7 @@ For example: ```bash linux/ibus-keyman/tests/scripts/run-tests.sh --remote-debug \ - --no-surrounding-text --no-wayland -- k_001___basic_input_unicodei + --no-surrounding-text --no-wayland -- k_0100___basic_input_unicodei ``` On the host, you can then attach to the VM. See the diff --git a/linux/ibus-keyman/tests/testfixture.cpp b/linux/ibus-keyman/tests/testfixture.cpp index f92fe59403..a28d67c273 100644 --- a/linux/ibus-keyman/tests/testfixture.cpp +++ b/linux/ibus-keyman/tests/testfixture.cpp @@ -300,8 +300,8 @@ main(int argc, char *argv[]) { // Check for tests to skip - #3345 const char *skipReason = NULL; - if (strcmp(filename->str, "k_026___system_stores") == 0 || - strcmp(filename->str, "k_027___system_stores_2") == 0) { + if (strcmp(filename->str, "k_0600___system_stores") == 0 || + strcmp(filename->str, "k_0601___system_stores_2") == 0) { skipReason = "mnemonic keyboards are not yet supported on Linux (#3345)"; } diff --git a/resources/docker-images/README.md b/resources/docker-images/README.md index 2406ba7dee..51de3ff72d 100644 --- a/resources/docker-images/README.md +++ b/resources/docker-images/README.md @@ -154,7 +154,7 @@ For example to debug the integration tests in Docker: ```bash resources/docker-images/run.sh --remote-debug :linux -- linux/ibus-keyman/tests/scripts/run-tests.sh \ - --no-x11 --remote-debug -- --directory /home/build/.local/share/keyman/test_kmx k_001___basic_input_unicodei + --no-x11 --remote-debug -- --directory /home/build/.local/share/keyman/test_kmx k_0100___basic_input_unicodei ``` * then attach debugger in vscode diff --git a/web/src/test/auto/e2e/baseline/baseline.tests.ts b/web/src/test/auto/e2e/baseline/baseline.tests.ts index 8a9994fb04..38e45bb8b1 100644 --- a/web/src/test/auto/e2e/baseline/baseline.tests.ts +++ b/web/src/test/auto/e2e/baseline/baseline.tests.ts @@ -24,12 +24,12 @@ function KeymanRoot(): string { // Tests that are not supported in Web due to missing functionality const testsToSkip = { 'all': new Map([ - ['k_038___punctkeys.kmn', 'Playwright does not support 102nd key'] + ['k_0107___punctkeys.kmn', 'Playwright does not support 102nd key'] ]), '.kmx': new Map([ ]), '.js': new Map([ - ['k_054___nul_and_contextex.kmn', 'contextex is not supported in context() match in Web'] + ['k_0812___nul_and_contextex.kmn', 'contextex is not supported in context() match in Web'] ]), }; @@ -37,55 +37,55 @@ const testsToSkip = { const testsToFix = { // TODO-web-core: fix these tests '.kmx': [ - 'k_000___null_keyboard.kmn', - 'k_006___vkey_input__shift_ctrl_.kmn', - 'k_007___vkey_input__ctrl_alt_.kmn', - 'k_008___vkey_input__ctrl_alt_2_.kmn', - 'k_012___ralt.kmn', - 'k_014___groups_and_virtual_keys.kmn', - 'k_015___ralt_2.kmn', // kmx only - 'k_022___options_with_preset.kmn', - 'k_024___options_with_save_and_preset.kmn', - 'k_025___options_with_reset.kmn', - 'k_026___system_stores.kmn', - 'k_027___system_stores_2.kmn', - 'k_028___smp.kmn', // kmx only - 'k_031___caps_lock.kmn', - 'k_032___caps_control.kmn', - 'k_034___options_double_set_reset.kmn', - 'k_035___options_double_set_staged.kmn', - 'k_036___options___double_reset_staged.kmn', - 'k_037___options___double_reset.kmn', - 'k_039___generic_ctrlalt.kmn', - 'k_049___enter_invalidates_context.kmn', - 'k_055___deadkey_cancelled_by_arrow.kmn', + 'k_0000___null_keyboard.kmn', + 'k_0103___vkey_input__shift_ctrl_.kmn', // kmx only + 'k_0104___vkey_input__ctrl_alt_.kmn', + 'k_0105___vkey_input__ctrl_alt_2_.kmn', // kmx only + 'k_0106___smp.kmn', // kmx only + 'k_0200___ralt.kmn', // kmx only + 'k_0201___ralt_2.kmn', // kmx only + 'k_0203___generic_ctrlalt.kmn', + 'k_0400___groups_and_virtual_keys.kmn', // kmx only + 'k_0501___options_with_preset.kmn', + 'k_0503___options_with_save_and_preset.kmn', + 'k_0504___options_with_reset.kmn', + 'k_0505___options_double_set_reset.kmn', + 'k_0506___options_double_set_staged.kmn', + 'k_0507___options___double_reset_staged.kmn', + 'k_0508___options___double_reset.kmn', + 'k_0600___system_stores.kmn', + 'k_0601___system_stores_2.kmn', + 'k_0700___caps_lock.kmn', + 'k_0701___caps_control.kmn', + 'k_0807___enter_invalidates_context.kmn', + 'k_0813___deadkey_cancelled_by_arrow.kmn', ], // TODO: fix these tests (#15342) '.js': [ - 'k_000___null_keyboard.kmn', - 'k_006___vkey_input__shift_ctrl_.kmn', - 'k_007___vkey_input__ctrl_alt_.kmn', - 'k_008___vkey_input__ctrl_alt_2_.kmn', - 'k_012___ralt.kmn', - 'k_014___groups_and_virtual_keys.kmn', - 'k_022___options_with_preset.kmn', - 'k_024___options_with_save_and_preset.kmn', - 'k_025___options_with_reset.kmn', - 'k_026___system_stores.kmn', - 'k_027___system_stores_2.kmn', - 'k_031___caps_lock.kmn', - 'k_032___caps_control.kmn', - 'k_034___options_double_set_reset.kmn', - 'k_035___options_double_set_staged.kmn', - 'k_036___options___double_reset_staged.kmn', - 'k_037___options___double_reset.kmn', - 'k_039___generic_ctrlalt.kmn', - 'k_041___long_context_and_deadkeys.kmn', // js only - 'k_042___long_context_and_split_deadkeys.kmn', // js only - 'k_049___enter_invalidates_context.kmn', - 'k_050___nul_and_context.kmn', // js only - 'k_052___nul_and_index.kmn', // js only - 'k_055___deadkey_cancelled_by_arrow.kmn', + 'k_0000___null_keyboard.kmn', + // 'k_0103___vkey_input__shift_ctrl_.kmn', + 'k_0104___vkey_input__ctrl_alt_.kmn', + // 'k_0105___vkey_input__ctrl_alt_2_.kmn', + // 'k_0200___ralt.kmn', + 'k_0203___generic_ctrlalt.kmn', + // 'k_0400___groups_and_virtual_keys.kmn', + 'k_0501___options_with_preset.kmn', + 'k_0503___options_with_save_and_preset.kmn', + 'k_0504___options_with_reset.kmn', + 'k_0505___options_double_set_reset.kmn', + 'k_0506___options_double_set_staged.kmn', + 'k_0507___options___double_reset_staged.kmn', + 'k_0508___options___double_reset.kmn', + 'k_0600___system_stores.kmn', + 'k_0601___system_stores_2.kmn', + 'k_0700___caps_lock.kmn', + 'k_0701___caps_control.kmn', + 'k_0801___long_context_and_deadkeys.kmn', // js only + 'k_0802___long_context_and_split_deadkeys.kmn', // js only + 'k_0807___enter_invalidates_context.kmn', + 'k_0808___nul_and_context.kmn', // js only + 'k_0810___nul_and_index.kmn', // js only + 'k_0813___deadkey_cancelled_by_arrow.kmn', ] };