Commit graph

16118 commits

Author SHA1 Message Date
Marc Durdin
f49fd013a9
Merge pull request #7109 from keymanapp/feat/developer/ldml-compiler-kmx-builder
feat(developer): LDML compiler kmx-builder 🙀
2022-08-25 14:12:56 -05:00
Marc Durdin
85daf7d795
Merge pull request #7106 from keymanapp/feat/developer/ldml-compiler-kmx-structures
feat(developer): groundwork - kmx file structures 🙀
2022-08-25 14:12:46 -05:00
Steven R. Loomis
4c5f60ae22
Merge pull request #7125 from keymanapp/feat/core/7043-repadding 2022-08-25 13:54:59 -05:00
Steven R. Loomis
f7f909f904
Merge pull request #7124 from keymanapp/fix/core/7097-validate 2022-08-25 13:53:51 -05:00
Steven R. Loomis
190776ef9c
Update core/tests/unit/ldml/ldml.cpp
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-08-25 13:53:35 -05:00
Steven R. Loomis
a809fc86be
Update core/tests/unit/ldml/ldml.cpp
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-08-25 13:53:21 -05:00
Steven R. Loomis
af3bcd2a15 feat(core): ldml: padding for vkey and loca 🙀
- vkey and loca needed padding before the variable part
- add static asserts to validate this padding
- update sample files (null and tiny)

#7043
2022-08-25 12:54:52 -05:00
Steven R. Loomis
f7aeba5f01 feat(core): ldml: validator for kmxplus 🙀
- also update test case, 002_null_invalid is expected to not validate

#7097
2022-08-25 12:54:08 -05:00
Steven R. Loomis
2654a6f29a
Merge pull request #7118 from keymanapp/fix/core/7097-betternull
chore(core): update 000_null_keyboard to be a proper null keyboard 🙀
2022-08-25 12:10:19 -05:00
Steven R. Loomis
43b3e3243e fix(core): ldml: emit nothing (no err) on unassigned keys 🙀
- also update test case

