Commit graph

634 commits

Author SHA1 Message Date
Steven R. Loomis
9dbf70c94e fix(core): ldml more updates to normalization per review 🙀
- verify marker string as it's popped off
- add a missing pragma to debuglog.h
- move UErrorCode out of ldml_processor, change normalization functions to return true on success

For: #9468
2023-10-18 17:47:56 -05:00
Eberhard Beilharz
b5c6f31b05
chore(linux): Rename KBP to CORE 2023-10-18 15:48:21 +02:00
Eberhard Beilharz
141d44a439
Merge pull request #9775 from keymanapp/chore/linux/9733_RenameKbp
chore(linux): Rename `kbp_state_get_intermediate_context` to `km_core…` 〽️
2023-10-17 18:04:32 +02:00
Marc Durdin
af3ba1f07d
Merge pull request #9258 from keymanapp/fix/core-drop-newline-in-debug
fix(core): don't use double newlines in debuglog
2023-10-17 12:33:56 +11:00
Steven R. Loomis
93e1c18af2 fix(core): ldml update to normalization per review 🙀
For: #9468

Co-authored-by: Marc Durdin <marc@durdin.net>
2023-10-16 20:22:52 -05:00
Steven R. Loomis
9ee183c0ee fix(core): ldml update to normalization per review 🙀
- simplify normalize_nfc and normalize_nfd functions

For: #9468
2023-10-16 17:21:39 -05:00
Eberhard Beilharz
965b8e5ecc
chore(linux): Rename kbp_state_get_intermediate_context to km_core_...
A previous rename missed this.
2023-10-16 19:39:18 +02:00
Steven R. Loomis
a577bd2f53 feat(core): ldml normalization 🙀
- more progress in the normalization pipeline. Trying to keep it from leaking.
- normalize output to NFC.
- normalize json test data to NFC (both context and expected).
- we do NOT try to normalize the 'embedded' strings currently.
- yet more test data fixes (turns out u+00e0 ≠ u+00e8)

For: #9468
2023-10-12 16:57:37 -05:00
Steven R. Loomis
e64f59613a feat(core): ldml normalization 🙀
- split out 'process_key_string'

For: #9468
2023-10-12 10:10:51 -05:00
Steven R. Loomis
daa0523dde feat(core): ldml normalization 🙀
- 0 steps forward, 4294967294 steps back

For: #9468
2023-10-10 19:01:14 -05:00
Marc Durdin
db76e2541d chore: rename KM_KBP_ to KM_CORE_ 2023-10-09 14:53:22 +07:00
Marc Durdin
5a3bf77bc5 chore: rename km_kbp_ filenames to km_core_ 2023-10-09 14:53:20 +07:00
Marc Durdin
ba5f18defd chore: rename km_kbp_ to km_core_ 2023-10-09 14:53:13 +07:00
Marc Durdin
4e5cbc3b96 chore: fix typo 2023-10-09 14:51:51 +07:00
Marc Durdin
906a0a2ed7 chore: fix typo 2023-10-09 14:41:01 +07:00
Marc Durdin
4ef18f5e29 chore(core): rename keyboardprocessor.h to keyman_core_api.h
Fixes #9721.

Also tweaks some documentation references to keyboardprocessor, but does
not touch those relating to debian/control.
2023-10-09 14:21:01 +07:00
Steven R. Loomis
2472a941cf feat(core): match any marker 🙀
- add a regex form that matches any marker

For: #9119
2023-10-04 18:34:20 -05:00
Steven R. Loomis
17eba2d237 feat(developer): scancode and forms 🙀
- spec: 'hardware' is no longer an enum but a str.
Ripple effects here.
- custom scancodes and layouts are, interestingly, supported. But it's a warning.
- tests for bad scancodes.

Fixes: #9403
2023-09-30 22:06:39 -05:00
Steven R. Loomis
bdef1c48d3 fix(common): update keyman for removal of vkeys 🙀
dropped in upstream CLDR-17093

See #7135
2023-09-28 13:03:44 -05:00
Steven R. Loomis
ab29171b56 fix(core): regex set mapping support 🙀
- fix alignment

#9121
2023-08-24 14:09:31 -05:00
Steven R. Loomis
16beb4692b feat(core): regex set mapping support 🙀
- remove a stray #include

#9121
2023-08-23 18:17:53 -05:00
Steven R. Loomis
09772bb18d feat(core): regex set mapping support 🙀
- passes
- added some utilities on transform_element
- added more validation of transforms
- added tests of utility functions

#9121
2023-08-23 18:13:19 -05:00
Steven R. Loomis
935dec4304 feat(core): regex set mapping support 🙀
- restructured some things, loading and such seems to be in good shape

