Commit graph

48 commits

Author SHA1 Message Date
Sabine
a621106ef3 chore(common): remove namespace km::vkey 2026-08-12 10:04:20 +02:00
Sabine
a2bf976e5e chore(common): remove commented old #defines; in some files remove paths for #include km_vkey 2026-08-11 09:46:49 +02:00
Sabine
0b7af5b771 chore(common): include km_vkey.h 2026-08-07 16:00:19 +02:00
Sabine
e69204c6a2 chore(common): use shorter input paths 2026-08-07 13:38:38 +02:00
Sabine
dde35c87cc chore(common): undo last changes 2026-08-07 12:55:06 +02:00
Sabine
9854206f6a chore(common): use shorter input paths for km_vkey.h and #include also in windows/src/engine/... 2026-08-07 11:59:42 +02:00
Sabine
c38fa4e942 chore(common): include km_vkey.h from common 2026-07-02 14:18:47 +02:00
Sabine
b780ecc730 chore(common): edit value of VK_DECIMAL 2026-07-02 12:07:46 +02:00
Sabine
68fa9b97fb chore(common): rename namespace km_vk to vkey and use under km (km::vkey) 2026-07-02 11:37:46 +02:00
Sabine
62d7f79925 chore(common): rename and use keyman_vkey.h-> km_vkey.h 2026-07-02 11:19:46 +02:00
Sabine
a19e452b59 chore(common): change use of #includes 2026-07-02 10:22:41 +02:00
SabineSIL
9ca40faac7
Merge branch 'master' into chore/developer/scatteredCode/cleanup_VKeys
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-07-02 09:37:43 +02:00
Marc Durdin
94723ba556 chore(common): move common cpp files and remove unused files
* Move the following files from common/windows/cpp/include/ to
  common/include/:
  * keymanversion.h
  * vkeys.h

* Move the following file from common/windows/cpp/ to common/cpp/:
  * vkeys.cpp

* Move crc32.cpp,crc32.h into kmcmplib, as they are only used there.

* Remove unused ConvertUTF.c and ConvertUTF.h.

* Update references to the above files.

* Remove precompiled header refs from vkeys.cpp and change data type to
  `char*` for types in vkeys.cpp (unless `USE_CHAR16_T` is defined), so
  that it is more cross-platform accessible, update usages accordingly,
  fixup project definitions accordingly.

* Remove unused define `KMN_KBP_EXPORTING` from kmcmplib/meson.build.

Fixes: #15565
Test-bot: skip
2026-05-20 13:44:05 +02:00
Marc Durdin
4e496d1937 feat(developer): write UTF-8 .kmn file in kmdecomp
Writes a UTF-8 format file, without BOM, matching the standard file
encoding used in Keyman for many years, rather than the legacy encoding
UTF-16LE+BOM.

Note: uses codecvt for UTF-8 conversion to avoid linking in additional
deps.

Fixes: #15336
Test-bot: skip
2025-12-23 13:45:40 +11:00
Marc Durdin
9e1fe8e6de chore(windows): upgrade VC++ projects to v143 (VS2022)
Test-bot: skip
Build-bot: skip release:developer,windows
2025-10-30 16:31:45 +01:00
Marc Durdin
f394245636 maint(common): consolidate builder scripts
Clarifies the confusing builder.inc.sh / build-utils.sh distinction by
giving the scripts more appropriate names. Most build scripts should use
builder-full.inc.sh; some helper scripts can use builder-basic.inc.sh.
Documented in resources/build/README.md.

Renames:
* resources/build/builder.inc.sh to resources/build/builder-full.inc.sh
* resources/build/build-utils.sh to resources/build/builder-basic.inc.sh

Other changes:
* Moves Android-specific functions out of builder-basic.inc.sh and into
  android/build.sh.
* Renames functions in builder-basic.inc.sh

More functions may be moved from builder-basic.inc.sh into utils.inc.sh
or other scripts in the future.

