Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

epic: LDML keyboard support 🙀 #7054

Merged
merged 676 commits into from
Feb 28, 2023
Merged
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
676 commits
Select commit Hold shift + click to select a range
bccb64c
feat(core): ldml: kmx-plus.ts for layr/key2/list 🙀
srl295 Nov 17, 2022
3496939
feat(core): ldml: steps for list/key2 🙀
srl295 Nov 18, 2022
2d05c8f
spec(core): ldml: document KMXPlus update process 🙀
srl295 Nov 23, 2022
e0dcb30
spec(core): ldml: more document KMXPlus update process 🙀
srl295 Nov 23, 2022
2079a88
Merge pull request #7773 from keymanapp/feat/core/7532-layr-epic-ldml2
srl295 Nov 23, 2022
8b77d1f
feat(core): ldml: make sect builder an object 🙀
srl295 Nov 23, 2022
9e21fe1
feat(core): ldml: updates to list and other stuff 🙀
srl295 Nov 23, 2022
156c737
feat(core): ldml: updates to key2 and other stuff 🙀
srl295 Nov 24, 2022
c6b1be4
feat(core): ldml: updates to key2 and other stuff 🙀
srl295 Nov 24, 2022
00442f5
feat(core): ldml: updates to key2 and other stuff 🙀
srl295 Nov 24, 2022
deceda1
feat(core): ldml: updates to key2 and other stuff 🙀
srl295 Nov 24, 2022
273075c
feat(core): ldml: updates to layr compiler 🙀
srl295 Nov 25, 2022
e5ec3cb
feat(core): ldml: spec updates 🙀
srl295 Nov 26, 2022
e98835d
feat(core): ldml: updates to layr 🙀
srl295 Nov 26, 2022
2d7aa02
feat(core): ldml: updating guide updates 🙀
srl295 Nov 30, 2022
66f01f4
feat(core): ldml: fix to build-layr 🙀
srl295 Nov 30, 2022
f150a96
feat(core): ldml: basic: WIP 🙀
srl295 Nov 30, 2022
30761fe
feat(core): ldml: basic: updates to basic.txt for layr 🙀
srl295 Dec 2, 2022
2375a81
fix(developer): kmc-model esbuild node_modules path
mcdurdin Dec 10, 2022
7ccac81
Merge pull request #7888 from keymanapp/fix/developer/kmc-model-node-…
mcdurdin Dec 10, 2022
a126a83
Merge branch 'feature-ldml' into feat/core/7532-layr-epic-ldml
srl295 Dec 12, 2022
eb8c4de
feat(core): ldml: basic: updates to basic.txt for layr 🙀
srl295 Dec 15, 2022
bc14f18
Merge remote-tracking branch 'origin/master' into chore/core/mergemas…
srl295 Dec 15, 2022
b850e3f
chore(core): ldml: fix merge 🙀
srl295 Dec 16, 2022
e2bf5fa
chore(core): ldml: fix merge 🙀
srl295 Dec 16, 2022
b036fc5
feat(core): ldml: basic: updates to basic.txt for layr 🙀
srl295 Dec 16, 2022
47a9d16
chore(core): updates to kmc-package after merge 🙀
srl295 Dec 20, 2022
63fa53a
feat(core): ldml: updates to basic.txt and builders 🙀
srl295 Dec 20, 2022
343f234
feat(core): ldml: updates to basic.txt and builders 🙀
srl295 Dec 21, 2022
513f458
feat(core): ldml: updates to C++ 🙀
srl295 Dec 21, 2022
05656ac
feat(core): ldml: fix off-by-one on section count 🙀
srl295 Dec 22, 2022
efef796
feat(core): ldml: fix C++ layr helper 🙀
srl295 Dec 22, 2022
80b7641
Apply suggestions from code review
srl295 Dec 22, 2022
ec9a595
fix(developer): ldml: merge fixes: fix scope of JSZip 🙀
srl295 Dec 22, 2022
ac461e9
fix(developer): ldml: merge fixes: fix scope of JSZip in the test 🙀
srl295 Dec 22, 2022
34dc4ae
chore(common): Fix shellcheck warnings
ermshiperete Dec 14, 2022
5c540e5
auto: increment master version to 17.0.19
keyman-server Dec 16, 2022
5c7f8ca
fix(linux): Fix dependency of ibus-keyman
ermshiperete Dec 16, 2022
37e31fe
auto: increment master version to 17.0.20
keyman-server Dec 17, 2022
89685e3
chore(android/samples): Remove Sentry dependencies
darcywong00 Dec 13, 2022
2f147aa
refactor(android): Check libraries with DependencyUtil
darcywong00 Dec 15, 2022
8e7a8c3
chore(android): Additional cleanup
darcywong00 Dec 15, 2022
17d398a
Update android/KMEA/app/src/main/java/com/tavultesoft/kmea/util/Depen…
darcywong00 Dec 16, 2022
6a68569
Revert "chore(common): Fix shellcheck warnings"
mcdurdin Dec 18, 2022
d3690e9
auto: increment master version to 17.0.21
keyman-server Dec 19, 2022
aedcc4c
Merge remote-tracking branch 'upstream/master' into chore/merge-maste…
srl295 Dec 22, 2022
f6c5748
Merge pull request #7884 from keymanapp/chore/merge-master2-epic-ldml
srl295 Dec 22, 2022
cf07a05
Merge pull request #7945 from keymanapp/chore/merge-master3-epic-ldml
srl295 Dec 22, 2022
f7f40a2
fix(core): ldml: fix spelling of maqtugħa 🙀
srl295 Dec 30, 2022
1b9830e
fix(common): ldml: kvk should skip empty keys 🙀
srl295 Dec 29, 2022
015e718
chore: merge master into feature-ldml
srl295 Jan 2, 2023
e5ae661
Merge pull request #7963 from keymanapp/chore/merge-master6-epic-ldml
srl295 Jan 2, 2023
42b4ffe
Apply suggestions from code review
srl295 Jan 4, 2023
1a8ee0b
fix(developer): ldml: add escaping 🙀
srl295 Dec 28, 2022
58a5d8f
fix(developer): ldml: update escaping to handle 1..5 ch 🙀
srl295 Dec 29, 2022
f3064d2
Apply suggestions from code review
srl295 Jan 3, 2023
6d981c9
fix(common): util and test fix 🙀
srl295 Jan 4, 2023
c54c297
fix(common): escaping: util and test fix 🙀
srl295 Jan 5, 2023
26c91e6
fix(common): escaping: util and test fix 🙀
srl295 Jan 5, 2023
d68999e
fix(common): escaping: only unescape on some attributes 🙀
srl295 Jan 5, 2023
b1191bb
fix(developer): ldml: add escaping to key2 section 🙀
srl295 Jan 5, 2023
bc0e570
Merge remote-tracking branch 'upstream/master' into chore/merge-maste…
srl295 Jan 6, 2023
a7033fb
Merge pull request #7955 from keymanapp/fix/common/kvk-null-keys-epic…
srl295 Jan 6, 2023
89d7f15
Merge pull request #7982 from keymanapp/chore/merge-master999-epic-ldml
srl295 Jan 6, 2023
564f98c
Apply suggestions from code review
srl295 Jan 6, 2023
3d15454
fix(common): ldml: updates per code review 🙀
srl295 Jan 6, 2023
9f8b035
fix(developer): ldml: updates per code review 🙀
srl295 Jan 6, 2023
2f44780
fix(core): ldml: add asserts to C++ 🙀
srl295 Jan 6, 2023
d552a46
Merge pull request #7630 from keymanapp/feat/core/7532-layr-epic-ldml
srl295 Jan 6, 2023
7f92eb3
Merge branch 'feature-ldml' into fix/core/7569-unicode-escaping-epic-…
srl295 Jan 8, 2023
30865fb
Merge remote-tracking branch 'upstream/feature-ldml' into fix/core/75…
srl295 Jan 8, 2023
57d4dfe
Apply suggestions from code review
srl295 Jan 8, 2023
e4799d2
Merge pull request #7956 from keymanapp/fix/core/maqtugha
srl295 Jan 8, 2023
fbbed6d
spec(core): ldml: Drop padding 🙀
srl295 Jan 9, 2023
cbb5af2
feat(core): ldml: Drop padding: common,core 🙀
srl295 Jan 9, 2023
cb75435
Merge remote-tracking branch 'upstream/master' into chore/merge-maste…
srl295 Jan 17, 2023
c0541c4
spec(core): ldml: make hardware be an enum 🙀
srl295 Jan 17, 2023
e586690
feat(core): ldml: Drop all padding: common,core 🙀
srl295 Jan 17, 2023
f06034d
Merge pull request #7999 from keymanapp/feat/core/7987-drop-padding
srl295 Jan 17, 2023
ed16480
Merge pull request #8029 from keymanapp/chore/merge-master20230116-ep…
srl295 Jan 17, 2023
8a579a1
Merge pull request #7992 from keymanapp/feat/core/7984-cxx-assert-on-…
srl295 Jan 18, 2023
5cf1a1f
spec(core): ldml: make hardware be an enum 🙀
srl295 Jan 19, 2023
d7ce219
feat(core): ldml: make hardware be an enum 🙀
srl295 Jan 19, 2023
666d71f
chore(core): ldml: update unit tests 🙀
srl295 Jan 20, 2023
42fdba4
chore(core): ldml: add unit tests 🙀
srl295 Jan 20, 2023
f02307a
chore(common): ldml: fix test case 🙀
srl295 Jan 20, 2023
e63745b
chore(coverage): ldml setup for visual code coverage 🙀
srl295 Jan 20, 2023
a0dd562
Merge pull request #8059 from keymanapp/chore/common/7967-testfail-ep…
srl295 Jan 23, 2023
9089f85
Merge pull request #8061 from keymanapp/chore/developer/8060-coverage…
srl295 Jan 23, 2023
6500cda
chore(developer): ldml layr: update tests, new utility for section te…
srl295 Jan 26, 2023
2af96fd
fix(developer): update error messages for layr 🙀
srl295 Jan 26, 2023
2b3cedd
fix(core): update escaping per review comment 🙀
srl295 Jan 26, 2023
a1cfd72
fix(common): update USVirtualKeyMap to actually be US🙀
srl295 Jan 2, 2023
2f5459b
fix(developer): test fix 🙀
srl295 Jan 3, 2023
631cd50
chore(developer): disable mt 🙀
srl295 Jan 26, 2023
1d7e0d1
Merge pull request #8030 from keymanapp/spec/core/7986-hardware-enum-…
srl295 Jan 26, 2023
70b3513
Merge pull request #7570 from keymanapp/fix/core/7569-unicode-escapin…
srl295 Jan 26, 2023
592d4b0
Merge pull request #7969 from keymanapp/feat/developer-7965-epic-ldml…
srl295 Jan 26, 2023
5a4b44f
chore(common): move CompilerEvent, CompilerCallbacks into types 🙀
srl295 Jan 26, 2023
48f72bf
chore(resources): ldml: CLDR update 🙀
srl295 Dec 30, 2022
6fd2e41
feat(common): ldml implement imports 🙀
srl295 Nov 1, 2022
727056c
feat(developer): ldml support implied keys 🙀
srl295 Jan 25, 2023
0b497be
chore(core): update tests per merge conflicts
srl295 Jan 26, 2023
3eb7f05
feat(developer): ldml implied keys work 🙀
srl295 Jan 26, 2023
e5c5fd0
feat(common): ldml: change importer to use callbacks for fs 🙀
srl295 Jan 27, 2023
ed30de2
feat(core): ldml: add cldr version to constants 🙀
srl295 Jan 27, 2023
a0b184a
feat(common): ldml: use cldr version from constants 🙀
srl295 Jan 27, 2023
bbd850c
feat(common): ldml: imports: use cldr version from constants 🙀
srl295 Jan 27, 2023
55f5a57
Merge pull request #8107 from keymanapp/chore/developer/7964-refactor…
srl295 Jan 27, 2023
a40ee01
feat(developer): ldml import/implied keys : review comment 🙀
srl295 Jan 27, 2023
e3a92e9
Merge pull request #7402 from keymanapp/fix/developer/epic-ldml/7401-…
srl295 Jan 28, 2023
80a0015
chore(common): imports: Apply suggestions from code review 🙀
srl295 Jan 30, 2023
4b5ad2e
Merge pull request #8106 from keymanapp/chore/common/7964-refactor-co…
srl295 Jan 31, 2023
709c1cc
fix(common) make common/web/types kvk tests pass 🙀
srl295 Jan 31, 2023
8c94029
fix(developer) todo cleanup, common code, tests 🙀
srl295 Jan 31, 2023
72bde8b
fix(developer) todo cleanup, common code, tests 🙀
srl295 Feb 1, 2023
031998f
Merge pull request #8132 from keymanapp/chore/developer/8069-todoclea…
srl295 Feb 1, 2023
cfa5f62
Merge pull request #8131 from keymanapp/chore/common/7967-testfail2-e…
srl295 Feb 1, 2023
ae45295
Merge remote-tracking branch 'upstream/master' into chore/merge-maste…
srl295 Feb 3, 2023
c48ab1f
chore: npm i to fix package-lock.json desync
srl295 Feb 4, 2023
0a0a9dc
feat(common): ldml: error messages from the compiler 🙀
srl295 Feb 1, 2023
f527caa
feat(common): ldml updates to validation errors 🙀
srl295 Feb 3, 2023
1f594e6
fix(common): test fix for test-ldml-keyboard-xml-reader
srl295 Feb 4, 2023
20c1f5e
feat(common): ldml: import error messages from the compiler 🙀
srl295 Feb 1, 2023
5c357fa
feat(common): ldml: unit tests for import error messages from the com…
srl295 Feb 2, 2023
ac38c27
feat(common): ldml: comprehensive import/implied data tests 🙀
srl295 Feb 2, 2023
7ffd2b9
feat(common): ldml: updates to xml loading 🙀
srl295 Feb 3, 2023
6f51be0
feat(common): ldml: unit tests for import error messages from the com…
srl295 Feb 4, 2023
af10312
feat(common): ldml modifier support 🙀
srl295 Feb 2, 2023
41f77a8
feat(common): ldml different hardware support 🙀
srl295 Feb 2, 2023
f74a419
chore: Review comment
srl295 Feb 4, 2023
4eb62ba
Merge pull request #8170 from keymanapp/chore/merge-master-a17s5-REDO…
mcdurdin Feb 4, 2023
c4f7f0e
Apply suggestions from code review
srl295 Feb 6, 2023
c55ecee
Merge pull request #8133 from keymanapp/fix/common/7964-import-redo-e…
srl295 Feb 6, 2023
75fb36b
Merge pull request #8143 from keymanapp/fix/common/7534-more-import-e…
srl295 Feb 6, 2023
2a5d38e
Update developer/src/kmc-keyboard/test/fixtures/sections/keys/invalid…
srl295 Feb 6, 2023
5e445b3
feat(developer): ldml: modifier key updates 🙀
srl295 Feb 6, 2023
8d63669
Update core/include/ldml/keyboardprocessor_ldml.ts
srl295 Feb 7, 2023
9d6289d
Merge pull request #8171 from keymanapp/feat/core/7533-modifier-epic-…
srl295 Feb 7, 2023
a8832ea
Merge pull request #8172 from keymanapp/feat/developer/7965-morehardw…
srl295 Feb 7, 2023
db272e0
Merge remote-tracking branch 'upstream/master' into chore/merge-maste…
srl295 Feb 10, 2023
e548716
Merge pull request #8211 from keymanapp/chore/merge-master-20230210-e…
srl295 Feb 14, 2023
7c02ab8
feat(core): ldml C++ feature support 🙀
srl295 Feb 9, 2023
7983fd9
fix(developer): ldml spec: layr…mod needs to be a bitfield 🙀
srl295 Feb 9, 2023
ac2366f
feat(core): ldml C++ updates to modifiers 🙀
srl295 Feb 9, 2023
aa0da57
fix(core): fix double precision err
srl295 Feb 9, 2023
e5620e8
feat(core): ldml C++ validate list / key2 🙀
srl295 Feb 10, 2023
0fd94c7
Merge pull request #8205 from keymanapp/feat/core/7985-cxx-epic-ldml
srl295 Feb 15, 2023
4a2bb6b
Review comments
srl295 Feb 15, 2023
251ed6f
Merge pull request #8206 from keymanapp/feat/core/7985-cxx2-epic-ldml
srl295 Feb 15, 2023
9a31e86
feat(common): ldml read keyboard testdata 🙀
srl295 Feb 10, 2023
c2556ac
feat(common): ldml read keyboard testdata 🙀
srl295 Feb 11, 2023
228cdd6
feat(common): ldml read keyboard testdata 🙀
srl295 Feb 13, 2023
dd76a1f
feat(developer): add -T option to kmc 🙀
srl295 Feb 13, 2023
c191f0a
feat(core): auto generate test json 🙀
srl295 Feb 13, 2023
cace5cf
feat(core): ldml C++ helper for list / key2 🙀
srl295 Feb 16, 2023
1122abd
Merge pull request #8212 from keymanapp/feat/developer/7535-emit-test…
srl295 Feb 16, 2023
6cf8e7f
Merge pull request #8232 from keymanapp/feat/core/7985-cxx-key2-epic-…
srl295 Feb 16, 2023
bf15661
spec(core): ldml: merge keys into key2 🙀
srl295 Feb 16, 2023
8ea87aa
feat(common): ldml: merge keys into key2 🙀
srl295 Feb 16, 2023
c40c19d
feat(core): refactor ldml test 🙀
srl295 Feb 14, 2023
47b222e
feat(core): ldml json test executor 🙀
srl295 Feb 15, 2023
4689c04
feat(core): ldml json test executor 🙀
srl295 Feb 16, 2023
4433d85
feat(core): ldml json test executor 🙀
srl295 Feb 16, 2023
83adfdd
Update common/web/types/src/kmx/kmx-plus-builder/build-key2.ts
srl295 Feb 17, 2023
bccc1e5
Merge remote-tracking branch 'upstream/master' into chore/merge-maste…
srl295 Feb 18, 2023
71dd0c6
fix(developer): always copy schemas during build
mcdurdin Feb 18, 2023
dd9be17
Update core/include/ldml/keyboardprocessor_ldml.ts
srl295 Feb 18, 2023
8a28583
Merge pull request #8243 from keymanapp/feat/core-spec-merge-key2-epi…
srl295 Feb 18, 2023
fceebae
Update core/tests/unit/ldml/ldml.cpp
srl295 Feb 18, 2023
ce0a488
Update core/tests/unit/ldml/ldml_test_source.cpp
srl295 Feb 18, 2023
d46f2c3
Update core/tests/unit/ldml/ldml_test_source.cpp
srl295 Feb 18, 2023
cb019d9
Merge pull request #8253 from keymanapp/fix/developer/7953-schema-cop…
mcdurdin Feb 19, 2023
88df443
feat(developer): touch layout compiler [unfinished]
mcdurdin Oct 13, 2022
88a2351
chore: rename comments
mcdurdin Feb 20, 2023
deac408
feat(developer): touch layout compiler key and layer identifiers
mcdurdin Feb 20, 2023
170344d
Merge pull request #8251 from keymanapp/chore/merge-master-20230217-e…
srl295 Feb 20, 2023
018d109
Merge pull request #8222 from keymanapp/feat/core/7535-process-test-d…
srl295 Feb 20, 2023
e1e5eea
feat(core): ldml rename key2 to keys 🙀
srl295 Feb 20, 2023
19101c6
chore(core): cleanup meson build
mcdurdin Feb 21, 2023
20cc477
chore(core): specify --no-tests in all dependent builds
mcdurdin Feb 21, 2023
d74b08f
chore(core): handle meson version 0.53.2
mcdurdin Feb 21, 2023
29ddeeb
chore(core): remove cl from path before build, build static lib
mcdurdin Feb 21, 2023
21af2c1
chore(core): restore bat wrapper for vc++ build
mcdurdin Feb 21, 2023
3463163
chore(core): remove undeclared variable
mcdurdin Feb 21, 2023
332ad45
chore(core): remove quotes to batch file param
mcdurdin Feb 21, 2023
366279f
chore(common): define standard build path
mcdurdin Feb 22, 2023
e645b86
chore: Merge branch 'feature-ldml' into chore/A17S7-master-to-feature…
mcdurdin Feb 22, 2023
f6c64f0
chore(core): rename fail, echo_heading in commands.inc.sh
mcdurdin Feb 22, 2023
84d1446
chore(core): update os_id to BUILDER_OS
mcdurdin Feb 22, 2023
c4054c8
chore(developer): update path ref for hextobin
mcdurdin Feb 22, 2023
6427fd6
chore: move from vcvarsall.bat to vsdevcmd.bat
mcdurdin Feb 22, 2023
e2b6bf9
chore: new core build invocation in linux/scripts/build.sh
mcdurdin Feb 22, 2023
03d8d75
chore(linux): fixup core build from reconf
mcdurdin Feb 22, 2023
4777aaf
chore: address review comments and null bug
mcdurdin Feb 22, 2023
bc68033
Merge pull request #8276 from keymanapp/feat/core/8069-key2-keys-epic…
srl295 Feb 22, 2023
def6255
Merge pull request #8286 from keymanapp/chore/A17S7-master-to-feature…
mcdurdin Feb 22, 2023
a0ecb30
Merge pull request #8265 from keymanapp/feat/developer/epic-ldml/7238…
mcdurdin Feb 22, 2023
b968bcf
Merge branch 'feature-ldml' into chore/core/cleanup-meson-build
mcdurdin Feb 22, 2023
9eb4725
chore: Merge branch 'feature-ldml' into chore/merge-master-to-feature…
mcdurdin Feb 23, 2023
a2ceb98
chore: rewrite extra standard build script prolog
mcdurdin Feb 23, 2023
051243a
chore: replace die with builder_die
mcdurdin Feb 23, 2023
ce4adbd
chore(linux): skip tests on core when building
mcdurdin Feb 23, 2023
e71d8d3
chore: fail to builder_die
mcdurdin Feb 23, 2023
d99ebd4
Merge pull request #8296 from keymanapp/chore/merge-master-to-feature…
mcdurdin Feb 23, 2023
38603e8
Merge pull request #8279 from keymanapp/chore/core/cleanup-meson-build
mcdurdin Feb 23, 2023
c34a76b
Merge pull request #8287 from keymanapp/chore/vsvarsall-to-vsdevcmd
mcdurdin Feb 23, 2023
69fde22
chore(core): make kmx_test_source available as a library
mcdurdin Feb 23, 2023
a507ac6
chore(core): Update path to test library
ermshiperete Feb 23, 2023
caeccfb
chore(core): include patH
mcdurdin Feb 23, 2023
a0fa392
chore(linux): use core kmx tests from source rather than build
mcdurdin Feb 23, 2023
ee2851d
chore(core): extract objects rather than link lib to fix wasm build
mcdurdin Feb 23, 2023
72374c0
chore(linux): --no-tests for packaging build
mcdurdin Feb 24, 2023
cdda585
Merge pull request #8303 from keymanapp/chore/core/make-kmx_test_sour…
mcdurdin Feb 24, 2023
c7c52af
chore(developer): update to commander 10.0.0
mcdurdin Feb 23, 2023
ca77d07
chore(developer): remove extraneous commander ref
mcdurdin Feb 23, 2023
a30fdff
feat(developer): kmc build command
mcdurdin Feb 23, 2023
083be28
chore(developer): fixup mkdir
mcdurdin Feb 23, 2023
91c6cb9
chore(developer): use --out-file for build-test-data
mcdurdin Feb 24, 2023
1be3ab3
feat(developer): support build of .kmn from kmc
mcdurdin Feb 23, 2023
113918d
chore(developer): use BuildCommandOptions type
mcdurdin Feb 24, 2023
adfe3fa
feat(developer): kmc compile .kps files
mcdurdin Feb 24, 2023
f6a3364
chore(developer): no top-level await
mcdurdin Feb 24, 2023
12a6e40
feat(developer): kmc compile .model.ts file
mcdurdin Feb 24, 2023
77a76a2
fix(developer): ldml TODO-LDML cleanup 🙀
srl295 Feb 25, 2023
647803e
feat(common): add .kpj typescript reader and schema
mcdurdin Feb 25, 2023
ec26e73
chore(developer): skip copying schemas that may not be needed
mcdurdin Feb 25, 2023
35c7065
chore(common): export kpj from module
mcdurdin Feb 25, 2023
b04489a
feat(developer): kmc .kpj support
mcdurdin Feb 26, 2023
9af10cd
chore(developer): add kpj schema for tests
mcdurdin Feb 27, 2023
be4f036
feat(developer): Add support for building a folder to kmc
mcdurdin Feb 27, 2023
8f02108
Update developer/src/kmc/src/commands/buildTestData.ts
mcdurdin Feb 27, 2023
8ef9be3
Merge pull request #8300 from keymanapp/feat/developer/5283-kmc-comma…
mcdurdin Feb 27, 2023
a9b707d
Merge pull request #8302 from keymanapp/feat/developer/5283-kmc-kmn-w…
mcdurdin Feb 27, 2023
d541c3b
Merge pull request #8310 from keymanapp/feat/developer/5283-kmc-kps-s…
mcdurdin Feb 27, 2023
89f26e1
Merge pull request #8311 from keymanapp/feat/developer/5283-kmc-model…
mcdurdin Feb 27, 2023
6c87b49
Merge pull request #8317 from keymanapp/feat/common/5283-kpj-schema-a…
mcdurdin Feb 27, 2023
05d5c6f
Merge pull request #8320 from keymanapp/feat/developer/5283-kmc-kpj-s…
mcdurdin Feb 27, 2023
0b7b229
Merge pull request #8326 from keymanapp/feat/developer/2761-kmc-build…
mcdurdin Feb 27, 2023
712063d
Merge pull request #8316 from keymanapp/fix/developer-8069/todo-epic-…
srl295 Feb 27, 2023
b96e863
chore: Merge branch 'feature-ldml' into chore/merge-master-into-featu…
mcdurdin Feb 27, 2023
7cbdb9d
chore(linux): fixup merge for test kmx path
mcdurdin Feb 27, 2023
5fa307d
chore(linux): fixup merge for test kmx path
mcdurdin Feb 27, 2023
20afd10
Merge pull request #8330 from keymanapp/chore/merge-master-into-featu…
mcdurdin Feb 28, 2023
2edff0c
chore(linux): disable core tests for build
mcdurdin Feb 28, 2023
c11f765
Merge pull request #8331 from keymanapp/chore/linux-disable-core-test…
mcdurdin Feb 28, 2023
bf99c77
chore(linux): disable node-based core tests when testing during packa…
mcdurdin Feb 28, 2023
5046376
Merge pull request #8333 from keymanapp/chore/linux-disable-core-test…
mcdurdin Feb 28, 2023
34faa02
chore(linux): disable tests for core install also
mcdurdin Feb 28, 2023
f1deaa2
Merge pull request #8334 from keymanapp/chore/linux-disable-core-test…
mcdurdin Feb 28, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,7 @@ resources/environment.sh
/core/VERSION.md

