Commit graph

3302 commits

Author SHA1 Message Date
Marc Durdin
32337e0087
Merge pull request #6030 from keymanapp/chore/windows/build-without-delphi
chore(windows): build without delphi ✈
2021-12-11 14:39:47 +11:00
Marc Durdin
1f678de3c4 chore: address review comment 2021-12-11 04:39:36 +01:00
Marc Durdin
ba8c6a165a
Merge pull request #6022 from keymanapp/chore/windows/no-more-mkver
chore(windows): replace mkver with mkver.sh ✈
2021-12-11 14:38:02 +11:00
Marc Durdin
36a5ae6f2a
Merge pull request #6021 from keymanapp/chore/windows/grep-to-findstr
chore(windows): use findstr instead of Borland grep ✈
2021-12-11 14:37:52 +11:00
Marc Durdin
2f19660db1
Merge pull request #6020 from keymanapp/chore/windows/make-to-nmake
chore(windows): move from Borland make to nmake ✈
2021-12-11 14:37:44 +11:00
Marc Durdin
92619336d0
Merge pull request #6019 from keymanapp/chore/windows/version-rc-macros
chore(windows): version.rc use macros instead of mkver ✈
2021-12-11 14:37:35 +11:00
Marc Durdin
2ac905c2ea feat(developer): cache web debug objects across sessions
Keyman Developer now remembers the 10 most recently debugged keyboards,
models and packages in the web debugger, across sessions. It determines
the recency of use by the last access time of the object, and caches at
most 10 of each type of object when the IDE session ends.

The cache data is stored in %appdata%\Keyman\Keyman Developer\WebDebugCache.json.

The web debugger is now always available when Keyman Developer is
running, even if the user has not yet clicked 'Start Web Debugging', as
otherwise cached web debug objects would not be immediately available.

Keyman Developer will verify that files listed in the cache are still
available, and will remove them on startup if the file disappears.
2021-12-10 17:17:14 +01:00
Marc Durdin
4f4427dd0d feat(developer): live reload of web debugger
Adds polling for changes to keyboards or models under test in the
web debugger. When changes are detected, the keyboards and/or models
are instantly reloaded automatically.
2021-12-10 13:36:52 +01:00
Marc Durdin
01a253d5f7 fix(developer): fix storage for null model 2021-12-10 11:22:24 +01:00
Marc Durdin
0ece9b09f8 feat: use package name instead of id 2021-12-10 11:12:24 +01:00
Marc Durdin
540585cf36 feat(developer): tidy up package list in web test view
Merges into #6033.

Tidies up the package download page in the web test view, making it
clearer and less verbose, while offering more detail.
2021-12-10 11:07:51 +01:00
Marc Durdin
0b74c5c232 feat(developer): remember test page preferences on reload
Emerges from ELTW demos.

Remembers the user's selected model and device when they refresh the
page.
2021-12-10 10:49:59 +01:00
Marc Durdin
38a10286eb chore(windows): tweak build and config docs 2021-12-10 05:31:18 +01:00
Marc Durdin
365b867a86 chore(windows): tweak PathDefines.mak building 2021-12-09 16:10:43 +01:00
Marc Durdin
988fec305c chore(windows): enable build without Delphi installed
This makes it possible to run `set NODELPHI=1`, `nmake build` and then
only non-Delphi projects will be built.
2021-12-10 00:10:54 +11:00
Marc Durdin
b4e6ceea25 chore: fixup additional version.rc 2021-12-09 06:16:25 +01:00
Marc Durdin
5ab9574112
Merge pull request #5906 from keymanapp/fix/web/5779-font-scaling-in-osk
fix(web): font size was not consistently set
2021-12-08 19:42:11 +11:00
Marc Durdin
c9dc10cc33 chore(windows): replace mkver with mkver.sh 2021-12-08 07:10:29 +01:00
Marc Durdin
ff01477075 chore(windows): use findstr instead of Borland grep
Removes one more dependency on Delphi tools
2021-12-08 07:10:07 +01:00
Marc Durdin
dfaa0bb005 chore(windows): fix build for setup locale data 2021-12-08 05:14:01 +01:00
Marc Durdin
6a0b4636c8 chore(windows): fix builds for oskbulkrenderer and etl2log 2021-12-08 05:12:45 +01:00
Marc Durdin
261fae7edd chore(windows): fixup devsetup makefile whitespace 2021-12-07 19:31:00 +01:00
Marc Durdin
dee896b4c6 chore(windows): move from Borland make to nmake
While it may be smarter to move to a different build system altogether,
it is also a *lot* more work. This was a fairly minor syntax refresh to
get nmake working with our existing Makefile system. This is now no
longer compatible with Borland make, so you will need to use `nmake` to
build.

