spiegel-keyman/common/test/keyboards/baseline
Marc Durdin f394245636 maint(common): consolidate builder scripts
Clarifies the confusing builder.inc.sh / build-utils.sh distinction by
giving the scripts more appropriate names. Most build scripts should use
builder-full.inc.sh; some helper scripts can use builder-basic.inc.sh.
Documented in resources/build/README.md.

Renames:
* resources/build/builder.inc.sh to resources/build/builder-full.inc.sh
* resources/build/build-utils.sh to resources/build/builder-basic.inc.sh

Other changes:
* Moves Android-specific functions out of builder-basic.inc.sh and into
  android/build.sh.
* Renames functions in builder-basic.inc.sh

More functions may be moved from builder-basic.inc.sh into utils.inc.sh
or other scripts in the future.

Fixes: #14065
Build-bot: build all
Test-bot: skip
2025-08-02 08:11:24 +10:00
..
.gitignore chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
baseline.kpj fix(core): missed checking in baseline.kpj 2023-12-14 14:20:05 +10:00
build.sh maint(common): consolidate builder scripts 2025-08-02 08:11:24 +10:00
k_000___null_keyboard.kmn fix(core): add expected_context to keyboard unit tests 2023-12-15 11:20:08 +10:00
k_000___null_keyboard.kmx fix(core): add expected_context to keyboard unit tests 2023-12-15 11:20:08 +10:00
k_001___basic_input_unicodei.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_001___basic_input_unicodei.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_002___basic_input_unicode.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_002___basic_input_unicode.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_003___nul.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_003___nul.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_004___basic_input__shift_2_.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_004___basic_input__shift_2_.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_005___nul_with_initial_context.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_005___nul_with_initial_context.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_006___vkey_input__shift_ctrl_.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_006___vkey_input__shift_ctrl_.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_007___vkey_input__ctrl_alt_.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_007___vkey_input__ctrl_alt_.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_008___vkey_input__ctrl_alt_2_.kmn fix(core): add expected_context to keyboard unit tests 2023-12-15 11:20:08 +10:00
k_008___vkey_input__ctrl_alt_2_.kmx fix(core): add expected_context to keyboard unit tests 2023-12-15 11:20:08 +10:00
k_012___ralt.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_012___ralt.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_013___deadkeys.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_013___deadkeys.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_014___groups_and_virtual_keys.kmn refactor(core): Remove obsolete comments 2023-11-06 12:20:56 +07:00
k_014___groups_and_virtual_keys.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_015___ralt_2.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_015___ralt_2.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_017___space_mnemonic_kbd.kmn chore(common): fixup legacy test keyboards 2023-09-28 16:10:46 +07:00
k_017___space_mnemonic_kbd.kmx fix(developer): enable and update unit tests 2023-10-31 13:50:34 +07:00
k_018___nul_testing.kmn chore(common): fixup legacy test keyboards 2023-09-28 16:10:46 +07:00
k_018___nul_testing.kmx fix(developer): enable and update unit tests 2023-10-31 13:50:34 +07:00
k_019___multiple_deadkeys.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_019___multiple_deadkeys.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_020___deadkeys_and_backspace.kmn fix(linux): Fix baseline tests 2023-11-08 12:13:56 +07:00
k_020___deadkeys_and_backspace.kmx chore(core): Recompile keyboard with kmcomp 2023-11-07 05:02:30 +01:00
k_021___options.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_021___options.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_022___options_with_preset.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_022___options_with_preset.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_023___options_with_save.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_023___options_with_save.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_024___options_with_save_and_preset.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_024___options_with_save_and_preset.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_025___options_with_reset.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_025___options_with_reset.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_026___system_stores.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_026___system_stores.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_027___system_stores_2.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_027___system_stores_2.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_028___smp.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_028___smp.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_029___beep.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_029___beep.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_030___multiple_groups.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_030___multiple_groups.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_031___caps_lock.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_031___caps_lock.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_032___caps_control.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_032___caps_control.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_033___caps_always_off.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_033___caps_always_off.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_034___options_double_set_reset.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_034___options_double_set_reset.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_035___options_double_set_staged.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_035___options_double_set_staged.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_036___options___double_reset_staged.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_036___options___double_reset_staged.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_037___options___double_reset.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_037___options___double_reset.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_038___punctkeys.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_038___punctkeys.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_039___generic_ctrlalt.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_039___generic_ctrlalt.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_040___long_context.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_040___long_context.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_041___long_context_and_deadkeys.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_041___long_context_and_deadkeys.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_042___long_context_and_split_deadkeys.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_042___long_context_and_split_deadkeys.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_043___output_and_keystroke.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_043___output_and_keystroke.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_044___if_and_context.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_044___if_and_context.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_045___deadkey_and_context.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_045___deadkey_and_context.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_046___deadkey_and_contextex.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_046___deadkey_and_contextex.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_047___caps_always_off_initially_on.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_047___caps_always_off_initially_on.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_048___modifier_keys_keep_context.kmn refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_048___modifier_keys_keep_context.kmx refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00
k_049___enter_invalidates_context.kmn fix(core): add expected_context to keyboard unit tests 2023-12-15 11:20:08 +10:00
k_049___enter_invalidates_context.kmx fix(core): add expected_context to keyboard unit tests 2023-12-15 11:20:08 +10:00
k_050___nul_and_context.kmn chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
k_050___nul_and_context.kmx chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
k_051___if_and_context.kmn chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
k_051___if_and_context.kmx chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
k_052___nul_and_index.kmn chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
k_052___nul_and_index.kmx chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
k_053___if_and_index.kmn chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
k_053___if_and_index.kmx chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
k_054___nul_and_contextex.kmn chore(common): add unit test for nul and context() in context part of rule 2025-03-04 11:22:35 +01:00
k_054___nul_and_contextex.kmx chore(common): add unit test for nul and context() in context part of rule 2025-03-04 11:22:35 +01:00
k_055___deadkey_cancelled_by_arrow.kmn test(common): add baseline test for resetting context 2025-03-21 18:15:46 +01:00
k_055___deadkey_cancelled_by_arrow.kmx chore(common): rebuild keyboard fixture with kmcomp 2025-03-22 06:08:16 +07:00
kmcomp-16.0.138.zip chore(core): add unit tests to validate nul with index and context 2025-02-21 13:06:29 +07:00
README.md refactor(common): move core baseline tests into common 2023-03-28 05:20:45 +07:00

Keyboard baseline fixtures

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

The .kmx 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 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:

for %d in (*.kmn) do kmcomp -no-compiler-version -d %d