Commit graph

59 commits

Author SHA1 Message Date
Marc Durdin
8ebae9515e
Revert "feat(core): turn @keymanapp/ldml-keyboard-constants into a module 🙀" 2022-08-24 14:26:44 +10:00
Marc Durdin
5e296c98af feat(core): turn @keymanapp/ldml-keyboard-constants into a module
Splits the building of keyboardprocessor_ldml.h into a separate
tsconfig.build.json, and designates keyboardprocessor_ldml.ts as a new
Typescript/Node module @keymanapp/ldml-keyboard-constants.

Includes an example usage in the (currently unused) kmx-plus.ts.
2022-08-24 14:10:20 +10:00
Marc Durdin
e6ff47f2b3 chore: Merge branch 'master' into feature-ldml 2022-08-24 04:21:21 +10:00
Steven R. Loomis
f5db1749b4 style(core): ldml: review comments
#5015

- add copyright notices
2022-08-22 17:13:45 -05:00
Eberhard Beilharz
b03e7ca32f
chore(core): Remove obsolete python keyboardprocessor
This seems to be not used anywhere and has diverged from the API.
2022-08-22 17:46:27 +02:00
Steven R. Loomis
a4080d2b7a feat(core): ldml: cleanup of header files
- quell debug messages unless KMXPLUS_DEBUG=1
- don't read the file twice

#5015
2022-08-19 17:42:09 -05:00
Steven R. Loomis
747dfe8c0d feat(core): ldml: header cleanup 2022-08-18 14:33:53 -05:00
Steven R. Loomis
a333eade22 feat(core): ldml: tiny passes tests
- removed null from build, invalid
2022-08-18 14:27:17 -05:00
Steven R. Loomis
70639c585b feat(core): more kmx_plus_dump functions
- also update sample data again
2022-08-17 18:13:17 -05:00
Steven R. Loomis
5926dfe5fe feat(core): more kmx_plus_dump functions
- also update sample data
2022-08-17 17:43:14 -05:00
Steven R. Loomis
590ac8f8f6 feat(core): build out ldml structures
- beginning of str handling
2022-08-17 16:25:41 -05:00
Steven R. Loomis
95b4469ea8 feat(core): build out ldml structures
- checkin spec to repo
- new header: kmx_plus.h with data access structs and functions
- static asserts to validate header sizes
- early validation of data
- internal dump of kmx+ data
2022-08-17 15:53:53 -05:00
Steven R. Loomis
615eec89ca feat(core): augment unit tests for ldml
- add 001_tiny to the build, annotate with expected run
2022-08-17 13:31:09 -05:00
Steven R. Loomis
5e203f8eb5 Update core/src/kmx/kmx_file.h
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-08-16 10:24:53 -05:00
Steven R. Loomis
9e44a7f9bc feat(core): Sample LDML data updates, kmx_file #5015
Review comments:
- moved KMXPLUSINFO into separate struct
- created resource/standards-data/ldml-keyboards for CLDR data
- corrected Khmer err
2022-08-16 10:24:53 -05:00
Steven R. Loomis
1ccc43df04 Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-08-16 10:24:53 -05:00
Steven R. Loomis
189124ba69 feat(core): update COMP_KEYBOARD_EX #5015
- uberstruct
2022-08-16 10:24:53 -05:00
Steven R. Loomis
29d4cc0354 test(core): add sample tiny file
- also snapshot dtd
2022-08-16 10:24:53 -05:00
Marc Durdin
5635372eb9
Merge pull request #7062 from keymanapp/refactor/core/move-kmx_file.h-to-common
chore(core): refactor kmx_file.h to common 🚑
2022-08-15 02:11:19 -05:00
Steven R. Loomis
e8dff5cf4e feat(core): add event_flags to process_event #7046
- use a constant, KM_KBP_EVENT_FLAG_DEFAULT for 0
- update pascal and python
- update linux and windows
2022-08-12 09:58:58 -05:00
Steven R. Loomis
21a783a6ca feat(core): add event_flags to process_event
- uint16_t
- defined km_kbp_event_flags to define the bitfield
- bitfield has value KM_KBP_EVENT_FLAG_TOUCH for touch events
- ignored everywhere, currently
2022-08-11 16:14:57 -05:00
Steven R. Loomis
f9dc68b2e5 docs(core): cleanup in keyboardprocessor.h
- fixes to api doc
2022-08-11 16:12:51 -05:00
Marc Durdin
8e36b33f21 chore(common): check for redefinition of defines 2022-08-11 16:29:02 +02:00
Marc Durdin
515bda7692 chore(linux): ensure char16_t and namespace 2022-08-11 16:13:33 +02:00
Marc Durdin
dedb06e7cc chore(common): refactor shared types into km_types.h 2022-08-11 11:36:09 +02:00
Marc Durdin
bb24d59b5e chore(core): remove duplicate types 2022-08-11 11:34:59 +02:00
Marc Durdin
422e7227a6 chore(core): move kmx_file.h to common 2022-08-11 11:34:09 +02:00
Steven R. Loomis
c61f113df3
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-08-09 14:16:09 -05:00
Steven R. Loomis
1f4509f29b feat(core): constant generator between core and developer
- resolved review comments
2022-08-09 14:14:20 -05:00
Steven R. Loomis
ba5610b4fa fixup! feat(core): constant generator between core and developer 2022-08-09 12:27:18 -05:00
Steven R. Loomis
d414be8313 feat(core): constant generator between core and developer
- change to manual regen of the .h file
2022-08-09 12:12:52 -05:00
Steven R. Loomis
ea4c2c07c2 feat(core): constant generator between core and developer
- seems to build every time, but works
2022-08-08 18:11:58 -05:00
Steven R. Loomis
de76cbcc78 feat(core): constant generator between core and developer
- update build
- add more constants from binary format
2022-08-08 17:20:10 -05:00
Steven R. Loomis
363b515368 feat(core): constant generator between core and developer
- merge tsconfig projects…for now
2022-08-08 16:22:34 -05:00
Steven R. Loomis
e4df274864 feat(core): constant generator between core and developer
- one attempt
2022-08-08 15:18:32 -05:00
Steven R. Loomis
09ea9e52a0 feat(core): constant generator between core and developer 2022-08-08 14:49:43 -05:00
Marc Durdin
c2b89554e3 chore: address review comments 2022-08-08 11:48:51 -05:00
Marc Durdin
6f61b1d8da chore(common): rename KF_KMXPLUS flag 2022-08-07 08:03:49 -05:00
Marc Durdin
e753ca298f chore(core): add wireframe COMP_KEYBOARD_EX 2022-08-07 08:03:29 -05:00
Marc Durdin
5cb6664a46 chore(core): tag unused parameters 2022-08-07 08:03:09 -05:00
Marc Durdin
3ea7ad7248 chore(core): cleanup ldml file sniff 2022-08-07 08:03:04 -05:00
Marc Durdin
7ff9e79e01 feat(core): ldml unit tests and stub actions
* Enables identification of KMXPlus files in processor factory
* Adds a stub action to generate an 'a' output character
* Adds a passing null_keyboard unit test for a hypothetical ldml
  keyboard
