Fixes#10547.
In order to prevent confusion, the stubbed and incomplete .js files
generated by the LDML keyboard compiler are no longer emitted for
version 17.0 release.
Fixes#10542.
The `sourcePath` attribute should only be added to a .keyboard_info file
if the file is actually in an expected folder matching a pattern like
`(release|legacy|experimental)/k/keyboard`.
If the path does not match that pattern, then we just omit the field in
the emitted .keyboard_info or .model_info file.
Fixes#10488:
1. Use a consistent `exitProcess()` function so that we always wait for Sentry to do its thing.
2. Make `KeymanSentry.isEnabled()` non-async because it is synchronous.
3. Remove duplicate initialization of `KeymanSentry` in kmc.ts.
Fixes#10530.
Adds the deleted_context member to the km_core_actions struct, and
associated unit tests. Simplifies integration by providing the consumer
with all the data they need in order to execute the transform,
specifically around number of delete operations required, without
needing to query the target application context again. The number of
delete operations will vary according to application compliance and
selected encoding; for example a UTF-16 string may require 2
delete-backs for surrogate pairs in the text buffer for a compliant app,
whereas there will be a single delete-back key event for a non-compliant
app.
The deleted_context member should also be used for debug assertions.
- normalize in key.to, tran.from, tran.to
- add as an option in the strs pipeline
- also, assertCodePoints utility for asserting with escapes
For: #10317
Fixes#10487.
In Keyman Developer's wrapper of kmc, we now accept
`--enable-source-maps` as the first parameter to pass to kmc. We do not
enable source maps by default because they have a performance penalty.
Fixes#10458.
Refactors the LDML keyboard test window significantly, in order to be
able to support markers. Cleans up the state machine for the debug
window in the process, as that was complicating the changes. Removes
a lot of extraneous code in the debug window.
Relates to #10416.
Moves from using action queue to action struct for the LDML keyboard
debugger. Does not do the same for the KMX keyboard debugger, because
that relies on action items to do single-step debugging.
Fixes#10420.
Implements a basic LDML keyboard test window. Press F5 or Keyboard/Test
to start test. Shows a character grid for each character in the text.
Does not yet support display of markers (#10458). Does not support
interactive debugging, nor any more detailed status information.