**/node_modules/
tsconfig.tsbuildinfo

# Windows system files
Thumbs.db
Expand All @@ -174,6 +175,13 @@ Thumbs.db
# details
/xcodebuild-scripts.log

#
# Code coverage tools for JS/TS - nyc and c8
#
.nyc_output/
lcov-report/
lcov.info

# Linux packaging related
/debian/
/results/
Expand Down
6 changes: 6 additions & 0 deletions .nycrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"check-coverage": true,
"temp-directory": ".nyc_output",
"lines": 90,
"reporter": "text"
}
2 changes: 2 additions & 0 deletions common/include/km_types.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
#pragma once

#include <stdint.h>

/*
#if defined(_WIN32) || defined(_WIN64)
#define snprintf _snprintf
Expand Down
27 changes: 23 additions & 4 deletions common/include/kmx_file.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ namespace kbp {
namespace kmx {
#endif

#define KMX_MAX_ALLOWED_FILE_SIZE (128 * 1024 * 1024) /* 128MB */
/* */

#define KEYMAN_LAYOUT_DEFAULT 0x000005FE
Expand Down Expand Up @@ -48,8 +49,10 @@ namespace kmx {
#define VERSION_140 0x00000E00
#define VERSION_150 0x00000F00

#define VERSION_160 0x00001000

#define VERSION_MIN VERSION_50
#define VERSION_MAX VERSION_150
#define VERSION_MAX VERSION_160

//
// Backspace types
Expand Down Expand Up @@ -261,6 +264,9 @@ namespace kmx {
#define KF_LOGICALLAYOUT 0x0008
#define KF_AUTOMATICVERSION 0x0010

// 16.0: Support for LDML Keyboards in KMXPlus file format
#define KF_KMXPLUS 0x0020

#define HK_ALT 0x00010000
#define HK_CTRL 0x00020000
#define HK_SHIFT 0x00040000
Expand Down Expand Up @@ -316,7 +322,7 @@ struct COMP_KEYBOARD {

KMX_DWORD dwFileVersion; // 0004 Version of the file - Keyman 4.0 is 0x0400

KMX_DWORD dwCheckSum; // 0008 As stored in keyboard
KMX_DWORD dwCheckSum; // 0008 As stored in keyboard. DEPRECATED as of 16.0
KMX_DWORD KeyboardID; // 000C as stored in HKEY_LOCAL_MACHINE//system//currentcontrolset//control//keyboard layouts
KMX_DWORD IsRegistered; // 0010
KMX_DWORD version; // 0014 keyboard version
Expand All @@ -335,7 +341,20 @@ struct COMP_KEYBOARD {

KMX_DWORD dpBitmapOffset; // 0038 offset of the bitmaps in the file
KMX_DWORD dwBitmapSize; // 003C size in bytes of the bitmaps
};
};

struct COMP_KEYBOARD_KMXPLUSINFO {
KMX_DWORD dpKMXPlus; // 0040 offset of KMXPlus data, <sect> header is first
KMX_DWORD dwKMXPlusSize; // 0044 size in bytes of entire KMXPlus data
};

/**
* Only valid if comp_keyboard.dwFlags&KF_KMXPLUS
*/
struct COMP_KEYBOARD_EX {
COMP_KEYBOARD header; // 0000 see COMP_KEYBOARD
COMP_KEYBOARD_KMXPLUSINFO kmxplus; // 0040 see COMP_KEYBOARD_EXTRA
};

typedef COMP_KEYBOARD *PCOMP_KEYBOARD;
typedef COMP_STORE *PCOMP_STORE;
Expand All @@ -359,4 +378,4 @@ static_assert(sizeof(COMP_KEYBOARD) == KEYBOARDFILEHEADER_SIZE, "COMP_KEYBOARD m
} // namespace kmx
} // namespace kbp
} // namespace km
#endif
#endif
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@
"layer": { "$ref": "#/definitions/layer-id" },
"nextlayer": { "$ref": "#/definitions/layer-id" },
"font": { "$ref": "#/definitions/font-spec" },
"fontsize": { "type": "string" },
"fontsize": { "$ref": "#/definitions/fontsize-spec" },
"sp": { "$ref": "#/definitions/key-sp" },
"pad": { "$ref" : "#/definitions/key-pad" },
"width": { "$ref" : "#/definitions/key-width" },
Expand Down Expand Up @@ -141,7 +141,7 @@
"layer": { "$ref": "#/definitions/layer-id" },
"nextlayer": { "$ref": "#/definitions/layer-id" },
"font": { "$ref": "#/definitions/font-spec" },
"fontsize": { "type": "string" },
"fontsize": { "$ref": "#/definitions/fontsize-spec" },
"sp": { "$ref": "#/definitions/key-sp" },
"pad": { "$ref" : "#/definitions/key-pad" },
"width": { "$ref" : "#/definitions/key-width" }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@
"text": { "type": "string" },
"layer": { "$ref": "#/definitions/layer-id" },
"nextlayer": { "$ref": "#/definitions/layer-id" },
"fontsize": { "type": "string" },
"fontsize": { "$ref": "#/definitions/fontsize-spec" },
"font": { "$ref": "#/definitions/font-spec" },
"dk": { "type": "string" },
"sp": { "$ref" : "#/definitions/numeric" },
Expand Down Expand Up @@ -129,7 +129,7 @@
"sp": { "$ref" : "#/definitions/numeric" },
"pad": { "$ref" : "#/definitions/numeric" },
"width": { "$ref" : "#/definitions/numeric" },
"fontsize": { "type": "string" },
"fontsize": { "$ref": "#/definitions/fontsize-spec" },
"font": { "$ref": "#/definitions/font-spec" },
"dk": { "type": "string" }
},
Expand Down
13 changes: 13 additions & 0 deletions common/schemas/kpj/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# kpj.xsd