2022-08-07 08:02:50 -05:00
Marc Durdin
0ce519a906 feat(common): LDML keyboard_processor infrastructure
Establishes baseline class and headers, and stub for loading LDML
keyboards embedded in kmxplus files.
2022-08-07 08:02:42 -05:00
Marc Durdin
1c9c652e8d chore(common): add KF_KMXPLUS dwFlag value
Part of #7045.

Indicates that the .kmx file has additional header structure immediately
following the COMP_KEYBOARD header. Used by KMXPlus file format for
supporting LDML keyboards. Requires VERSION_160 or higher in keyboard
file.
2022-08-07 08:01:08 -05:00
Marc Durdin
339744c7a1 chore(core): add VERSION_160 to kmx_file.h 2022-08-07 08:00:21 -05:00
Marc Durdin
0a22acd0e4
Merge pull request #7018 from keymanapp/chore/common/builder-tweaks
chore(common): build-utils.sh minor tweaks
2022-08-03 20:19:42 +10:00
Marc Durdin
e0d7fc73fc chore(core): tweak test path for native build unit tests 2022-08-01 14:47:44 +10:00
Marc Durdin
f762776d5c chore(core): get wasm core building again
Updates search for emscripten if not on path, and fixes up unit test
infrastructure for wasm builds for new tests.
2022-08-01 14:15:52 +10:00
Marc Durdin
45b25adecd chore(common): use standard VERSION and TIER
build-utils.sh is responsible for filling these variables.

Note: getversion.sh and getversion.bat are still currently used by
meson. gettier is no longer used with these changes.
2022-07-31 07:15:11 +10:00
Marc Durdin
fd7401fb15 chore(core): reset build.sh to use standard build-utils.sh include 2022-07-30 06:02:07 +10:00