Commit graph

3815 commits

Author SHA1 Message Date
Marc Durdin
06d09ae42a
Merge pull request #12962 from keymanapp/fix/developer/12961-kmc-generate-ldml-version-default
fix(developer): use 1.0.0 as default for ldml keyboards in kmc-generate
2025-01-22 07:48:03 +07:00
Marc Durdin
e90a5373b3
Merge pull request #12960 from keymanapp/chore/developer/12959-lexical-model-parameter-text
fix(developer): use correct terms in kmc-generate lexical model help
2025-01-22 07:47:40 +07:00
Marc Durdin
17a6d3c091
Merge pull request #12958 from keymanapp/chore/developer/12957-validate-ids-in-kmc-generate
chore(developer): validate keyboard and model IDs in kmc-generate
2025-01-22 07:47:24 +07:00
Marc Durdin
6f6316e79b fix(developer): use 1.0.0 as default for ldml keyboards in kmc-generate
Fixes: #12961
2025-01-21 13:58:37 +07:00
Marc Durdin
2dec427bd4 fix(developer): use correct terms in kmc-generate lexical model help
Fixes: #12959
2025-01-21 13:55:48 +07:00
Marc Durdin
c718a757f8
Merge pull request #12929 from keymanapp/fix/developer/12123-support-displaymap-font-in-web-debugger
fix(developer): support `&displayMap` font in web debugger
2025-01-21 13:52:55 +07:00
Marc Durdin
3ad0dec493 chore(developer): validate keyboard and model IDs in kmc-generate
Fixes: #12957
2025-01-21 12:41:52 +07:00
Marc Durdin
bda60eb39f chore(developer): validate targets parameter in kmc-generate
Fixes: #12954
2025-01-21 10:55:18 +07:00
Marc Durdin
60a88584e4
Merge branch 'master' into fix/developer/12123-support-displaymap-font-in-web-debugger 2025-01-20 15:14:45 +07:00
Marc Durdin
c191e57d9c
Merge pull request #12951 from keymanapp/fix/developer/12950-handle-dev-utils-deps-in-server-build
fix(developer): include developer-utils deps in server build
2025-01-20 15:14:11 +07:00
Marc Durdin
357d196181 chore(developer): use JQ variable in script 2025-01-20 14:11:42 +07:00
Marc Durdin
f407d9823d fix(developer): include developer-utils deps in server build
Fixes: #12950
2025-01-20 13:06:01 +07:00
Marc Durdin
11d92be941 chore: address review comments 2025-01-20 10:25:56 +07:00
Marc Durdin
d24f3477bd chore(developer): update binary_kvk_file test to make .kps more valid
The test .kps for binary_kvk_file tests was not very coherent, which
meant that it failed with the changes and additional consistency
checking included in this PR.
2025-01-20 10:06:25 +07:00
Marc Durdin
0b749a5df2 feat(developer): rewrite font data in .kvk from package metadata
When compiling a package, rewrite the font data in embedded .kvk files
to use the facename from the font referenced in OSKFont or DisplayFont.

This also does some safety checking for cross-references of the .kvk,
and the font data.

Fixes: #12912
2025-01-20 09:21:50 +07:00
Marc Durdin
45a6291a3e refactor(developer): move ttfInfo to developer-utils
We will need ttfInfo in kmc-package, so move it to the shared module.
2025-01-20 09:19:47 +07:00
Marc Durdin
7cb6be6a97 fix(developer): support &displayMap font in web debugger
Adds a new design-time font property for when `&displayMap` is in use in
a keyboard, so that the web debugger can use that font as appropriate.

If the keyboard does not have a `&displayMap` store, then the DisplayMap
font property is disabled, and the web debugger will use the OSK Font
instead, as previously was the case.

Note that the font for `&displayMap` has to be installed on the keyboard
author's system in order for it to be served up.

Fixes: #12123
2025-01-17 11:03:20 +07:00
Marc Durdin
0d2264c80c
Merge pull request #12909 from keymanapp/fix/developer/12852-filter-incorrect-fonts-from-keyboard-info
fix(developer): filter incorrect fonts out of .keyboard_info
2025-01-16 09:29:13 +01:00
Marc Durdin
b26d154658
Merge pull request #12895 from keymanapp/fix/developer/12870-detect-invalid-key-ids-in-touch-layouts
fix(developer): detect invalid key ids in touch layout files
2025-01-16 09:28:24 +01:00
Marc Durdin
67a1622c42 fix(developer): filter incorrect fonts out of .keyboard_info
The font collection code was somewhat wrong in kmc-keyboard-info. It
collected all fonts referenced in the package, even for multi-keyboard
packages, which meant that the .keyboard_info file listed all fonts for
all languages. Furthermore, if a font was referenced in multiple
language entries in the .kps, then it would be repeated for each
language in the .keyboard_info. This patch addresses both of these bugs.

The good news is that this makes some of the .keyboard_info files
smaller. In particular, fv_all.keyboard_info goes from 4675 lines down
to 695 lines!

Fixes: #12852
2025-01-16 11:04:22 +07:00
Marc Durdin
74f4392d75 fix(developer): detect invalid key ids in touch layout files
Fixes: #12870
2025-01-15 09:59:50 +07:00
Darcy Wong
e1ae48eaa2
Merge pull request #12876 from keymanapp/docs/developer/key-shortcuts
docs(developer): Clarify square brackets in `U_####[_####]` shortcut
2025-01-15 09:01:14 +07:00
Marc Durdin
d0a971901a
Merge pull request #12879 from keymanapp/fix/developer/12846-clarify-license-parameter
fix(developer): ensure license parameter is required and add tests
2025-01-15 01:57:09 +01:00
Marc Durdin
b5eb7fec46
Merge pull request #12838 from keymanapp/correct-http
chore: changes to use https and removes anchor in docs
2025-01-15 01:55:09 +01:00
Marc Durdin
31e3e9e02a chore(developer): redirect stderr in command-line-tests 2025-01-13 16:27:49 +07:00
Marc Durdin
dad1df3194 fix(developer): ensure license parameter is required and add tests
Some additional items arose from this:

