Steven R. Loomis
a744afc34f
feat(core): remove ICU from core under wasm
...
Fixes : #9467
2024-06-13 14:20:58 -05:00
Steven R. Loomis
55a025c767
refactor(core): devolve regex to js for wasm
...
- new module, core/src/util_regex.hpp
- no wasm implementationyet
Fixes : #9467
2024-06-05 16:53:43 -05:00
Steven R. Loomis
a80a0a7dcb
feat(core): move more normalization logic into JS
...
- add a normalize_nfd() which takes a single codepoint
- temporarily keep ICU in actions_normalize.cpp and ldml_transforms.cpp
- expand wasm opts in unit tests
2024-05-24 10:42:57 -05:00
Steven R. Loomis
d8b5c25954
chore(core): refactor to move most normalization calls into util_normalize.cpp
...
- fold ldml_utils.hpp into core_icu.h
- refactor to use km::core::util::normalize_nfd() functions where simple to do so
For #9467
2024-05-23 14:47:38 -05:00
Steven R. Loomis
fa1fd75157
fix(core): ldml fix for multiple marker deletion
...
- current code only deletes a single marker and falls through
- update the ldml test code, get rid of 'expected character' backspace logic (now that we have context object)
- update test cases
2024-04-25 16:59:20 -05:00
Steven R. Loomis
dc965f4e1a
fix(core): ldml backspace processing should delete all markers
...
- current code would only delete a single marker and fall through
- should loop consuming all markers until a non-marker char is hit
2024-04-18 08:57:19 -05:00
Steven R. Loomis
5b1c853557
fix(common,core): support other lookup for modifiers
...
- the 'other' keyword was incorrectly called 'default'
Fixes : #11072
2024-04-01 23:21:33 -05:00
Steven R. Loomis
ae6f7b5d78
chore(core): support default lookup for modifiers
...
- fix spec
Fixes : #11072
2024-03-29 12:38:18 -05:00
Steven R. Loomis
bca037cbf3
chore(core): support default lookup for modifiers
...
- remove default flag from kmx_file.h
Fixes : #11072
2024-03-29 12:07:29 -05:00
Steven R. Loomis
89f5a0e090
fix(core): support default lookup for modifiers
...
Fixes : #11072
2024-03-28 13:12:01 -05:00
Steven R. Loomis
313bbd32a7
feat(core): kmx+ scaffolding for modifiers=default
...
- add a new value, 0x10000 to indicate 'default'
For: #11072
2024-03-28 12:19:41 -05:00
Steven R. Loomis
8b5723028c
chore(core): optimize ldml_event_state::emit_difference() when no difference
...
#11057
2024-03-27 08:18:03 -05:00
Steven R. Loomis
e8a8590eee
fix(core): revert some interim fixes
...
- ldml_test_source fix moved off to issue #11083
- an optimization in ldml_processor also rolled back
2024-03-27 08:05:39 -05:00
Steven R. Loomis
18c6ecfc08
fix(core): fix 2 marker cases in ldml_event_state::emit_difference 🙀
...
- handle the case where old and new context strings are the same (i.e. no work to do).
- fix pointer arithmetic error in #10356 - the special case where one marker is being replaced by another. The named regression test didn't actually hit this case.
Fixes: bug(core): 'string too long' #11057
2024-03-25 16:45:01 -05:00
Steven R. Loomis
17a653fa19
chore(core): ldml update out of techpreview 🙀
...
- updates to support techpreview -> 45
- test changes
Fixes : #10900
2024-03-02 22:40:39 -06:00
Steven R. Loomis
2ee402c2b8
Update core/src/ldml/ldml_transforms.cpp
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-02-19 12:37:26 -06:00
Steven R. Loomis
6b229ffa14
fix(core): fix output append logic in any_group::apply_transform
...
- logic updating intermediate 'output' was incorrect
- update comments
- also replace size() with length() several places
Fixes #10736
2024-02-17 23:50:55 -06:00
Steven R. Loomis
ceb990e713
chore(core): more shuffling
...
For #10736
2024-02-16 18:27:35 -06:00
Steven R. Loomis
746af68afa
chore(core): shuffle transform matcher. re-enable failing case
...
For #10736
2024-02-16 12:49:19 -06:00
Steven R. Loomis
e7b31113a3
chore(core): remove obsolete TODOs. Temporary change to test.
...
- TODO: 10734 There's a bug in the matching still. Come back and fix this, but the crasher is fixed.
For #10734
2024-02-15 16:21:53 -06:00
Steven R. Loomis
5edb70f07a
fix(core): fix for ldml_transforms.cpp
...
For #10734
2024-02-15 15:26:30 -06:00
Steven R. Loomis
15b7a42829
feat(core): support normalization=disabled 🙀
...
- clean up process_output: remove some unnecessary steps,
refactor into 3 functions, clarify
- reorder functions for ldml_state
- remove extraneous assert() clutter when the normalization
functions already assert/DebugLog at the innermost level
#10554
2024-02-06 16:09:18 -06:00
Steven R. Loomis
71443836a2
feat(developer): support normalization=disabled 🙀
...
- avoid dead store to transforms class
#10554
2024-02-01 19:05:31 -06:00
Steven R. Loomis
7572c9476e
feat(developer): support normalization=disabled 🙀
...
- main core changes and test changes
#10554
2024-02-01 17:32:42 -06:00
Steven R. Loomis
a28cee0fac
Merge branch 'feat/core/10317-double-marker2-epic-ldml' into feat/core/10317-simplify-marker-epic-ldml
2024-01-31 22:25:45 -06:00
Steven R. Loomis
006b955f8a
Merge branch 'feat/core/10317-double-marker-epic-ldml' into feat/core/10317-double-marker2-epic-ldml
2024-01-31 22:24:46 -06:00
Steven R. Loomis
ec03a681f7
feat(core): reorder processing 🙀
...
- fix quickcheck of add_back_markers()
For: #10516
2024-01-31 22:16:50 -06:00
Steven R. Loomis
78f81516c0
feat(core): report on (lack of) normalization 🙀
...
- report normalization
#10468
2024-01-31 18:22:23 -06:00
Steven R. Loomis
6c1447bb4b
feat(core,developer): simplify markers 🙀
...
- clean up removing multi-segment processing
2024-01-31 18:17:17 -06:00
Steven R. Loomis
32d2e6ea2c
feat(core,developer): simplify markers 🙀
...
- maybe don't need NFD table
#10317
2024-01-31 18:15:37 -06:00
Steven R. Loomis
600fdcc2c8
feat(core): double markers once again 🙀
...
- C++ side passes
Fixes : #10516
2024-01-31 18:05:53 -06:00
Steven R. Loomis
2891d19d88
feat(core): double markers once again 🙀
...
- C++ side
Fixes : #10516
2024-01-31 18:05:53 -06:00
Steven R. Loomis
2c92cfea4b
feat(core): reorder processing 🙀
...
- update per code review
- move quickcheck of map into add_back_markers()
For: #10516
2024-01-31 17:44:21 -06:00
Steven R. Loomis
b429dc3383
feat(core): markers and reorder 🙀
...
- reorders don't interact with markers, but must transit them
- add updated tests
- simplify reorder_group::apply(): the 'common prefix' discussion
was out-of-date as std::mismatch is handled by the ldml_processor
and the core context.
- add_back_markers() promoted to SPI so it can be called from reordering.
Fixes : #10516
2024-01-31 17:44:21 -06:00
Marc Durdin
f546c44048
Merge pull request #10390 from keymanapp/epic/core/9999-normalization
...
epic: Keyman Core normalization 🌱
2024-01-31 10:45:51 +11:00
Steven R. Loomis
580e372a7e
feat(core): ldml marker normalization fix 🙀
...
- document per code review
For: #10516
2024-01-26 14:45:54 -06:00
Steven R. Loomis
4108ecd298
feat(core): ldml marker normalization fix 🙀
...
- decomp the 'glued' char before storing in map
For: #10516
2024-01-25 17:45:59 -06:00
Steven R. Loomis
c3bae838ec
feat(developer): ldml marker normalization in ts 🙀
...
- use Intl.Segmenter instead.
For: #10317
2024-01-19 18:32:08 -06:00
Steven R. Loomis
f2082d79a6
feat(developer): ldml marker normalization in ts 🙀
...
- cleanup and move marker_no_index into the shared area
For: #10317
2024-01-19 18:07:51 -06:00
Steven R. Loomis
72371675dd
Merge branch 'master' into feat/developer/10317-dev-nfd-epic-ldml
2024-01-19 18:01:38 -06:00
Steven R. Loomis
384ee3b189
feat(developer): ldml marker normalization in ts 🙀
...
- C++ build fix
For: #10317
2024-01-19 14:30:19 -06:00
Steven R. Loomis
04a6e164d7
feat(core): ldml actions: updates per code review 🌱
...
- fix backspace processing
- fix k_102 - we can no longer test for context invalidation here
- fix a test that assumed non-const km_core_actions.output
For: #10410
2024-01-19 11:24:41 -06:00
Steven R. Loomis
6ea83391a7
Merge remote-tracking branch 'origin/epic/core/9999-normalization' into feat/core/10410-ldml-really-use-action-struct
2024-01-19 10:40:42 -06:00
Marc Durdin
249ed77835
Merge branch 'epic/core/9999-normalization' into chore/merge-master-into-core/9999-normalization
2024-01-19 17:42:40 +11:00
Steven R. Loomis
ade29e0d84
feat(core): ldml marker: assert that all markers were re-added 🙀
...
For: #10369
2024-01-19 00:13:08 -06:00
Steven R. Loomis
93340649d1
Merge pull request #10425 from keymanapp/feat/core/19410-ldml-use-action-struct
...
chore(core): ldml shuffle some deck chairs 🌱
2024-01-19 00:05:59 -06:00
Steven R. Loomis
9ff937b4ab
Apply suggestions from code review
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-01-18 23:59:29 -06:00
Marc Durdin
4f909dcc83
Merge pull request #10403 from keymanapp/feat/core/9999-normalize-output
...
feat(core): infrastructure for normalization of output 🌱
2024-01-19 13:51:00 +11:00
Marc Durdin
ba46d2127d
chore(core): address review comments
2024-01-19 09:50:00 +07:00
Steven R. Loomis
ae00eda4a0
chore(core): ldml shuffle some deck chairs 🌱
...
- move the emit_ and context functions into an ldml_event_state object
For #10410
2024-01-18 15:47:15 -06:00