Commit graph

902 commits

Author SHA1 Message Date
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
Marc Durdin
b5bddc025f chore(core): rename json.hpp to jsonpp.hpp
The name json.hpp conflicts with the JSON for Modern C++ library that
is also used by Developer. Renames json.hpp and json.cpp to jsonpp.hpp
and jsonpp.cpp aka "JSON Pretty Printer".
2022-07-26 13:06:16 +10:00
Marc Durdin
767927bf16 chore(common): use /usr/bin/env bash
Fixes up scripts (except under /linux) to use `#!/usr/bin/env bash`
instead of `#!/bin/bash` or `#!/bin/sh` so that we don't end up with
the ancient version of bash supplied with macOS.

This became urgent with this PR, because of bash-4.xisms in
build-utils.sh, for example on line 572:

```
if [[ -v _builder_params[$e] ]]; then
```
2022-07-25 14:59:37 +10:00
Eberhard Beilharz
57c736f17a
fix(common): Fix delete
GCC 12 will output an error if the wrong `delete` is used.

Fixes #6930
2022-07-18 15:38:33 +02:00
Marc Durdin
4f36c3c2df chore(developer): Merge branch 'master' into chore/developer/js-to-lmc 2022-06-25 05:48:57 +10:00
Marc Durdin
7895cf2382 chore(windows): move utilicon.pas to common 2022-06-22 14:03:19 +10:00
Eberhard Beilharz
f2de89bcc2
chore(common): Merge branch 'master' into chore/common/move-common-core-desktop-to-core 2022-06-15 09:00:32 +02:00
Marc Durdin
d5aa61fdc0 chore(common): Merge branch 'chore/web/keyman-version-for-developer' into chore/common/move-common-core-desktop-to-core 2022-05-30 09:38:27 +10:00
Marc Durdin
0062afe612 chore(core): chmod +x 2022-05-18 07:22:59 +10:00