Commit graph

4544 commits

Author SHA1 Message Date
Steven R. Loomis
228cdd6281 feat(common): ldml read keyboard testdata 🙀
- full data test

#7535
2023-02-15 17:58:52 -06:00
Steven R. Loomis
c2556acc4a feat(common): ldml read keyboard testdata 🙀
- full data read

#7535
2023-02-15 17:58:52 -06:00
Steven R. Loomis
9a31e866df feat(common): ldml read keyboard testdata 🙀
- early scaffolding
- with some basic tests

#7535
2023-02-15 17:58:52 -06:00
Steven R. Loomis
ac2366f460 feat(core): ldml C++ updates to modifiers 🙀
- spec: change caps value to 0x100 #7533
- add a 'mod_all'  for validating valid modifier keys, plus tests
- add asserts on C++ side mapping modifiers to keyman constants
- use 'mod_all' to validate modifiers
- further fix modifier -> mod in binary

For: #7985 and related to #7533
2023-02-14 09:23:03 -06:00
Steven R. Loomis
7983fd9609 fix(developer): ldml spec: layr…mod needs to be a bitfield 🙀
- layr.layers.layer.mod needs to be a bit field just as keys.key.mod

Related to #7533
2023-02-14 09:23:03 -06:00
Steven R. Loomis
7c02ab85af feat(core): ldml C++ feature support 🙀
- make ldml.cpp print FAILED on failure especially because of https://github.com/microsoft/vscode-cpptools/issues/487
- add vkey validation (#7135)
- add disp validation
- fix: a latent bug in disp! disp.count was === vkey.count, oops. Fix and test cases.

For: #7985
2023-02-14 09:23:03 -06:00
SabineSIL
98b56947bc
Merge branch 'feature-kmcompx' into refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION 2023-02-14 12:21:13 +01:00
Marc Durdin
3c08d8f6b1
Merge pull request #8197 from keymanapp/chore/common/builder-cleanup-color-test
chore(common): automatically apply _builder_check_color
2023-02-11 13:13:30 +11:00
Marc Durdin
d5ca3fb56c
Merge pull request #8179 from keymanapp/fix/developer/8157-bcp47-code-dialog-inconsistencies
fix(developer): Select BCP47 Code dialog inconsistencies
2023-02-11 13:13:14 +11:00
Steven R. Loomis
db272e08e7 Merge remote-tracking branch 'upstream/master' into chore/merge-master-20230210-epic-ldml 2023-02-10 11:01:27 -06:00
Joshua A. Horton
a3752dd9ff chore(common): full-repo ts-node update 2023-02-09 12:39:15 +07:00
Marc Durdin
4598f13ba8 chore(common): automatically apply _builder_check_color 2023-02-09 12:12:18 +07:00
Joshua A. Horton
878e0f0ea2 chore(common): updates typescript to 4.9.5 2023-02-09 08:40:52 +07:00
Marc Durdin
983ae43357 chore(common): add builder_term function 2023-02-08 12:49:54 +07:00
Steven R. Loomis
a8832ea893
Merge pull request #8172 from keymanapp/feat/developer/7965-morehardware-epic-ldml
feat(common): ldml different hardware support 🙀
2023-02-07 17:06:35 -06:00
Steven R. Loomis
9d6289d420
Merge pull request #8171 from keymanapp/feat/core/7533-modifier-epic-ldml
feat(common): ldml modifier support 🙀
2023-02-07 17:05:55 -06:00
Marc Durdin
c155325d73 fix(developer): Select BCP47 Code dialog inconsistencies
Fixes #8157.

There are some limitations in this dialog as it stands; we will rework
it completely when we revisit BCP 47 tagging.

However, for now, this addresses some strange behaviours around the
Reset button and the displayed output:

* The Reset button will only be enabled if you change the text in the
  Language Name field.
* The messaging around a missing language subtag is clearer -- tells
  the user that they need to enter something there.
* The Reset button will now never insert default text strings into the
  Language Name field.

One example of something that is slightly weird, is if you enter a
two-letter region subtag into the script box, it will show what looks
like a valid tag in the output box (e.g. `en-Au`), but it will be
considered invalid, because that two letter subtag needs to be entered
into the region box.
2023-02-07 12:40:31 +07:00
Steven R. Loomis
75fb36b9e0
Merge pull request #8143 from keymanapp/fix/common/7534-more-import-errs-epic-ldml
feat(common): ldml: import error messages from the compiler   🙀
2023-02-06 11:25:20 -06:00
Steven R. Loomis
c4f7f0eb12
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-02-06 11:24:24 -06:00
Joshua A. Horton
3cbd0632ba chore(web): cleans up OSK module import paths 2023-02-06 10:09:28 +07:00
Joshua A. Horton
0b642561ac chore(common/web): Merge branch 'feature-esmodule-web-engine' into change/common/web/early-import-path-cleanup 2023-02-06 09:35:56 +07:00
Joshua Horton
e6caff993a
Merge pull request #8100 from keymanapp/feat/web/osk-modularization-testing
feat(web): unit tests for the OSK module & spun-off formerly-OSK components 🧩
2023-02-06 09:28:56 +07:00
Joshua A. Horton
25050a5354 chore(common/web): Merge branch 'feature-esmodule-web-engine' into change/common/web/early-import-path-cleanup 2023-02-06 09:13:26 +07:00
Joshua A. Horton
e652e4df07 chore(web): addresses PR review concerns 2023-02-06 09:01:30 +07:00
Joshua A. Horton
e1124f726f fix(common): sourcemap remap rename side-effects 2023-02-06 08:34:27 +07:00
Steven R. Loomis
f74a419bc6 chore: Review comment 2023-02-03 19:03:26 -06:00
Steven R. Loomis
41f77a874c feat(common): ldml different hardware support 🙀
- add HardwareToKeymap in common/web/types
- add a mt-iso keyboard, very close to stock mt.xml
- add machinery for parsing modifier key sequences
- more test machinery
- add assertions against invalid modifier sequences

Fixes: #7965
2023-02-03 19:00:57 -06:00
Steven R. Loomis
af10312f84 feat(common): ldml modifier support 🙀
- spec: update spec for layr.mod field
- core/include/ldm: update constants
- bitfield modelled after s_modifier_names[]  / LCTRLFLAG etc.
- new test case k_004_tinyshift, also update k_010_mt
- update const builder to ignore all *_map properties
- split utility out to utils, add test

For: #7533
(cherry picked from commit 0346bea488)
2023-02-03 18:54:22 -06:00
Steven R. Loomis
6f51be0684 feat(common): ldml: unit tests for import error messages from the compiler 🙀
- test fixup

For: #7534
2023-02-03 18:54:07 -06:00
Steven R. Loomis
7ffd2b94f5 feat(common): ldml: updates to xml loading 🙀
per review comments

- exit-early on import errs

For: #7534
2023-02-03 18:43:06 -06:00
Steven R. Loomis
ac38c277d8 feat(common): ldml: comprehensive import/implied data tests 🙀
For: #7534
(cherry picked from commit 2b64006dba)
2023-02-03 18:43:06 -06:00
Steven R. Loomis
5c357fad81 feat(common): ldml: unit tests for import error messages from the compiler 🙀
- also, change loadFile in callbacks to return null when file isn't found.

For: #7534
(cherry picked from commit 33274dd2c8)
2023-02-03 18:39:51 -06:00
Steven R. Loomis
20c1f5ec9e feat(common): ldml: import error messages from the compiler 🙀
For: #7534
(cherry picked from commit 3a3729e5c6)
2023-02-03 18:38:01 -06:00
Steven R. Loomis
1f594e6cf1 fix(common): test fix for test-ldml-keyboard-xml-reader 2023-02-03 18:24:43 -06:00
Steven R. Loomis
f527caaf0b feat(common): ldml updates to validation errors 🙀
- Apply suggestions from code review
- move m() into common code
- rename several error-related fields and types
- drop the 'unknown AJV error' - we expect errors to be populated
- halt compilation if validation fails, don't press on

For: #7534

Co-authored-by: Marc Durdin <marc@durdin.net>
(cherry picked from commit 05cc200f2027ee3c61280812a2de85ef20ea8b51)
2023-02-03 18:24:43 -06:00
Steven R. Loomis
0a0a9dcc27 feat(common): ldml: error messages from the compiler 🙀
- more refactor into common/web/types
- refactor test harness
- use reportMessage instead of throwing

For: #7964
(cherry picked from commit a112b847c4)
2023-02-03 18:24:43 -06:00
Steven R. Loomis
ae45295dc6 Merge remote-tracking branch 'upstream/master' into chore/merge-master-a17s5-REDO-epic-ldml 2023-02-03 16:53:35 -06:00
Joshua A. Horton
8f37539dfa chore(common/web): input-processor import path cleanup 2023-02-03 15:58:12 +07:00
Joshua A. Horton
5cb15fbcf1 chore(common/models): lm-layer import pathing cleanup 2023-02-03 15:35:31 +07:00
Joshua A. Horton
66502553da feat(common): simple package for common test resources 2023-02-03 15:13:18 +07:00
Joshua A. Horton
dce763600e chore(common/models): lm-worker import path cleanup 2023-02-03 14:52:12 +07:00
Joshua A. Horton
ab4a897b7f chore(common/models): models-templates import pathing cleanup 2023-02-03 14:15:16 +07:00
Joshua A. Horton
1186d500ea chore(common/models): models-wordbreakers import pathing 2023-02-03 14:03:30 +07:00
Joshua A. Horton
24e71b849a fix(common): keyman-version describe_outputs path 2023-02-03 14:01:43 +07:00
Joshua A. Horton
7eb34cbb37 chore(common/web): keyboard-processor + recorder-core import pathing cleanup 2023-02-03 14:01:24 +07:00
Joshua A. Horton
a41e26d0a2 fix(common/web): unit test patch-up 2023-02-03 13:37:23 +07:00
Joshua A. Horton
b7e66406c7 chore(common/web): Merge branch 'feature-esmodule-web-engine' into change/common/web/early-import-path-cleanup 2023-02-03 12:57:27 +07:00
Joshua A. Horton
0348ec47f2 chore(web): Merge branch 'change/web/element-wrapper-modularization' into change/web/osk-modularization 2023-02-03 08:49:02 +07:00
Joshua A. Horton
d038915524 chore(web): Merge branch 'feature-esmodule-web-engine' into change/web/element-wrapper-modularization 2023-02-03 08:46:40 +07:00
Joshua A. Horton
a167679f7e chore(web): Merge branch 'feature-esmodule-web-engine' into change/web/device-detector-modularization 2023-02-03 08:43:21 +07:00