Commit graph

115 commits

Author SHA1 Message Date
Marc Durdin
db5aa518c0 change(developer): add unit test to verify special key cap definitions
Special key caps such as '*ZWNJ*' are defined in a number of places in
the source. In theory, we could DRY these definitions out, but that
would add a number of unhelpful dependencies or take considerable time
to implement. So, for now I opted to write a unit test to compare the
definitions as found in the following files, treating web's definition
as primary:

 *   web/src/engine/osk/src/specialCharacters.ts
 *   developer/src/tike/xml/layoutbuilder/constants.js
 *   developer/src/kmc-kmn/kmw-compiler/constants.ts
 *   developer/docs/help/reference/file-types/keyman-touch-layout.md
 *   core/include/ldml/keyman_core_ldml.ts

Note that the keyman_core_ldml.ts file changes are not included in this
commit, and hence the unit test for it is currently skipped. This will
be enabled in a subsequent commit along with other KMX+ changes to
support epic/embed-osk-in-kmx.

Test-bot: skip
2025-10-16 12:37:44 +02:00
Eberhard Beilharz
f166f11d14
docs(common): update docs Keyman Desktop → Keyman for Windows
Also change path to engine help pages. This requires a corresponding
change in help.keyman.com.

Test-bot: skip
2025-09-02 14:29:53 +02:00
Marc Durdin
9f15e7c7ec maint: add empty 'scripts' tag to package.json to silence warning
Also removes './' from front of gosh.js to address another npm cleanup
(from `npm pkg fix`).