* Adds a command-line-tests unit test which does some basic sanity tests
  on `kmc`.
* Cleans up some of the error reporting infrastructure in `kmc` to
  ensure that thrown errors are handled better.
* Removes redundant subshell from `builder_run_action`.

Fixes: #12846
2025-01-13 15:10:31 +07:00
Darcy Wong
929b7d7f38 docs(developer): Clarify square brackets in U_####[_####] shortcut 2025-01-13 08:43:31 +07:00
Meng-Heng
328687435d chore: change to https in docs 2024-12-17 15:27:07 +07:00
Meng-Heng
8e7d920d43 fix: modifies video's description in docs and adds duration 2024-12-16 13:27:54 +07:00
Meng-Heng
91c68d943a Merge branch 'master' of https://github.com/keymanapp/keyman into showcase-video 2024-12-16 13:26:25 +07:00
Eberhard Beilharz
e069c3ad2a
chore(core): remove meson warnings for wasm builds
Replace deprecated function calls. Also add `strip` command to wasm
build defaults.
2024-12-12 19:48:13 +01:00
Meng-Heng
ef8e8107af feat: display playable video on the website
More on: #1712:
2024-12-12 20:06:07 +07:00
Marc Durdin
413ee3a6cf
Merge pull request #12805 from keymanapp/chore/12657-add-language-examples-schema-docs
chore(developer): add some docs for language examples in kmp.json
2024-12-09 14:24:25 +01:00
Marc Durdin
a77b20ffe9
Merge pull request #12807 from keymanapp/fix/developer/12795-displaymap-for-hints
fix(developer): support hint property in displaymap
2024-12-09 07:35:00 +01:00
Marc Durdin
4202f46550 fix(developer): support hint property in displaymap
Fixes: #12795
2024-12-09 12:20:53 +07:00
Marc Durdin
2576acc456 chore(developer): verify bundled node version when building installer
The node version must be an exact match at this time. Also updated
node.exe accordingly.

Fixes: #12075
2024-12-09 11:44:21 +07:00
Marc Durdin
cb8ce445f9 chore(developer): add some docs for language examples in kmp.json
Fixes: #12657
2024-12-09 10:43:53 +07:00
Marc Durdin
f1a073b7d6
Merge pull request #12804 from keymanapp/test/developer/12597-add-tests-for-ERROR_DescriptionIsMissing
test(developer): add test for ERROR_DescriptionIsMissing to kmc-keyboard-info
2024-12-09 03:21:48 +01:00
Marc Durdin
889482ca53 test(developer): update fixture 2024-12-09 06:27:45 +07:00
Marc Durdin
2c97590904 test(developer): add test for ERROR_DescriptionIsMissing to kmc-keyboard-info
Originally reported in #12202. Check was added in #12204, backported to
17.0.329 in #12207, but #12597 reports this for 17.0.331. So added test
to verify that it is working as expected (it is).

Note that this only applies when using the `--for-publishing` build flag
in kmc, because it is checked in the kmc-keyboard-info stage. Guessing
this is where the confusion arose.

Consolidated tests which used a common pattern for kmc-keyboard-info
calls. The remaining tests do stubs or calls into internal functions, so
they cannot be easily deduped.

Fixes: #12597
2024-12-09 06:22:11 +07:00
Marc Durdin
09d14dae14 fix(developer): remove platforms from kmc-generate LM readme
Lexical models are not specific to a platform, so the readme should not
list supported platforms.

Fixes: #12592
2024-12-09 06:01:35 +07:00
Marc Durdin
ee46a6693d chore(developer): Merge branch 'master' into feat/developer/12012-improve-support-for-bcp47 2024-12-06 14:16:00 +07:00
Marc Durdin
7be5c62e3b
Merge pull request #12773 from keymanapp/chore/developer/12746-kmc-copy-full-gh-url-to-master
change(developer): use full github url in kmc copy parameters 🍒
2024-12-06 08:01:34 +01:00
Marc Durdin
72d0bac0ee
Merge pull request #12775 from keymanapp/chore/rename-test-callbacks
chore: rename TestCompilerCallbacks.ts
2024-12-05 23:51:40 +01:00
Marc Durdin
389ef7f001 chore: rename TestCompilerCallbacks.ts
There was confusion with two implementations of TestCompilerCallbacks.
Turns out one of them wasn't used.
2024-12-05 13:04:27 +07:00
Marc Durdin
170282bba7 chore: address review comments 2024-12-05 09:23:27 +07:00
Marc Durdin
33b4fa3e89 change(developer): use full github url in kmc copy parameters
Fixes: #12746
Cherry-pick-of: #12754
2024-12-05 09:23:08 +07:00
Steven R. Loomis
dcc4c2b570
Merge branch 'feat/developer/7394-verify-normalization-epic-ldml' into feat/developer/10649-local-imports 2024-12-04 13:52:32 -06:00
Steven R. Loomis
c38077459a Merge remote-tracking branch 'upstream/master' into feat/developer/7394-verify-normalization-epic-ldml 2024-12-04 13:51:14 -06:00
Steven R. Loomis
9a338abf91 chore(developer): update per code review
- support empty string as import base
2024-12-04 08:34:36 -06:00