#9121
2023-08-23 15:03:44 -05:00
Steven R. Loomis
b9bf313129 feat(core): regex set mapping support 🙀
- good failing test
2023-08-22 20:10:42 -05:00
Steven R. Loomis
b6855e121f feat(core): ldml: support <display id=...> in the 'disp' section 🙀
- "recent" addition to CLDR DTD

Fixes: #8717
2023-08-18 17:02:35 -05:00
Steven R. Loomis
e5bb22aedd
Merge branch 'master' into feat/core/9121-regex-epic-ldml 2023-08-14 11:17:19 -05:00
Steven R. Loomis
7a312520fb feat(core): regex cleanup 🙀
- restructure to not allocate the Matcher twice, save a little processing

For: #9121
2023-08-11 16:32:09 -05:00
Steven R. Loomis
ad03a5cdcf chore(core): regex cleanup 🙀
- more comments

For: #9121
2023-08-11 15:32:57 -05:00
Steven R. Loomis
548acaaf02
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-08-11 15:29:17 -05:00
Steven R. Loomis
9f033278d4 feat(core): marker validation 🙀
- validate marker number when going in or out of the context

#9119
2023-08-11 15:09:54 -05:00
Steven R. Loomis
36c5b9d55b
Merge branch 'master' into feat/core/9119-marker-avoid-surrogate-cliff-epic-ldml 2023-08-11 15:02:17 -05:00
Steven R. Loomis
b572f60c9e feat(core): limit max marker to 0xD7FF 🙀
- updates per review, off by one in max count
- updated the spec
2023-08-11 15:01:51 -05:00
Steven R. Loomis
75fcc5f3fe chore(core): regex cleanup 🙀
- cache the icu::RegexPattern
- rename USet to avoid a conflict with the real one!

For: #9121
2023-08-10 18:35:06 -05:00
Steven R. Loomis
4fc15c9175
Merge branch 'feat/core/9119-marker-core-epic-ldml' into feat/core/9121-regex-epic-ldml 2023-08-10 17:28:57 -05:00
Steven R. Loomis
2bf22c440d feat(core): marker fixes per review comments 🙀
- simplify and improve context processing

For: #9119

Co-authored-by: rc-swag <58423624+rc-swag@users.noreply.github.com>
2023-08-10 13:30:29 -05:00
Steven R. Loomis
66ee68d2b3
Apply suggestions from code review
Co-authored-by: rc-swag <58423624+rc-swag@users.noreply.github.com>
2023-08-10 09:36:16 -05:00
Steven R. Loomis
aecb7c5f5e feat(core): regex apply-side 🙀
- apply side is working using replaceFirst()
- mapTo is a not-yet, that will be a special case

For: #9121
2023-08-09 18:08:25 -05:00
Steven R. Loomis
1aba900b01 feat(core): regex match-side 🙀
- match side is working
- lots of string 'schlepping!

For: #9121
2023-08-09 17:45:56 -05:00
Steven R. Loomis
742373b673 feat(core): u32string_to_u16string 🙀
For: #9121
2023-08-09 16:19:38 -05:00
Steven R. Loomis
c23303ee23
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-08-09 12:52:28 -05:00
Steven R. Loomis
f0c81687f6 feat(core): marker fixes per review comments 🙀
- move prepend_marker() to inline
- clear the string in context_to_string()

For: #9119
2023-08-09 12:51:35 -05:00
Steven R. Loomis
f21bd8212d
Merge branch 'master' into feat/core/9119-marker-core-epic-ldml 2023-08-09 11:03:53 -05:00
rc-swag
7e8e7be86f
Merge pull request #9353 from keymanapp/feat/windows/5822/notify-core-on-kbd-activation
feat(windows): Use Keyboard Activated event API call to turn off caps lock (if required) 🚏
2023-08-09 14:12:00 +10:00
rc-swag
e79cfc90d2
feat(windows): review comment
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-08-09 12:59:59 +10:00
Steven R. Loomis
5c38b18395 feat(core): update icu dependencies 🙀
- enable icui18n
- .. without breaking anything else in ldml tests

For: #9121
2023-08-08 18:45:03 -05:00
Steven R. Loomis
93b1771570
Merge branch 'master' into feat/core/9119-marker-core-epic-ldml 2023-08-07 16:40:07 -05:00
rc-swag
3bcd919922
feat(windows): review suggestions
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-08-07 12:08:09 +10:00
Marc Durdin
49d471ba17
Merge pull request #8954 from keymanapp/feature-kmc-kmw
epic: kmc-kmw KeymanWeb compiler in Typescript 🗜
2023-08-07 11:37:39 +10:00
Steven R. Loomis
290bcede2f feat(core): improve documentation on transform/marker processing loop 🙀
For: #9119
2023-08-04 16:12:02 -05:00
Steven R. Loomis
1480e4d934 feat(core): improve emit_text() marker processing loop 🙀
For: #9119
2023-08-04 16:03:13 -05:00