The presence of NMAKE.md informs builds systems that nmake should be
used instead of make.
2021-12-06 12:47:31 +04:00
Ross
c26e1f3485 chore(common): buf now uses decxstr so remove comment
remove comment about it splitting surrogate pairs and
deadkeys
2021-12-06 10:37:49 +10:00
Marc Durdin
bf65ecf82b chore(windows): path fixes for version.rc includes 2021-12-05 17:24:28 +11:00
Marc Durdin
e00ff063c8 chore(windows): version.rc use macros instead of mkver 2021-12-05 17:12:56 +11:00
Marc Durdin
312dee762b
Update windows/src/developer/TIKE/xml/layoutbuilder/builder.js
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2021-12-05 06:42:37 +11:00
rc-swag
faff079e2e
chore(common):fix typos in commments 2021-12-03 15:18:59 +10:00
Ross
884c249286 chore(common): add more description to Buf method
Also updated the doxy to remove the brief tag.
Made mirror change to appint.h
2021-12-03 10:01:53 +10:00
Marc Durdin
bf42bc4141
Merge pull request #5972 from keymanapp/fix/developer/kmcomp-build-js-message
fix(developer): building kmw keyboard had wrong message callback signature
2021-12-03 08:47:46 +11:00
Marc Durdin
4b3405fef9 fix(developer): debugger crash with empty group
As the array length properties are unsigned integers, taking -1 from
them resulted in an integer overflow when the array was empty. A gotcha
with Delphi-style for loops!
2021-12-02 05:12:52 +11:00
Marc Durdin
88ea17e0ba feat(developer): support for Caps Lock layer 🍆
Relates to #3620.

Allows keyboard developers to add a Caps Lock layer (called 'caps'),
which will be accessible through double-tap of Shift key, in an upcoming
PR.

Also adds test keyboards to exercise the functionality when it is
available.
2021-12-01 08:53:23 +11:00
Marc Durdin
67f7839e72 feat(developer): support for start-of-sentence in IDE
Relates to #3621.

Adds `&layoutChanged`, `begin newcontext`, `begin postkeystroke` support
to IDE editor and keyword help.
2021-11-30 14:56:51 +11:00
Marc Durdin
25dfdf3a88
Merge pull request #5978 from keymanapp/chore/developer/tweak-lang-metadata-message
chore(developer): tweak language metadata message
2021-11-29 16:10:56 +11:00
Marc Durdin
e296eb8a67 chore(windows): Merge branch 'master' into chore/windows-setup-notes 2021-11-29 16:09:36 +11:00
Ross
059af9efd1 feat(windows): add MapUSCharToVK to kmx processor 2021-11-29 10:52:16 +10:00
Ross
31d7200a63 feat(windows): replace insert_or_assign with[] for hashmap
Also update issue comment for future removal of winows processor code
2021-11-29 10:52:07 +10:00
rc-swag
4e1ccfdd4f feat(windows): apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2021-11-29 10:52:04 +10:00
Ross
ac16abdb18 feat(windows): rename key_rules -> key_list 2021-11-29 10:52:02 +10:00
Ross
9f44cf49fc feat(windows): fix pkeys index add comments
The pkeys was using the wrong counter as a index
in the map check therefore matching the incorrect key
2021-11-29 10:52:01 +10:00
Ross
72d8188a38 feat(windows): complete common core get rules api 2021-11-29 10:51:59 +10:00
Marc Durdin
3f35cc0bf8 chore(web): Merge branch 'master' into feat/web/3621-newcontext-group 2021-11-29 10:22:22 +11:00
Marc Durdin
e98930dedb
Merge branch 'master' into fix/web/5779-font-scaling-in-osk 2021-11-29 09:12:15 +11:00
Marc Durdin
b930d8199a chore(developer): tweak language metadata message
Relates to https://community.software.sil.org/t/why-does-the-details-tab-in-keyman-developer-still-refer-to-keyman-10/5612/3
2021-11-29 08:27:21 +11:00
Marc Durdin
d4186b5093
Merge pull request #5971 from keymanapp/chore/developer/move-kcframe
chore(developer): move kcframe into its own folder
2021-11-29 06:38:39 +11:00
Marc Durdin
94cfbae33d
Merge pull request #5923 from keymanapp/fix/developer/5905-debugger-render-on-touch-devices
fix(developer): render OSK nicely on touch devices
2021-11-29 06:37:15 +11:00
Marc Durdin
9fc9d9391e fix(developer): building kmw keyboard had wrong message callback signature
Picked up during #5963 development.

If you ran `kmcomp <file.kmn> <out.js>`, compiler messages were passed
to a function with an incorrect signature, resulting in an exception.
This was a mode that was not widely used, which is why we haven't
picked it up earlier.
2021-11-25 14:37:47 +11:00
Marc Durdin
ac30b280ae chore(developer): move kcframe into its own folder 2021-11-25 14:35:51 +11:00
Marc Durdin
2de8c145c0 fix(developer): kmdecomp string overflow
Picked up in development of #5963.
2021-11-25 14:32:24 +11:00
Marc Durdin
e24b7561c6 feat(developer): add readonly group support
Relates to #3621.

Adds `readonly` group support and verifies that keyboards meet
constraints around usage of these groups.

(Note: fixes test_valid.kps and test.bat which seemed to have some
invalid tests?)
2021-11-25 14:27:05 +11:00