Marc Durdin
7644ce668f
chore(developer): cleanup for kmx-builder
2022-08-26 04:44:00 +10:00
Marc Durdin
420dc1c10c
feat(developer): emit kmxplus format
2022-08-26 04:40:25 +10:00
Sabine
097b9ed773
chore(developer): CheckFileNameConsistency changed to take KMX_WCHART const* (= wchar_t* const); used in compiler.cpp now
2022-08-25 12:21:44 +02:00
Marc Durdin
23d9aad0a0
chore(developer): cleanup
2022-08-25 15:12:00 +10:00
Marc Durdin
aed8f0d11a
feat(developer): Write kmxplus section
...
Adds support for writing kmxplus section of a kmx file. Extends KMXFile
to a KMXPlusFile subclass. Adds KMXPlusBuilder which is called from
KMXBuilder if KMXBuilder finds that the file is a KMXPlusFile.
This means that KMXPlusBuilder generates a buffer that could be stored
independently of its parent .kmx file transport, if that is later
considered desirable.
Adds new constants for sizes of various table components, which makes
building the file much simpler.
2022-08-25 12:26:21 +10:00
Sabine
52d6629d58
Merge branch 'refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION' of https://github.com/keymanapp/keyman into refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION
...
# Conflicts:
# developer/src/kmcmpdll/CheckNCapsConsistency.cpp
# developer/src/kmcmpdll/UnreachableRules.cpp
# developer/src/kmcmpdll/kmcmpdll.h
solved conflicts ( were only blanc lines)
2022-08-24 16:06:52 +02:00
Sabine
ec534ca898
chore(developer): removed #pragma once from wrong places, edited #includes
2022-08-24 16:01:06 +02:00
Sabine
296006de99
chore(developer): removed #pragma once from wrong places, edited #includes
2022-08-24 15:34:22 +02:00
Marc Durdin
6aeb20e77c
Revert "Revert "feat(core): turn @keymanapp/ldml-keyboard-constants into a module 🙀 ""
2022-08-24 14:32:22 +10:00
Marc Durdin
8ebae9515e
Revert "feat(core): turn @keymanapp/ldml-keyboard-constants into a module 🙀 "
2022-08-24 14:26:44 +10:00
Marc Durdin
5e296c98af
feat(core): turn @keymanapp/ldml-keyboard-constants into a module
...
Splits the building of keyboardprocessor_ldml.h into a separate
tsconfig.build.json, and designates keyboardprocessor_ldml.ts as a new
Typescript/Node module @keymanapp/ldml-keyboard-constants.
Includes an example usage in the (currently unused) kmx-plus.ts.
2022-08-24 14:10:20 +10:00
Marc Durdin
a3e672e808
feat(developer): LDML compiler kmx-builder
...
Generates a valid .kmx file (legacy structures only) from an
intermediate in-memory structure. Included for completeness, although it
is anticipated that LDML keyboards will not have any groups, though they
will probably have some metadata stores.
2022-08-24 13:43:09 +10:00
Marc Durdin
d4553f674a
chore(developer): rename structures
2022-08-24 09:42:08 +10:00
Marc Durdin
4018e528d9
feat(developer): groundwork - kmx file structures
...
Defines kmx binary structures and wireframe builder to emit a .kmx file.
Currently the builder will emit a roughly correct header. Next steps are
to build a .kmx file with stores, groups and keys, to match existing KMX
compiler behaviour. Once that is done, will return to generation of
KMXPlus data structures.
Compiler is designed to work independent of file system so it should run
inside browser or node environment. kmldmlc.ts is node-specific, but all
other modules should be multi-platform.
2022-08-24 09:32:30 +10:00
Marc Durdin
9ce6892112
Merge pull request #7101 from keymanapp/feat/developer/ldml-keyboard-ts-structures
...
feat(developer): LDML keyboard compiler - infrastructure 🙀
2022-08-23 18:29:49 -05:00
Marc Durdin
8cba43f989
chore: Apply suggestions from code review
...
Co-authored-by: Darcy Wong <darcy_wong@sil.org>
Co-authored-by: Steven R. Loomis <srl295@gmail.com>
2022-08-24 09:29:03 +10:00
Marc Durdin
e6ff47f2b3
chore: Merge branch 'master' into feature-ldml
2022-08-24 04:21:21 +10:00
Marc Durdin
cc8875dc9e
chore(developer): cleanup comments
2022-08-24 03:54:25 +10:00
Marc Durdin
c108e5ecd6
feat(developer): add kmldmlc to developer installer
2022-08-24 03:29:45 +10:00
Sabine
1482f18a73
chore(developer): tidied up code (not finished yet)
2022-08-23 18:33:22 +02:00
Marc Durdin
ab6f91c587
feat(developer): bundling of kmldmlc
...
Adds basic bundling of kmldmlc to Keyman Developer. Bundling script
built. Yet to come: .wxs integration.
2022-08-23 11:20:54 +10:00
Marc Durdin
1a0b67a242
feat(developer): LDML keyboard compiler - infrastructure
2022-08-23 10:27:34 +10:00
Sabine
6b52b97d54
chore(developer): mostly whitespace changes
2022-08-22 19:34:37 +02:00
Sabine
0595c2b3b4
chore(developer): replaced u16ncmp with u16nicmp at most places
2022-08-19 17:58:38 +02:00
Sabine
776d928785
chore(developer): tests using RTL run Ok ( changed RTu->RTL)
2022-08-19 08:01:50 +02:00
Sabine
1da8d115d8
chore(developer): added return Msgs for different types of errors while compiling
2022-08-19 08:01:28 +02:00
Steven R. Loomis
56aeee35c7
feat(core): add event_flags to process_event #7046
...
- pascal fix
2022-08-15 12:21:42 -05:00
Marc Durdin
f7189387b3
Merge pull request #7013 from keymanapp/fix/developer/keymanweb-readonly-groups-mismatches
...
fix(developer): compiler emitting garbage for readonly groups 🎾
2022-08-15 04:40:51 -05:00
Marc Durdin
1a001d6761
Merge pull request #7033 from keymanapp/fix/developer/7032-crash-compiling-ansi-for-web
...
fix(developer): prevent crash attempting to compile ansi keyboard 🎾
2022-08-15 02:16:02 -05:00
Marc Durdin
d9f8be05af
chore(developer): fixup u16ncat
2022-08-12 18:12:12 +02:00
Sabine
d93462a0ae
chore(developer): changef u16fmt
2022-08-12 17:06:56 +02:00
Steven R. Loomis
e8dff5cf4e
feat(core): add event_flags to process_event #7046
...
- use a constant, KM_KBP_EVENT_FLAG_DEFAULT for 0
- update pascal and python
- update linux and windows
2022-08-12 09:58:58 -05:00
Sabine
bc5bf6971b
chore(developer): fixed errors on running kmcompxtest
2022-08-12 16:46:10 +02:00
Sabine
d5d1cd7228
chore(developer): fopen
2022-08-12 16:04:49 +02:00
Sabine
7795ca5cd1
chore(developer): changed printf->u16sprintf
2022-08-12 15:41:25 +02:00
Sabine
56e4167e55
chore(developer): new functions e.g. string_from_wstring...
2022-08-12 15:32:07 +02:00
Sabine
051c3bbdea
Merge branch 'refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION' of https://github.com/keymanapp/keyman into refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION
2022-08-11 17:32:50 +02:00
Marc Durdin
b2b3b81952
chore(developer): enable tests for keyboards repo for kmcompx
2022-08-11 17:30:20 +02:00
Sabine
2f599c0365
chore(developer): changed #includes ".." -> <..>
2022-08-11 15:45:45 +02:00
Sabine
ed0859c9a5
chore(developer): changed #includes ".." -> <..>
2022-08-11 15:37:03 +02:00
Sabine
80529075e7
chore(developer): removed doubled/overwritten functions
2022-08-11 14:57:26 +02:00
Sabine
f11c1b0db9
chore(developer): removed commented sections ( ** old **) if files
2022-08-11 14:31:33 +02:00
Sabine
071af34ed0
chore(developer): removed files from kmcompx/include/
2022-08-11 14:21:06 +02:00
Sabine
b1428fbe96
chore(developer): chanched include of pch.h
2022-08-11 13:50:50 +02:00
Sabine
575ebae04c
chore(developer): removed kmcompx/include/kmx_file.h
2022-08-11 12:05:30 +02:00
Sabine
83f4a5c9a6
chore(developper): removed typedefs of kmcompcx.h
2022-08-11 11:55:40 +02:00
Marc Durdin
38d3d97520
Merge branch 'refactor/core/move-kmx_file.h-to-common' into refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION
2022-08-11 04:41:37 -05:00
Marc Durdin
41320f7d10
chore(common): refactor shared types into km_types.h
2022-08-11 11:13:00 +02:00
Sabine
3447b8aa2f
chore(developer): remove keyboardprocessor...
2022-08-11 10:55:52 +02:00
Sabine
bc53a08489
chore(developer): tidied up vkeys.H / .cpp
2022-08-11 10:39:56 +02:00