mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-05 16:35:33 +00:00
When normalizing, we need to stop processing on an NFC boundary, not an NFD boundary, to support normalizations such as in Bengali, where appending `U+09D7` to a context of `U+0995 U+09C7` should result in `U+0995 U+09CC`. The specification is unclear on this; see https://unicode-org.atlassian.net/browse/CLDR-19218 This also updates the ldml keyboard unit test suite to support running in full NFC mode (used in all Engine implementations) as well retaining the NFD mode (now only used by the debugger). Side note: the Bengali normalization failure case was picked up by the improvements to the unit test suite, proving once again that good tests are so valuable. Fixes: #15491 Fixes: #15505 Follows: #15488 Relates-to: CLDR-19218 |
||
|---|---|---|
| .. | ||
| action_api.tests.cpp | ||
| action_items.hpp | ||
| action_set_api.tests.cpp | ||
| actions_get_api.tests.cpp | ||
| actions_normalize.tests.cpp | ||
| context_api.tests.cpp | ||
| debug_api.tests.cpp | ||
| debug_items.hpp | ||
| keyboard_api.tests.cpp | ||
| kmx_context.tests.cpp | ||
| kmx_xstring.tests.cpp | ||
| meson.build | ||
| options_api.tests.cpp | ||
| state_api.tests.cpp | ||
| state_context_api.tests.cpp | ||