Commit graph

435 commits

Author SHA1 Message Date
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
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
9ff937b4ab
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-01-18 23:59:29 -06:00
Steven R. Loomis
6e2030b3b8 feat(developer): ldml marker normalization in ts 🙀
- intial parsing

For: #10317
2024-01-18 12:39:19 -06:00
Steven R. Loomis
16d641fc3b feat(developer): ldml marker normalization in ts 🙀
- scaffolding and tests

For: #10317
2024-01-18 05:43:44 -06:00
Steven R. Loomis
64c808c4cc feat(core): ldml marker segments: fix build errs 🙀
- remove unused function

For: #10369
2024-01-18 02:54:55 -06:00
Steven R. Loomis
2c56223f53 feat(core): ldml marker: improve segment algorithm 🙀
- easier to understand loop
- comments

For: #10369
2024-01-18 14:39:10 -06:00
Steven R. Loomis
3ccffe9430 feat(core): ldml marker: refactor, use nfd props 🙀
- split out parse_next_marker()
- use NFD safe boundaries to segment marker interaction

For: #10369
2024-01-18 13:51:40 -06:00
Steven R. Loomis
7bc8831267 feat(core): updates to add_back_markers 🙀
- support out-of-order re-adding
- test for updated marker map
2024-01-17 19:04:11 -06:00
Steven R. Loomis
990635eb09 feat(core): WIP attempt at cross segment markers 🙀
#10369
2024-01-17 19:03:43 -06:00
Steven R. Loomis
b6a6b7e6b8 feat(core): ldml fix test case and parser 🙀
For: #10319
2024-01-17 18:32:39 -06:00
Steven R. Loomis
d08e7051cf feat(core): ldml updates per code review 🙀
- don't try to remove irregular sentinel sequences
- update test

For: #10319
2024-01-17 18:34:56 -06:00
Steven R. Loomis
763bc96739 feat(core): ldml updates per code review 🙀
- remove stray change to kmx_processevent.cpp
- fix escaping of syntax chars
- fix comment per review

For: #10319
2024-01-17 18:05:28 -06:00
Steven R. Loomis
ab67061843 feat(core): 32 bit escapades 🙀
- improved test code and marker parsing

#10319
2024-01-15 14:07:19 -06:00
Steven R. Loomis
c5d0e0525e feat(developer): 32 bit escapades 🙀
- escaping working, matching not yet

#10319
2024-01-13 12:55:51 -06:00
Steven R. Loomis
d4873d362a chore(core): split out some files 🙀
- reapply 0d9f543a78 code review comments

#10320
2024-01-11 11:41:40 -06:00
Steven R. Loomis
f38054f65a chore(core): split out some files 🙀
- markers/normalization really needs its own file
- split out ldml_markers.* from ldml_transforms.*
- split out ldml_utils.hpp for a common assert macro

#10320
2024-01-06 11:56:11 -06:00
Steven R. Loomis
b2b897970d feat(core): stacked markers 🙀
- renamed the single-segment functions to normalize_nfd_markers_segment() since they should only be run on a single segment
- commented out NFC for now, dead code
- add some additional checks/DebugLog around normalization

#10320
2024-01-06 11:33:51 -06:00
Steven R. Loomis
f4be7856da feat(core): stacked markers tests 🙀
- we can finally support single markers with the new structure
2024-01-06 10:17:10 -06:00
Steven R. Loomis
52fe9073a0 chore(core): stacked markers tests 🙀
- first we break

#10320
2024-01-05 18:52:43 -06:00
Steven R. Loomis
91b761b027 feat(core): fixup markers as regex 🙀
- move prepend_marker out of line
- replace bool for_regex with an enum
- cleanup another instance of \b -> \u0008

#9121
2024-01-02 17:21:04 -06:00
Steven R. Loomis
02ba64d857 feat(core): fixup markers as regex 🙀
- needed to remove/re-add the “≈≈[\u0001-\uD7FE]” format  (aka LDML_MARKER_ANY_INDEX)

#9121
2023-12-30 21:09:42 -06:00
Steven R. Loomis
80ba5aa0ce fix(developer): escape markers as regex 🙀
- escape markers to prevent the n'th marker from having some other meaning
2023-12-30 11:18:51 -06:00
Steven R. Loomis
53201263d9 fix(core): use marker-safe normalization in between transform stages 🙀
- the intermediate stages of transforms also need to use marker-safe normalization
- re-enable a test that was failing previously due to this