#7097
2022-08-25 11:22:19 -05:00
Marc Durdin
dc3e4c0d78 chore(developer): Merge branch 'feat/developer/ldml-compiler-kmx-structures' into feat/developer/ldml-compiler-kmx-builder 2022-08-25 08:41:51 +10:00
Marc Durdin
85814de84a chore(developer): Merge branch 'feature-ldml' into feat/developer/ldml-compiler-kmx-structures 2022-08-25 08:41:16 +10:00
Steven R. Loomis
7aac6a1747 chore(core): update 000_null_keyboard to be a proper null keyboard 🙀
- rewrite 000_null_keyboard.kmx to be valid, but with no keys
- remove outdated comment in kmx_plus.h
- update kmx_plus.cpp to not reverse the order of section ids (#7098)
- add a new test option for expected-error
2022-08-24 17:04:55 -05:00
Steven R. Loomis
ee34d89da3
Merge pull request #7116 from keymanapp/fix/core/7098-cxxfun2
fix(core): fixes for kmx_file rearrangement 🙀
2022-08-24 15:45:24 -05:00
Steven R. Loomis
eb5f1ad63c fix(core): fixes for kmx_file rearrangement 🙀
fix breaks in #7111 and prior

- try stdint.h instead of cstdint

#7098
2022-08-24 13:56:42 -05:00
Steven R. Loomis
b180ca844d fix(core): fixes for kmx_file rearrangement 🙀
fix breaks in #7111 and prior

#7098
2022-08-24 13:49:55 -05:00
Marc Durdin
b20bf55fee
Merge pull request #7112 from keymanapp/revert-7110-feat/developer/ldml-constants-ts-module
Revert "feat(core): turn @keymanapp/ldml-keyboard-constants into a module 🙀"
2022-08-23 23:26:57 -05:00
Marc Durdin
8ebae9515e
Revert "feat(core): turn @keymanapp/ldml-keyboard-constants into a module 🙀" 2022-08-24 14:26:44 +10:00
Marc Durdin
f5f1bfd004
Merge pull request #7111 from keymanapp/chore/merge-master-into-feature-ldml
chore: merge master into feature-ldml
2022-08-23 23:26:17 -05:00
Marc Durdin
040f35e995
Merge pull request #7110 from keymanapp/feat/developer/ldml-constants-ts-module
feat(core): turn @keymanapp/ldml-keyboard-constants into a module 🙀
2022-08-23 23:25:37 -05:00
Marc Durdin
bd8f89b3b2 chore: Merge branch 'master' into feature-ldml 2022-08-24 14:22:55 +10:00
Marc Durdin
fa28040643
Merge pull request #7100 from keymanapp/fix/core/7098-cxxfun
fix(core): ldml: remove 0-length arrays 🙀
2022-08-23 23:20:14 -05:00
Marc Durdin
eb48fb76f9
Update core/src/kmx/kmx_plus.cpp 2022-08-24 14:20:08 +10:00
Marc Durdin
5e296c98af feat(core): turn @keymanapp/ldml-keyboard-constants into a module
Splits the building of keyboardprocessor_ldml.h into a separate
tsconfig.build.json, and designates keyboardprocessor_ldml.ts as a new
Typescript/Node module @keymanapp/ldml-keyboard-constants.

Includes an example usage in the (currently unused) kmx-plus.ts.
2022-08-24 14:10:20 +10:00
Marc Durdin
a59e8428b5
Merge pull request #7103 from keymanapp/feat/common/build-utils-parameter-variables
feat(common): add parameter variable support to `builder_` functions
2022-08-23 22:46:26 -05:00
Marc Durdin
a3e672e808 feat(developer): LDML compiler kmx-builder
Generates a valid .kmx file (legacy structures only) from an
intermediate in-memory structure. Included for completeness, although it
is anticipated that LDML keyboards will not have any groups, though they
will probably have some metadata stores.
2022-08-24 13:43:09 +10:00
Steven R. Loomis
16b8d725fd fix(core): ldml: include path fix 🙀
#7098
2022-08-23 19:15:20 -05:00
Marc Durdin
ebb3cf5c76 chore(common): fixup support for options which have no variable param 2022-08-24 09:55:52 +10:00
Marc Durdin
748a4ca63f chore(common): fixup support for options which have no variable param 2022-08-24 09:55:26 +10:00
Marc Durdin
d4553f674a chore(developer): rename structures 2022-08-24 09:42:08 +10:00
Marc Durdin
4018e528d9 feat(developer): groundwork - kmx file structures
Defines kmx binary structures and wireframe builder to emit a .kmx file.

Currently the builder will emit a roughly correct header. Next steps are
to build a .kmx file with stores, groups and keys, to match existing KMX
compiler behaviour. Once that is done, will return to generation of
KMXPlus data structures.

Compiler is designed to work independent of file system so it should run
inside browser or node environment. kmldmlc.ts is node-specific, but all
other modules should be multi-platform.
2022-08-24 09:32:30 +10:00
Marc Durdin
9ce6892112
Merge pull request #7101 from keymanapp/feat/developer/ldml-keyboard-ts-structures
feat(developer): LDML keyboard compiler - infrastructure 🙀
2022-08-23 18:29:49 -05:00
Marc Durdin
8cba43f989
chore: Apply suggestions from code review
Co-authored-by: Darcy Wong <darcy_wong@sil.org>
Co-authored-by: Steven R. Loomis <srl295@gmail.com>
2022-08-24 09:29:03 +10:00
rc-swag
ca50f67135
Merge pull request #7089 from keymanapp/fix/7078/invalidate-context-on-enter
fix(windows): Add invalidate context action to non-updatable parse
2022-08-24 09:07:40 +10:00
Marc Durdin
1025f1a75a
Merge pull request #7096 from keymanapp/chore/code-owners-tweaks
chore: Change platform advocates per discussion
2022-08-23 17:07:59 -05:00
Marc Durdin
6644697eec
Merge pull request #7001 from keymanapp/fix/android/6899-verify-browser-for-links
fix(android): verify browser before starting activity
2022-08-23 17:07:51 -05:00
Steven R. Loomis
f8e0abd810 fix(core): ldml: turn off problematic debug 🙀
#7098
2022-08-23 16:37:02 -05:00
Steven R. Loomis
b08f101f37 fix(core): ldml: goodbye multichar strings 🙀
- update builder to print out string as well as hex
- change to symbol name
2022-08-23 16:34:08 -05:00
Keyman Server
1f7ecedc61
Merge pull request #7105 from keymanapp/auto/version-master-16.0.51
auto: increment master version to 16.0.51
2022-08-24 05:05:40 +10:00
Keyman Build Agent
e0366f1eb4 auto: increment master version to 16.0.51 2022-08-23 15:04:57 -04:00
Marc Durdin
8c3d07f205
Merge pull request #7104 from keymanapp/chore/merge-master
chore: merge master into feature-ldml
2022-08-23 13:58:51 -05:00
Marc Durdin
e6ff47f2b3 chore: Merge branch 'master' into feature-ldml 2022-08-24 04:21:21 +10:00
Marc Durdin
026809f9ad chore(common): remove debug code 2022-08-24 03:58:16 +10:00
Marc Durdin
e27bf34c7d chore(common): tweak variable parameter support 2022-08-24 03:58:15 +10:00
Marc Durdin
8ab42029d0 chore(common): add variable support for --options in builder script 2022-08-24 03:58:14 +10:00
Marc Durdin
d4f98c6beb chore(common): remove debug code 2022-08-24 03:54:39 +10:00
Marc Durdin
cc8875dc9e chore(developer): cleanup comments 2022-08-24 03:54:25 +10:00
Marc Durdin
faf244a49b chore(common): tweak variable parameter support 2022-08-24 03:40:57 +10:00
Steven R. Loomis
a31cbc91bf fix(core): ldml: remove 0-length arrays 🙀
- need a pragma to suppress this on MSVC

#7098
2022-08-23 12:40:28 -05:00
Marc Durdin
c108e5ecd6 feat(developer): add kmldmlc to developer installer 2022-08-24 03:29:45 +10:00