Fixes: #13833
2025-05-25 06:35:28 +07:00
Eberhard Beilharz
4d81589f48
maint(common): use unique names for Keyman version variables
Previously the builder scripts defined a readonly `VERSION` environment
variable for the Keyman version. That caused problems when another
(external) script tried to define a `VERSION` variable. We encountered
this problem when trying to move the TC build steps of a configuration
into a single script (#13399) when we tried to source `~/.nvm/nvm.sh`.

This change uses a Keyman specific prefix for the version variables and
renames `VERSION` → `KEYMAN_VERSION` etc. Unfortunately these variables
are used in a lot of places, so this turned out to be a bit of a yak
shave.

Test-bot: skip
2025-05-07 18:46:51 +02:00
Marc Durdin
7e30a9fd5c fix(developer): escape font facename in touch layout editor
Fixes: #13017
2025-01-24 10:46:32 +07:00
Marc Durdin
0b09ffabe5
Merge branch 'master' into context/options 2024-09-26 00:17:07 +02:00
Marc Durdin
035af7271c
docs: tweak content 2024-09-26 00:15:52 +02:00
Nguonnyny Tan
7c365e35a3
chore: update contexthelp.xml 2024-09-17 14:31:38 +07:00
Marc Durdin
b505bebd49 chore: rename SIL International to SIL Global 2024-08-13 12:04:53 +08:00
Marc Durdin
5ac8c26699 chore(developer): update SIL logo
Fixes: #12161
2024-08-13 11:53:56 +08:00
Marc Durdin
2b12c36feb
Merge pull request #11799 from Nnyny/language/reference
chore(developer): add language/reference
2024-08-05 14:25:36 +10:00
Nnyny
7fe2dfe0ef add language/reference 2024-06-17 14:23:19 +07:00
Marc Durdin
021e999d79
Merge branch 'master' into contexthelp-final/keyboard-editor 2024-06-14 09:29:06 +10:00
Marc Durdin
21f6e128e2
Merge branch 'master' into contexthelp/select-bcp47-language 2024-06-14 09:28:24 +10:00
Marc Durdin
dba47e7075
Merge branch 'master' into contexthelp/new-project-parameters 2024-06-14 09:27:49 +10:00
Marc Durdin
60a4587c69
Merge pull request #11767 from Meng-Heng/contexthelp/new-project
docs(developer): context help in new-project section
2024-06-14 09:27:16 +10:00
Marc Durdin
222a141d77
Merge pull request #11754 from Meng-Heng/contexthelp/keyboard-editor
docs(developer): context help in keyboard-editor section
2024-06-14 09:27:09 +10:00
Marc Durdin
c01fceae7e
Merge pull request #11760 from Meng-Heng/contexthelp/package-editor
docs(developer): context help in package-editor and put the existing context help in their own tab comments
2024-06-14 09:26:45 +10:00
Meng-Heng
137443e34f docs(developer): extra context help for keyboard-editor (does not exist in Keyman Developer 17.0)
Fixes: #2131
2024-06-13 14:09:54 +07:00
Meng-Heng
abb2530ea5 docs(developer): context help for Select BCP 47 tag in Keyman Developer
Fixes: #2131
2024-06-13 13:50:53 +07:00
Meng-Heng
cf6665e2ce docs(developer): context help for new project parameters in keyman developer
Fixes: #2131
2024-06-13 13:13:27 +07:00
Meng-Heng
9d2d790fa9 docs(developer): context help in new-project section
Fixes: #2131
2024-06-13 12:19:56 +07:00
Meng-Heng
2d6d007f74 docs(developer): context help in package-editor and put the context help in their tabs
Fixes a portion of #2131:
2024-06-12 15:35:17 +07:00
Marc Durdin
074c8f7dac fix(developer): show message if no more platforms to add to touch layout editor
Fixes: #11646
Fixes: KEYMAN-DEVELOPER-1X2
2024-06-12 14:52:38 +07:00
MengHeng
4116f73ecc
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-06-12 11:50:07 +07:00
Meng-Heng
be78b58df1 docs(developer): context help in keyboard-editor section
Fixes: #2131
2024-06-11 14:36:19 +07:00
Marc Durdin
1a3828d6c2 feat(developer): support language reference in context help
Adds support for `<LanguageReference Name='keyword'>` in
contexthelp.xml.
2024-06-07 14:55:51 +07:00
Marc Durdin
7d67ac5d6c
Merge branch 'master' into context/options 2024-06-07 09:15:21 +07:00
Marc Durdin
63a40e9934
Merge branch 'master' into context/new-model-project-parameters 2024-06-07 08:35:04 +07:00
Marc Durdin
4a7b766241
Merge pull request #11658 from Nnyny/context/wordlist-editor
chore(developer): add context/wordlist-editor
2024-06-07 08:34:09 +07:00
Marc Durdin
e1879deb96
Merge pull request #11656 from Nnyny/context/character-map
chore(developer): add context/character-map
2024-06-07 08:34:00 +07:00
Marc Durdin
c6b5afda7d
Merge pull request #11587 from keymanapp/fix/developer/11586-handle-editor-init-after-debugger
fix(developer): handle editor initializing after debugger when setting execution point
2024-06-06 12:04:39 +07:00
Nnyny
983aea1ba5 add context/new-model-project-parameters 2024-06-04 14:48:10 +07:00
Nnyny
423aa7ab94 add context/wordlist-editor 2024-06-03 15:36:07 +07:00
Nnyny
8608a26701 add context/character-map 2024-06-03 14:40:57 +07:00
Marc Durdin
b22bf72a91
Merge pull request #11575 from keymanapp/fix/developer/11573-save-selection-when-loading-state
fix(developer): save touch layout editor selection when loading state
2024-06-03 05:42:14 +07:00
Marc Durdin
e622c1ba1b
Merge pull request #11629 from Nnyny/context/debug
chore(developer): add context/debug
2024-05-31 15:50:35 +07:00
Nnyny
2d9ffcc288 add context/debug 2024-05-31 14:27:15 +07:00
Marc Durdin
db5e8929ed
Merge pull request #11582 from keymanapp/fix/developer/11581-flicks-for-default-key-hints
fix(developer): correct the inference of default hint from flicks
2024-05-31 13:07:07 +07:00
Nguonnyny Tan
6627d4e103
chore: remove 'chkShowStartupDialog' and 'chkAllowMultipleInstances' 2024-05-30 12:19:21 +07:00
Nguonnyny Tan
518a13a591
Update contexthelp.xml 2024-05-28 14:53:47 +07:00
Marc Durdin
dfc90de81d fix(developer): handle editor initializing after debugger when setting execution point
Fixes: #11586
Fixes: KEYMAN-DEVELOPER-1K7
2024-05-28 13:53:04 +07:00
Nguonnyny Tan
73f8477b50
Update developer/src/tike/xml/help/contexthelp.xml
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-05-28 12:34:35 +07:00
Nguonnyny Tan
8e0033072f
Update developer/src/tike/xml/help/contexthelp.xml
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-05-28 12:34:20 +07:00
Marc Durdin
9f5141b18c fix(developer): correct the inference of default hint from flicks
There were two problems here:
* An undeclared variable `source`
* The `flick` parameter is an array, not an object, so indexing by
  direction is invalid

Fixes: #11581
Fixes: KEYMAN-DEVELOPER-1YW
2024-05-28 09:49:38 +07:00
Marc Durdin
5c40ec9878 fix(developer): use correct variable when fixing up flick and multitap in Layer Properties dialog
Fixes: #11574
Fixes: KEYMAN-DEVELOPER-1GC
2024-05-28 06:54:47 +07:00
Marc Durdin
193250db71 fix(developer): save touch layout editor selection when loading state
Key selection was left in a corrupted state in `builder.loadState()`, on
first load of the touch layout editor, because the selection was not
restored after calling `prepareLayer()`.

This only happens on first load because after first load, the selection
will have been saved to the state (which is kept in the backend,
associated with the instance of the editor), so pressing F5 to reload
the page will not reproduce the issue.

Fixes: #11573
Fixes: KEYMAN-DEVELOPER-1Z8
2024-05-28 06:46:48 +07:00
Nnyny
9e17f7f9c0 Add context/options 2024-05-27 15:39:41 +07:00
Nnyny
273d79e204 context/key-test 2024-05-23 13:45:05 +07:00
Marc Durdin
007f0bdc28 fix(developer): handle invalid Unicode values in touch layout builder
Fixes #11260.
2024-04-22 08:26:03 +07:00