Fixes: #14065
Build-bot: build all
Test-bot: skip
2025-08-02 08:11:24 +10:00
Sabine
eb2045b631 chore(common): merge branch undo 2025-07-17 13:36:37 +02:00
Sabine
4c40421236 Merge branch 'chore/developer/scatteredCode/cleanup_VKeys' of https://github.com/keymanapp/keyman into chore/developer/scatteredCode/cleanup_VKeys 2025-07-17 13:35:10 +02:00
Sabine
c04ef63db6 chore(common): undo changes for kmdecomp 2025-07-17 13:34:25 +02:00
Sabine
a0a3305d23 chore(common): include new file in kmdecomp/pch.h 2025-07-17 12:16:24 +02:00
Sabine
e2ed50293b chore(common): use new namespace km_vk in kmdecomp 2025-07-17 11:27:49 +02:00
Sabine
a1465c0767 chore(common): missing semicolon in savekeyboard.cpp 2025-07-16 11:34:09 +02:00
Sabine
49d5270e29 chore(common): use new namespace km_vk in kmx_processevent.cpp, Compiler.cpp and savekeyboard.cpp 2025-07-16 10:56:41 +02:00
Marc Durdin
156bdcdd8a maint(common): rename and move builder_if_release_build_level 2025-06-16 06:45:42 +10:00
Marc Durdin
870d37f56b maint(developer): only copy .dbg/.pdb on release buildLevel 2025-06-16 05:40:30 +10:00
Marc Durdin
8b2070c339 chore(developer): minor cleanup on scripts
Additional shared script resources for Developer and Windows,
refactor of a code signing function, refactor of clean step in build.sh.
2024-05-20 06:35:11 +07:00
Marc Durdin
8b6d6b0618 chore(developer): cleanup on build scripts
A round of cleanup and consistency for Developer build scripts.
2024-05-20 06:35:05 +07:00
Marc Durdin
fa57d5c674 chore(developer): final work on build.sh for developer
Now builds from a clean repo:

  developer/src/build.sh configure build test publish

* Splits kmbrowserhost into kmdbrowserhost for Developer; this means
  that Developer Browser Host now inherits the Developer settings rather
  than the Keyman for Windows settings, and simplifies distribution and
  management. The only difference between the two is in the startup code
  so this seems like a good split.

* Cleanup of various build scripts and dependencies.
2024-05-20 06:34:53 +07:00
Marc Durdin
41df6d1cd7 chore(developer): refactor remaining build scripts
This finishes the changes for all build infrastructure for Keyman
Developer to use build.sh.
2024-05-20 06:34:50 +07:00
Marc Durdin
c8a1c6aa39 chore(developer): use builder.inc.sh instead of build-utils.sh in build scripts
also, remove old Makefiles
2024-05-20 06:34:46 +07:00
Marc Durdin
2499ebf4bb chore(developer): move windows common Makefiles to build scripts
Relates to #11317.
2024-05-20 06:34:38 +07:00
Marc Durdin
86c62ff36c chore(developer): transition remaining projects to build.sh
Relates to #11317.

All projects now have a build.sh. Still need to work on inst/, remove
old Makefiles, and update CI.
2024-05-20 06:33:51 +07:00
Steven R. Loomis
700db810e0 fix(core): fix for incorrect earlier fix 2022-09-22 17:26:39 -05:00
Steven R. Loomis
93a9509302 chore(core): delete crc32.cpp and crc32.pas from some places 2022-09-21 18:13:19 -05:00
Steven R. Loomis
d56f6557fb chore(core): deprecate checksum in 16.0 🙀
- do not generate unless version<16.0
- never check checksum

Fixes: #7220
2022-09-16 14:24:01 -05:00
Steven R. Loomis
efd4c83490 chore(core): ignore checksum in 16.0 🙀
- mark as deprecated