For: #9468
2023-12-22 17:51:18 -06:00
Steven R. Loomis
094f5ad492
Merge branch 'master' into feat/developer/9451-key-not-found-epic-ldml 2023-12-19 10:14:11 -06:00
rc-swag
1cb288144c chore(core): Merge branch 'master' into fix/core/clear-core-context-invalidate 2023-12-19 09:13:43 +10:00
Steven R. Loomis
767d216936
Merge branch 'master' into feat/developer/9451-key-not-found-epic-ldml 2023-12-14 15:18:06 -06:00
Steven R. Loomis
74985f4576 fix(core): ldml: fix bad usage of unique_ptr 🙀
- needed to declare the pointer properly

Fixes: bug(core): Build failures in LDML code on newer Ubuntu versions #10249
2023-12-13 13:06:27 -06:00
Steven R. Loomis
0d3458deef chore(core): comments in key-not-found 🙀
- typo fix
- clarify default behavior for missing keys

For: #9451
2023-12-12 18:43:00 -06:00
Steven R. Loomis
ff5427f258
Merge pull request #10222 from keymanapp/feat/core/9121-regex2-epic-ldml
fix(core): improve memory allocation issues in calling into icu 🙀
2023-12-12 16:21:05 -06:00
Steven R. Loomis
6871cf03b3
Merge pull request #10198 from keymanapp/fix/core/8069-todo-ldml-epic-ldml
fix(core): remove a TODO-LDML 🙀
2023-12-12 16:20:20 -06:00
Steven R. Loomis
26048702d2
Merge pull request #10090 from keymanapp/fix/core/9451-key-not-found-epic-ldml
feat(core): ldml improve key-not-found 🙀
2023-12-12 16:19:53 -06:00
Steven R. Loomis
46b8d0668a
Merge branch 'fix/core/8069-todo-ldml-epic-ldml' into feat/core/9121-regex2-epic-ldml 2023-12-12 08:58:29 -06:00
Steven R. Loomis
c975b61c9b
Merge branch 'fix/core/9451-key-not-found-epic-ldml' into fix/core/8069-todo-ldml-epic-ldml 2023-12-12 08:58:11 -06:00
Steven R. Loomis
1cd97fadb9 feat(core): ldml improve key-not-found 🙀
- move vkey_to_contextreset  table into a common spot in core
- assert that vk < 0x100 to avoid running off the table

For: #9451
2023-12-12 08:56:33 -06:00
Steven R. Loomis
7735fc045a fix(core): improve memory allocation issues in calling into icu 🙀
- typo from  code review

For: #9121

Co-authored-by: Joshua A. Horton <joshua_horton@sil.org>
2023-12-12 08:18:45 -06:00
rc-swag
4a511bde1e fix(core): clear core context on invalidate cache 2023-12-12 23:49:04 +10:00
Steven R. Loomis
6506bfd89d fix(core): improve memory allocation issues in calling into icu 🙀
For: #9121
2023-12-11 16:53:41 -06:00
Steven R. Loomis
cadf7a1e14 fix(core): remove a TODO-LDML 🙀
Fixes: #8069

(all of the rest are in other tickets)
2023-12-08 18:48:01 -06:00
Steven R. Loomis
1e32a2a963 feat(core): ldml improve key-not-found 🙀
- copy exception table for reset from VKScanCodes.cpp
- update test

For: #9451
2023-12-07 17:15:44 -06:00
Steven R. Loomis
3c95c85b7c
Merge branch 'master' into fix/core/9451-key-not-found-epic-ldml 2023-12-07 14:00:59 -06:00
Steven R. Loomis
2071d25745 feat(core): ldml_processor fix for markers 🙀
- don't skip markers when calling context_to_string()! Oops.
- update docs on ldml_processor::remove_text()
- update remove_text() to handle markers in the context string.

This is really: #9468
2023-12-07 19:54:16 +00:00
Steven R. Loomis
392c535270 feat(core): ldml improve key-not-found 🙀
- also affects markers, feat(core): normalization per spec for transforms/etc 🙀  #9468
- keep markers in nfd context string
- fix ldml test harness to handle context reset
- update test case
- still issues with overproduction of markers in the context

For: #9451
2023-12-06 18:33:51 -06:00
Marc Durdin
802f22578a chore(core): address review comments 2023-12-04 13:37:59 +07:00
Marc Durdin
b6daac0bdb feat(core): action struct to action items conversion
Adds state->set_actions(). This sets the Core's action list to match the
contents of the action struct. Note that markers are not supported and
backspace expected_values will be empty, as this information is not
available. As the intended consumer of the action struct does not need
to know this information, this should be adequate.
2023-12-01 12:27:49 +07:00
rc-swag
51a462cff2 chore(windows): Merge branch 'master' into chore/windows/10052/remove-cached-context 2023-11-30 17:26:09 +10:00
rc-swag
d5963e05b6 fix: check for null termination
Determine the best way to check for null termination all compilers
2023-11-30 14:31:18 +10:00