**Note:** `KeymanDeveloperProject.Options.Version` is currently implicitly
always '1.0'. It will be required for version 2.0 and later of the format.

## 2023-02-27 2.0
* Version 2.0 makes 'Files' optional (internally, Files/File will be ignored,
deleted on load and populated from folder structure). Adds Options/SourcePath,
which defaults to '$PROJECTPATH/source', and Options/BuildPath now defaults to
'$PROJECTPATH/build'.

## 2023-02-25 1.0
* Initial version 1.0, based on Delphi classes Keyman.Developer.System.Project.*
127 changes: 127 additions & 0 deletions common/schemas/kpj/kpj.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
{
"title": "kpj.xsd",
"$schema": "http://json-schema.org/schema#",
"type": "object",
"properties": {
"KeymanDeveloperProject": {
"properties": {
"Options": {
"$ref": "#/definitions/Options"
},
"Files": {
"$ref": "#/definitions/Files"
}
},
"required": [
"Options"
],
"additionalProperties": false,
"type": "object"
}
},
"required": [
"KeymanDeveloperProject"
],
"additionalProperties": false,
"definitions": {
"Options": {
"type": "object",
"properties": {
"BuildPath": {
"type": "string"
},
"SourcePath": {
"type": "string"
},
"CompilerWarningsAsErrors": {
"type": "string",
"pattern": "^(True|False)$"
},
"WarnDeprecatedCode": {
"type": "string",
"pattern": "^(True|False)$"
},
"CheckFilenameConventions": {
"type": "string",
"pattern": "^(True|False)$"
},
"ProjectType": {
"type": "string",
"pattern": "^(keyboard|lexicalmodel)$"
},
"Version": {
"type": "string",
"pattern": "^(1\\.0|2\\.0)$"
}
},
"required": [
],
"additionalProperties": false
},
"Files": {
"type": "object",
"properties": {
"File": {
"type": "array",
"items": {
"$ref": "#/definitions/File"
}
}
},
"additionalProperties": false,
"required": [
"File"
]
},
"File": {
"type": "object",
"properties": {
"ID": {
"type": "string"
},
"Filename": {
"type": "string"
},
"Filepath": {
"type": "string"
},
"FileVersion": {
"type": "string"
},
"FileType": {
"type": "string"
},
"Details": {
"$ref": "#/definitions/FileDetails"
},
"ParentFileID": {
"type": "string"
}
},
"required": [
"Filename"
],
"additionalProperties": false
},
"FileDetails": {
"type": "object",
"properties": {
"Name": {
"type": "string"
},
"Copyright": {
"type": "string"
},
"Message": {
"type": "string"
},
"Version": {
"type": "string"
}
},
"required": [
],
"additionalProperties": false
}
}
}
Loading