Fixes: #7220
2022-09-16 14:24:01 -05:00
Marc Durdin
89ccc393ab chore: make checksum optional
Fixes #7222.
2022-09-09 17:23:07 +10:00
Marc Durdin
6cf8eb7807 fix(developer): kmdecomp virtual character key output
Virtual character keys were being written as garbage, for example:

```
store(store17) [RALT ""] [RALT SHIFT ""] [RALT ""] [RALT SHIFT ''] [RALT SHIFT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT ""] [RALT SHIFT ""] [RALT ""] [RALT ""] [RALT ""] [RALT SHIFT ""]
store(store18) [RCTRL ""] [RCTRL SHIFT ""] [RCTRL ""] [RCTRL SHIFT ''] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL ""] [RCTRL SHIFT ""] [RCTRL ""] [RCTRL ""] [RCTRL ""] [RCTRL SHIFT ""]
```

Picked up in regression testing the compiler.
2022-07-14 16:19:03 +10:00
Marc Durdin
b700432583 fix(developer): kmdecomp stability tweaks
Adds kmdecomp to kmcomp-<version>.zip and fixes a couple of stability
issues:

* Increase buffer sizes (this fix very much a hack)
* Ensures that .bmp/.ico files are saved to correct output folder
* Disable loading sentry.dll when running on WINE
2022-07-11 10:42:33 +10:00
Marc Durdin
7ec9859838 fix(developer): Show full version number
Updated various places in Keyman Developer to show the full
VersionWithTag rather than the short version number we had been
previously showing:

- About dialog
- Welcome screen
- Installer
- kmcomp help
- kmconvert help
- kmanalyze help
- kmdecomp help

This should help when testing to verify that we are testing the right
version.

Also fixed the keymansentry path when running command line C++ programs
from source repo.
2022-06-29 10:58:40 +10:00
Marc Durdin
3632582522 chore(windows): move keymanversion.h to common 2022-06-12 13:56:13 +10:00
Marc Durdin
754c1295aa chore(windows): cleanup keyman64.h usage
keyman64.h is now only used by keyman32/keyman64. Shared components have
been moved to legacy_kmx_memory.h - KMX structures in-memory, as used by
kmanalyze, kmdecomp.

Removed unnecessary references to keyman64.h from kmtip.

Also removed aiDebugger.* which are obsolete files.

One day in the future, we could merge keyman64.h with keymanengine.h.
2022-06-12 13:44:56 +10:00
Marc Durdin
d8f3a5598a chore(windows): move various headers to common
* moved ConvertUTF.h -> common/windows/cpp/include
* moved crc32.h -> common/windows/cpp/include
* moved keymansentry.h -> common/windows/cpp/include
* moved registry.h -> common/windows/cpp/include
* moved unicode.h -> common/windows/cpp/include
* moved xstring.h -> common/windows/cpp/include

and updated corresponding references. Deleted a bunch of old references
to missing headers from .vcxproj files. Updated vkeys.h and vkeys.cpp
references in .vcxproj to use $(KEYMAN_ROOT) instead of relative paths.
2022-06-12 13:18:45 +10:00
Marc Durdin
362f309eb4 chore(developer): add pch and update vkeys.h ref to kmdecomp
Adds a precompiled header for kmdecomp so that we can simply #include
"pch.h" in the common vkeys.h, and updates refs to vkeys.h for kmdecomp.
2022-06-12 07:20:18 +10:00
Marc Durdin
5a8ca7ba41 chore(windows): update project references for shared cpp 2022-06-11 08:39:09 +10:00
Marc Durdin
1006be8914 chore(windows): update sentry references 2022-06-06 15:48:24 +10:00
Marc Durdin
40eedd86d3 chore(developer): fixup kmdecomp build 2022-05-19 09:59:02 +10:00
Marc Durdin
a160a5c709 chore(developer): move source files to /developer/src 2022-05-18 10:34:48 +10:00