Marc Durdin
4838ba1ffe
chore: rename kmc-keyboard to kmc-ldml
...
Part of #8719 .
2023-05-09 14:08:45 +07:00
Steven R. Loomis
07392ed460
feat(developer): update tests and reader for transforms 🙀
...
- not working yet, but 'update' some XML
for #7377
2023-04-27 12:21:03 -05:00
Marc Durdin
9152ab52e9
Merge branch 'master' into feat/core-8435-repertoire-test-epic-ldml
2023-04-10 15:15:00 +10:00
Steven R. Loomis
6bc70d832d
Update core/src/kmx/kmx_plus.h
...
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2023-04-05 13:28:18 -05:00
Steven R. Loomis
82944c447b
Update core/src/kmx/kmx_plus.h
...
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2023-04-05 13:27:57 -05:00
Steven R. Loomis
ab614677ce
feat(core): ldml repertoire test 🙀
...
- wip: simple lookup for an exact key
For: #8435
2023-03-16 15:49:00 -05:00
Steven R. Loomis
ec68f6ce0f
feat(core): ldml repertoire test 🙀
...
- wip: right now passes, because it emits the repertoire text as it goes
For: #8435
2023-03-16 14:28:51 -05:00
Marc Durdin
d1c8061b5f
chore: Merge branch 'feature-kmcompx' into chore/merge-master-into-kmcompx
2023-03-16 12:29:17 +07:00
Steven R. Loomis
f7499238a2
fix(core): ldml more TODO-LDML fixes 🙀
...
- drop some TODO-LDMLs, document others.
For: #8069
2023-03-14 18:54:28 -05:00
Marc Durdin
ef80f0f6b5
chore(developer): shared meson config for kmcmplib
2023-03-09 12:14:15 +07:00
Marc Durdin
691dc8e618
chore(core): split flags into standard.meson.build
2023-03-09 11:34:54 +07:00
Eberhard Beilharz
0c2c4f4206
Merge pull request #8375 from keymanapp/chore/core/linuxstatic
...
chore(core): Create both dynamic and static libs on Linux
2023-03-07 13:21:11 +01:00
Eberhard Beilharz
03bb0c5fcc
chore(core): Create both dynamic and static libs on Linux
2023-03-06 16:51:19 +01:00
Steven R. Loomis
812fd1713a
spec(core): ldml tests for either shift/ctrl/alt 🙀
...
- lookup needs to handle either/neither/both cases for alt and ctrl
- and a bug in the test runner: would 'pass' if failed on exactly line 256 (0x100 & 0xFF == 0)
#7533
2023-03-02 17:13:47 -06:00
Steven R. Loomis
f7b2530f33
spec(core): ldml update spec for either shift/ctrl/alt 🙀
...
- match Keyman constanats
#7533
2023-02-25 08:20:12 -06:00
Steven R. Loomis
77a76a2f54
fix(developer): ldml TODO-LDML cleanup 🙀
...
- add check for missing flicks
- remove a tray #include
chore(common): ldml TODO-LDML cleanup 🙀 #8069
2023-02-24 18:55:28 -06:00
Steven R. Loomis
e1e5eea469
feat(core): ldml rename key2 to keys 🙀
...
- So in summary, since before #7532 basically keys was restructured, and the old 'keys' was moved into 'keys.kmap'.
#8069
2023-02-20 17:40:34 -06:00
Steven R. Loomis
4689c04533
feat(core): ldml json test executor 🙀
...
- can now use the new key2.kmap table to lookup keys. Basic test passes
#7535
2023-02-16 13:04:33 -06:00
Steven R. Loomis
47b222e8a8
feat(core): ldml json test executor 🙀
...
- intermediate, does not process context or actions yet
- embedded (non-json) tests pass
- utf-8 parsing
- bring in kmx+ into ldml_test_source for parsing, but key2 is not ready eyt
- temporary scaffolding mapping key ids to vkeys
- build fixes
- getting closer.
2023-02-16 12:33:32 -06:00
Steven R. Loomis
8ea87aa828
feat(common): ldml: merge keys into key2 🙀
2023-02-16 12:29:19 -06:00
Steven R. Loomis
bf15661fd0
spec(core): ldml: merge keys into key2 🙀
...
- rename keys to key2.kmap (vkey+mod -> key)
- drop key2.keys.vkey
#7042
2023-02-16 12:02:08 -06:00
Steven R. Loomis
cace5cf596
feat(core): ldml C++ helper for list / key2 🙀
...
For: #7985
2023-02-15 19:00:54 -06:00
Steven R. Loomis
4a2bb6b3da
Review comments
2023-02-15 09:49:54 -06:00
Steven R. Loomis
e5620e83f1
feat(core): ldml C++ validate list / key2 🙀
...
- need helper objs still
For: #7985
2023-02-14 09:23:51 -06:00
Steven R. Loomis
aa0da57b70
fix(core): fix double precision err
2023-02-14 09:23:03 -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
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
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
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
Eberhard Beilharz
1c602b8e6b
chore(linux): Build static library only on Linux
...
The static library is currently only needed for the ibus-keyman
tests, so we only build it on Linux. It can't build with
emscripten, and on Windows it'd need some additional work.
2023-02-01 08:38:33 +01:00
Eberhard Beilharz
d39ba178fa
chore(linux): Fix wasm build
...
emscripten doesn't support static libraries, so we explicitly
build a static library unless we're building for wasm.
2023-01-31 20:59:28 +01:00
Eberhard Beilharz
c176ebc6af
chore(linux): Address code review comments
2023-01-31 17:38:29 +01:00
Eberhard Beilharz
eb076c08c8
chore(linux): Build with meson instead of autotools
...
This change introduces meson for building ibus-keyman instead of
autotools.
Closes #5981 .
2023-01-30 16:32:38 +01:00
Steven R. Loomis
1d7e0d1922
Merge pull request #8030 from keymanapp/spec/core/7986-hardware-enum-epic-ldml
...
spec(core): ldml: make hardware be an enum 🙀
2023-01-26 14:05:26 -06:00
Steven R. Loomis
d7ce2191bf
feat(core): ldml: make hardware be an enum 🙀
...
For: #7986
2023-01-19 12:24:47 -06:00
Steven R. Loomis
5cf1a1fad3
spec(core): ldml: make hardware be an enum 🙀
...
- drop layers.flags as unneeded
- defer to UTS35 for hardware definitions
For: #7986
2023-01-18 18:20:08 -06:00
Steven R. Loomis
8a579a1650
Merge pull request #7992 from keymanapp/feat/core/7984-cxx-assert-on-invalid-epic-ldml
...
fix(core): ldml: add asserts to C++ 🙀
2023-01-18 08:58:34 -06:00
Steven R. Loomis
e58669008a
feat(core): ldml: Drop all padding: common,core 🙀
...
- not even 32 bit padding
For: #7987
2023-01-16 19:22:34 -06:00
Steven R. Loomis
c0541c40c7
spec(core): ldml: make hardware be an enum 🙀
...
For: #7986
2023-01-16 19:07:05 -06:00
sgschantz
22f8ca1466
replace sprintf with snprintf
2023-01-16 13:51:23 +07:00
Steven R. Loomis
cbb5af2ae7
feat(core): ldml: Drop padding: common,core 🙀
...
- also add some checking in the builder
- add a Constants.str_section_id() for debugging
- update basic.txt
For: #7987
2023-01-09 16:35:47 -06:00
Steven R. Loomis
fbbed6d970
spec(core): ldml: Drop padding 🙀
...
- only guarantee is 32 bit alignment
- also note a cross ref TODO for #7533
For: #7987
2023-01-09 15:08:11 -06:00
Steven R. Loomis
57d4dfea75
Apply suggestions from code review
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-01-07 22:46:41 -06:00
Steven R. Loomis
d552a46104
Merge pull request #7630 from keymanapp/feat/core/7532-layr-epic-ldml
2023-01-06 17:40:06 -06:00
Steven R. Loomis
2f44780e87
fix(core): ldml: add asserts to C++ 🙀
...
- found a logic bug in kmx_plus.cpp
Fixes #7984
2023-01-06 16:54:24 -06:00
Steven R. Loomis
564f98cc30
Apply suggestions from code review
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-01-06 11:46:17 -06:00
Steven R. Loomis
efef796d75
feat(core): ldml: fix C++ layr helper 🙀
...
- reenable layr/key2/list in c++
- minor update to layr helper, missed ptr assignment
For feat(developer): ldml: include all LDML data in kmx+ 🙀 #7532
2022-12-22 13:43:53 -06:00
Steven R. Loomis
05656ac499
feat(core): ldml: fix off-by-one on section count 🙀
...
- yes, sect was counting itself. Too much automation!
- disable layr/key2/list loading in C++ for now
For feat(developer): ldml: include all LDML data in kmx+ 🙀 #7532
2022-12-22 13:12:08 -06:00