Commit graph

4256 commits

Author SHA1 Message Date
Steven R. Loomis
bccc1e5720 Merge remote-tracking branch 'upstream/master' into chore/merge-master-20230217-epic-ldml 2023-02-17 18:52:33 -06:00
Sabine
256c8a74d2 Merge branch 'refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION' of https://github.com/keymanapp/keyman into refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION
# Conflicts:
#	developer/src/kmcmplib/src/CheckFilenameConsistency.cpp
#	developer/src/kmcmplib/src/kmx_u16.h
2023-02-17 20:49:10 +01:00
Sabine
b0976d55b7 chore(developer): Not ready yet: changes in CheckFilenameConsistency to use on non-windows 2023-02-17 20:44:13 +01:00
Sabine
35411886c2 chore(developer): Not ready yet: changes in CheckFilenameConsistency to use on non-windows 2023-02-17 16:00:34 +01:00
Sabine
8e52596d5a chore(developer): move converting function to kmx_u16 2023-02-17 09:29:37 +01:00
Steven R. Loomis
8ea87aa828 feat(common): ldml: merge keys into key2 🙀 2023-02-16 12:29:19 -06:00
Sabine
558f67b66e chore(developer): change MakeHashKeyFromFileKey16() to get correct behaviour of CHINT 2023-02-16 17:28:03 +01:00
Sabine
61bd37be6f chore(developer): AddDeprecatedCode to get CWARN when in kmcomp.exe -s-w is set 2023-02-16 09:55:09 +01:00
Joshua A. Horton
6af1e4890e chore(web): Merge branch 'feature-esmodule-web-engine' into chore/web/feature-esmodule-update 2023-02-16 15:18:50 +07:00
Joshua A. Horton
5912274c99 chore(developer): updates developer/server tsconfig 2023-02-16 14:00:48 +07:00
Joshua A. Horton
889d347c02 chore(common): Merge branch 'master' into chore/common/js-ts-dependency-updates 2023-02-16 13:51:31 +07:00
Steven R. Loomis
dd76a1fc36 feat(developer): add -T option to kmc 🙀
- -T converts testdata.xml into testdata.json

#7535
2023-02-15 17:58:52 -06:00
Sabine
2af3ce4b31 chore(developer): removed printf (---> started in... / °°-> changed to...) 2023-02-15 08:48:34 +01:00
Sabine
e8e60a46e0 Merge branch 'refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION' of https://github.com/keymanapp/keyman into refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION 2023-02-14 18:37:49 +01:00
Sabine
dc69b38c9c chore(developer): CheckFilenameConsistency added fclose() 2023-02-14 18:37:10 +01: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
Sabine
fc87d0b1d5 chore(developer): new converting function convert_pchar16T_To_pwcharT in kmx_u16 2023-02-14 12:58:22 +01: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
Sabine
41e057579d chore(developer): replace some #include <> with "" ; rename ErrExtra -> ErrExtraW 2023-02-14 12:13:41 +01:00
Sabine
94a4e756ef chore(developer): after stash:remove unneccessary files, get ErrorMsg for INCLUDECODES, VISUALKEYBOARD, UnreachableRules, ErrExrta, CWARN_ OK 2023-02-09 17:47:57 +01:00
Joshua A. Horton
a3752dd9ff chore(common): full-repo ts-node update 2023-02-09 12:39:15 +07:00
Joshua A. Horton
24d3f35cc7 fix(developer): drops implicit 'dom' library from server tsconfig 2023-02-09 10:32:02 +07:00
Joshua A. Horton
878e0f0ea2 chore(common): updates typescript to 4.9.5 2023-02-09 08:40:52 +07:00
Sabine
18a1424c45 chore(developer): remove unneccessary files, get ErrorMsg for INCLUDECODES, VISUALKEYBOARD, UnreachableRules, ErrExrta, CWARN_ OK 2023-02-08 20:27:54 +01: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
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
5e445b32a1 feat(developer): ldml: modifier key updates 🙀
- per review comments
- drop opt, cmd, and shiftL/shiftR

For: #7533
2023-02-06 15:47:18 -06:00
Steven R. Loomis
2a5d38e19f
Update developer/src/kmc-keyboard/test/fixtures/sections/keys/invalid-bad-modifier.xml
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-02-06 11:26: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
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
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
Sabine
76d3534871 chore(developer): changes in UnrechableRules::VerifyUnreachableRules() to run test_6440_unreachable_code..kmn 2023-02-03 13:27:51 +01:00
Marc Durdin
224402b9cc
Merge pull request #8151 from keymanapp/feat/developer/8119-duplicated-language-codes
feat(developer): check for duplicated language codes in package editor and compiler
2023-02-03 12:30:11 +11:00
Joshua A. Horton
9eded6c78d chore(common/web): Merge branch 'feature-esmodule-web-engine' into change/common/web/input-processor-modularization 2023-02-02 15:42:07 +07:00
Marc Durdin
8ee8325c74 feat(developer): check for duplicated language codes in package editor and compiler
Fixes #8119.
2023-02-02 15:06:15 +07:00
Joshua A. Horton
ede1068d51 chore(web): Merge branch 'master' into change/web/reorg-source-src-reorg 2023-02-02 09:18:46 +07:00
Joshua A. Horton
61a789a9ca chore(web): Merge branch 'master' into chore/web/top-level-build-script-rework 2023-02-02 08:58:44 +07:00
Sabine
dcd8ef8526 (chore(developer): changes in NamedCodeConstants::reindex() to run hieroglyphic.kmn properly 2023-02-01 16:50:01 +01:00
Sabine
d95a5eb44c (chore(developer): set flag_use_new_kmcomp to only use kmcmpdll...and back 2023-02-01 08:41:56 +01:00
Sabine
674f49e879 chore(developer): set flag_use_new_kmcomp to only use kmcmpdll...and back to kmcmplib 2023-02-01 08:39:54 +01:00
Steven R. Loomis
72bde8bd11 fix(developer) todo cleanup, common code, tests 🙀
- fixup import

For: #8069
2023-01-31 18:30:05 -06:00
Steven R. Loomis
8c940292b1 fix(developer) todo cleanup, common code, tests 🙀
- move some shared code out of key2/keys and into util.ts
- add unit tests
- delete a null test-base.ts

For: #8069
2023-01-31 16:06:49 -06:00
Sabine
814942c597 chore(developer): add BeginLine in kmcmpdll/Compiler.cpp; fread() in kmcmp_CompileKeyboardFileToBuffer 2023-01-31 20:19:05 +01:00
Marc Durdin
17359dbf53 chore(developer): kmcmpdll debug src path
Adds the src build path in for kmcmpdll.dll for debugging purposes, when
running from any subdirectory of the KEYMAN_ROOT path.
2023-01-31 15:56:30 +07:00
Steven R. Loomis
bbd850c03b feat(common): ldml: imports: use cldr version from constants 🙀
- common: more robustness in importing.
- build: don't copy imports to kmc which doesn't need it

supports #7964
2023-01-27 12:45:00 -06:00
Steven R. Loomis
e5c5fd025e feat(common): ldml: change importer to use callbacks for fs 🙀
supports #7964
2023-01-27 12:45:00 -06:00