Steven R. Loomis
f140093088
Apply suggestions from code review
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-11-02 13:09:35 -05:00
Steven R. Loomis
c191fc7cc7
feat(core): ldml: updates to C7043.1 spec 🙀
...
merge layr into lyrs
2022-10-28 18:28:18 -05:00
Steven R. Loomis
87dc1f79bb
feat(core): ldml: updates to C7043.1 spec 🙀
...
- add layers, rows, display
- draft status
2022-10-28 18:28:18 -05:00
Marc Durdin
920d22795c
chore(core): additional cleanup
2022-10-21 15:33:09 +11:00
Marc Durdin
ae68f059b8
chore(core): move DebugLog into parent folder
...
Fixes #7447 .
2022-10-21 15:26:41 +11:00
Steven R. Loomis
66a5cdb1f9
chore(developer): ldml: update tools and data for keyboard-preview 🙀
...
- update tooling in common and kmc
- update spec
- update test files
2022-10-18 11:32:41 -05:00
Steven R. Loomis
7e5c9ec675
fix(developer): offset of 0th elem str must be 0000 🙀
...
- update test fixture
- update kmx_plus.cpp to require this
Fix: 7404
2022-10-14 15:00:49 -05:00
Steven R. Loomis
9cb5a03a0d
Merge pull request #7454 from keymanapp/fix/core/7418-utf32-suggestions
...
fix(core): xstring/utf32 review feedback
2022-10-14 00:00:45 -05:00
Steven R. Loomis
67cac5f147
Merge pull request #7436 from keymanapp/chore/core/refactor-vkeys-epic-ldml
...
chore(core): ldml: split out vkey processing 🙀
2022-10-13 17:13:07 -05:00
Steven R. Loomis
fc554c4901
fix(core): xstring/utf32 review feedback
...
For: #7418
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2022-10-13 17:05:39 -05:00
Steven R. Loomis
45bc101e77
fix(core): ldml: update per review comments 🙀
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-10-13 16:34:36 -05:00
Steven R. Loomis
ab0f2c1b24
feat(core): ldml: basic transforms, utf32 fixes 🙀
...
for #7234
2022-10-12 19:31:05 -05:00
Steven R. Loomis
8127ec60d2
chore(core): ldml: transforms: documentation 🙀
...
- update per review comments
for #7234
2022-10-12 19:29:38 -05:00
Steven R. Loomis
5a6389deb8
feat(core): ldml: basic transforms, again 🙀
...
- new test file for transforms
- new class, ldml_transforms
for #7234
2022-10-12 19:29:37 -05:00
Steven R. Loomis
8a6b4a7fd4
feat(core): ldml: Use new UTF-16 to UTF-32 function 🙀
...
- also a test case with a 🙀 key on the tiny keyboard
For #7418
2022-10-12 19:26:42 -05:00
Steven R. Loomis
20032d02b7
feat(core): kmx_xstring: New UTF-16 to UTF-32 function 🙀
...
- plus test
For #7418
2022-10-12 19:23:58 -05:00
Steven R. Loomis
5970a46f87
fix(core): ldml: ldml_vkeys: fix for namespace 🙀
...
for #7234
2022-10-12 17:30:49 -05:00
Steven R. Loomis
e64177e17f
chore(core): ldml: ldml_vkeys: per review comments 🙀
...
- update parameter names for consistency
for #7234
2022-10-12 17:27:25 -05:00
Steven R. Loomis
eba0d12123
chore(core): refactor ldml_processor 🙀
...
- split out vkeys
for #7234
2022-10-12 17:21:32 -05:00
Steven R. Loomis
8a3c8af7a1
fix(core): ldml: fix incorrect use of Debug_UnicodeString 🙀
...
- update API docs for Debug_UnicodeString
for #7234
2022-10-12 17:01:46 -05:00
Steven R. Loomis
a63ca4377f
fix(core): improve check and output
2022-10-12 15:57:12 -05:00
Steven R. Loomis
30a100aa8a
fix(core): ldml: cleanup per review comments 🙀
...
- update DebugLog macro to use scoped functions
for #7234
2022-10-12 15:21:13 -05:00
Steven R. Loomis
ced4ed9099
fix(core): ldml: use DebugLog for debug 🙀
...
for #7234
2022-10-12 15:05:03 -05:00
Steven R. Loomis
35799e2306
feat(core): kmx_plus: add accessors for elem 🙀
...
- other refactor and cleanup in kmx_plus
for #7234
2022-10-11 15:43:44 -05:00
Steven R. Loomis
d56f6557fb
chore(core): deprecate checksum in 16.0 🙀
...
- do not generate unless version<16.0
- never check checksum
Fixes : #7220
2022-09-16 14:24:01 -05:00
Steven R. Loomis
efd4c83490
chore(core): ignore checksum in 16.0 🙀
...
- mark as deprecated
Fixes : #7220
2022-09-16 14:24:01 -05:00
Steven R. Loomis
3ceea19218
fix(core): validate kmxplus files 🙀
...
- split validation out into a separate kmx_file_validator.hpp
- kmx_file.h should remain C-only usable
Fixes : #7220
2022-09-14 16:32:18 -05:00
Steven R. Loomis
be2307cc25
chore(core): ldml correct for rebase hiccup 🙀
2022-09-13 16:25:13 -05:00
Steven R. Loomis
ea417c9f72
fix(core): VerifyKeyboard() on kmxplus files 🙀
...
- move VerifyKeyboard into COMP_KEYBOARD::VerifyKeyboard
- change call sites in kmx_file.h
For: #7220
2022-09-12 17:01:45 -05:00
Marc Durdin
c820fbc0e6
Merge pull request #7264 from keymanapp/chore/core/kmx-file-verification-baby-steps
...
chore(core): verify StartGroup in kmx load 🙀
2022-09-13 07:46:02 +10:00
Marc Durdin
3e6d9356c3
Merge pull request #7255 from keymanapp/chore/7222-optional-checksum
...
chore: make checksum optional 🙀
2022-09-13 06:30:04 +10:00
Marc Durdin
74a6c65710
Merge branch 'feature-ldml' into chore/merge-master-into-feature-ldml
2022-09-12 15:24:19 +10:00
Marc Durdin
ca098628a2
chore(core): verify StartGroup in kmx load
...
This is the first baby step in good verification of a .kmx file. A place
to add more tests.
@keymanapp-test-bot skip
2022-09-12 10:31:40 +10:00
Marc Durdin
89ccc393ab
chore: make checksum optional
...
Fixes #7222 .
2022-09-09 17:23:07 +10:00
Marc Durdin
b6c4e21c1d
chore(developer): remove name from meta section
...
Fixes #7214 .
2022-09-09 08:57:52 +10:00
Steven R. Loomis
90131728e8
chore(core): improve xstring macros 🙀
...
- move Utf32CharToUtf16 to inline
- remove Is_SMP and call sites, use Utf32CharToUtf16 instead.
For: #7134
2022-09-08 12:29:04 -05:00
Steven R. Loomis
82443a610d
fix(core): ldml Update core/src/kmx/kmx_plus.h
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-09-08 12:04:04 -05:00
Steven R. Loomis
029a2737bf
fix(core): ldml: improve utf-32 handling++ 🙀
...
- review comments
- kmx_xstring: add and document macros, add Utf32CharToUtf16
- unit tests for kmx_xstring macros
Fixes : #7134
2022-09-08 11:45:23 -05:00
Steven R. Loomis
7a71ed84cc
fix(core): ldml: improve utf-32 handling 🙀
...
- remove hacky utf-32 processing
- add utf-32 test case to test_kmx_plus.cpp
- change kmx_plus to return std::u16string
- kmx_xstring: add Uni_IsBMP() macro
Fixes : #7134
2022-09-07 18:08:26 -05:00
Marc Durdin
ec5a83a3fa
Merge pull request #7204 from keymanapp/feat/core/ldml-transform-table-specs-and-constants
...
feat(core): ldml keyboard transform elements 🙀
2022-09-07 11:28:42 +10:00
Marc Durdin
2e7aef39e7
Merge pull request #7197 from keymanapp/chore/core/section-order
...
chore(core): order sections according to binary format 🙀
2022-09-07 11:27:54 +10:00
Marc Durdin
5e1d898527
Merge pull request #7196 from keymanapp/feat/core/ldml-name-section
...
feat(core): add 'name' section 🙀
2022-09-07 11:27:46 +10:00
Marc Durdin
f1b2be168f
Merge pull request #7193 from keymanapp/chore/core/kmxplus-zero-length-string
...
chore(core): define zero length string vs null string for kmxplus 🙀
2022-09-07 11:27:30 +10:00
Marc Durdin
8678a0d35b
chore(core): mark unused parameters
2022-09-07 10:36:35 +10:00
Marc Durdin
5104914672
feat(core): add km_kbp_event API endpoint
...
Adds infrastructure required to support caps lock control on keyboard
activation per #5822 .
Keyboardprocessor implementation is currently a stub, and engines will
need corresponding updates to support the new API.
2022-09-07 10:24:01 +10:00
Marc Durdin
690290bdfe
chore(core): add comment for KMXPLUS_STR
...
Co-authored-by: Steven R. Loomis <srl295@gmail.com>
2022-09-07 08:14:23 +10:00
Marc Durdin
9f5f8e976e
feat(core): ldml keyboard transform elements
...
Adds definitions for LDML keyboard transform elements `transforms`,
`backspaces`, and `reorders`, and the binary format sections `bksp`,
`elem`, `finl`, `ordr`, and `tran`.
Minimally updates the compiler so that it will build, but no other
changes to the compiler.
Compiler and Typescript updates to support building these sections will
come in the next PR.
2022-09-05 13:11:51 +10:00
Marc Durdin
ea6bd8f09f
chore(core): order sections according to binary format
...
Just reorders all work around the various sections to match the binary
format order -- that is, 'sect' first, then all other sections
alphabetically.
This also means the compiler now emits the sections in the expected
order.
No other changes to functionality.
2022-09-04 06:10:34 +10:00
Marc Durdin
b17805df3a
feat(core): add 'name' section
...
Updates compiler, headers and documentation for the 'name' section,
which will always be present as the LDML keyboard spec requires at least
one name in the `<names>` element.
2022-09-04 05:45:43 +10:00
Marc Durdin
a274a44979
chore(core): wrap text on C7043_ldml.md
2022-09-03 06:12:36 +10:00