Steven R. Loomis
17eba2d237
feat(developer): scancode and forms 🙀
...
- spec: 'hardware' is no longer an enum but a str.
Ripple effects here.
- custom scancodes and layouts are, interestingly, supported. But it's a warning.
- tests for bad scancodes.
Fixes : #9403
2023-09-30 22:06:39 -05:00
Steven R. Loomis
bdef1c48d3
fix(common): update keyman for removal of vkeys 🙀
...
dropped in upstream CLDR-17093
See #7135
2023-09-28 13:03:44 -05:00
Steven R. Loomis
6a54ebdd57
feat(developer): ldml scancodes 🙀
...
For: #9403
- read implied imports for scancodes
2023-09-22 15:20:20 -05:00
Steven R. Loomis
b6855e121f
feat(core): ldml: support <display id=...> in the 'disp' section 🙀
...
- "recent" addition to CLDR DTD
Fixes : #8717
2023-08-18 17:02:35 -05:00
Steven R. Loomis
b572f60c9e
feat(core): limit max marker to 0xD7FF 🙀
...
- updates per review, off by one in max count
- updated the spec
2023-08-11 15:01:51 -05:00
Steven R. Loomis
e010b6a5bc
feat(core): limit max marker to 0xD7FF 🙀
...
- to avoid mismatched surrogate pairs in markers
For: #9119
2023-08-09 14:54:37 -05:00
Steven R. Loomis
6632aafeec
spec(core): update per code review 🙀
...
- keep 'deadkey' out of the ldml code
- other renames
For: #9119
2023-08-03 19:00:21 -05:00
Steven R. Loomis
2a818b1ede
spec(core,developer): update marker spec 🙀
...
- use UC_SENTINEL CODE_DEADKEY …
- use U+FFFE for any marker
- add asserts between .ts and C++
- update generation
For: #9119
2023-08-02 18:04:48 -05:00
Steven R. Loomis
2211900e5f
feat(common): marker - move values into constants 🙀
...
- constants need to be shared with C++
#9119
2023-07-29 16:15:55 -05:00
Steven R. Loomis
ebcccbe0ef
feat(core): rearrange elem flags 🙀
...
- per review comments, make the elem flags clearer
For: #7377
2023-07-03 18:20:59 -05:00
Steven R. Loomis
88650e2085
feat(developer): uset in element string 🙀
...
- fix uset builder and other missing uset parts
- basic.xml passes
- update to constants
Fixes : #7377
2023-06-30 17:27:04 -05:00
Steven R. Loomis
248d423535
feat(common,developer,core): add uset section 🙀
...
- not emitted yet, basic scaffolding
- expanded type field in elem: str/char/set
For: #7377
2023-06-20 18:23:54 -05:00
Steven R. Loomis
c4fe843655
feat(common,developer): remove ordr and finl, add vars 🙀
...
- vars tests, doesn't pass yet
- tran tests and compilers stubbed out for now
For: #7377
2023-05-11 10:41:37 -05:00
Steven R. Loomis
284b062811
spec(core): update to spec for transforms and vars 🙀
...
- updates to constants .ts/.h
- doc updates
For: #7377
2023-05-11 10:41:37 -05:00
Steven R. Loomis
812fd1713a
spec(core): ldml tests for either shift/ctrl/alt 🙀
...
- lookup needs to handle either/neither/both cases for alt and ctrl
- and a bug in the test runner: would 'pass' if failed on exactly line 256 (0x100 & 0xFF == 0)
#7533
2023-03-02 17:13:47 -06:00
Steven R. Loomis
e1e5eea469
feat(core): ldml rename key2 to keys 🙀
...
- So in summary, since before #7532 basically keys was restructured, and the old 'keys' was moved into 'keys.kmap'.
#8069
2023-02-20 17:40:34 -06:00
Steven R. Loomis
8ea87aa828
feat(common): ldml: merge keys into key2 🙀
2023-02-16 12:29:19 -06:00
Steven R. Loomis
ac2366f460
feat(core): ldml C++ updates to modifiers 🙀
...
- spec: change caps value to 0x100 #7533
- add a 'mod_all' for validating valid modifier keys, plus tests
- add asserts on C++ side mapping modifiers to keyman constants
- use 'mod_all' to validate modifiers
- further fix modifier -> mod in binary
For: #7985 and related to #7533
2023-02-14 09:23:03 -06:00
Steven R. Loomis
5e445b32a1
feat(developer): ldml: modifier key updates 🙀
...
- per review comments
- drop opt, cmd, and shiftL/shiftR
For: #7533
2023-02-06 15:47:18 -06:00
Steven R. Loomis
af10312f84
feat(common): ldml modifier support 🙀
...
- spec: update spec for layr.mod field
- core/include/ldm: update constants
- bitfield modelled after s_modifier_names[] / LCTRLFLAG etc.
- new test case k_004_tinyshift, also update k_010_mt
- update const builder to ignore all *_map properties
- split utility out to utils, add test
For: #7533
(cherry picked from commit 0346bea488 )
2023-02-03 18:54:22 -06:00
Steven R. Loomis
ed30de2642
feat(core): ldml: add cldr version to constants 🙀
...
- also improve constant builder
- also fix build.sh so it uses sourcemaps
supports #7964
2023-01-27 12:45:00 -06:00
Steven R. Loomis
d7ce2191bf
feat(core): ldml: make hardware be an enum 🙀
...
For: #7986
2023-01-19 12:24:47 -06:00
Steven R. Loomis
cbb5af2ae7
feat(core): ldml: Drop padding: common,core 🙀
...
- also add some checking in the builder
- add a Constants.str_section_id() for debugging
- update basic.txt
For: #7987
2023-01-09 16:35:47 -06:00
Steven R. Loomis
63fa53a028
feat(core): ldml: updates to basic.txt and builders 🙀
...
- layr now passes comparison
For feat(developer): ldml: include all LDML data in kmx+ 🙀 #7532
2022-12-20 17:05:29 -06:00
Steven R. Loomis
b036fc5840
feat(core): ldml: basic: updates to basic.txt for layr 🙀
...
- key2 now passes!
- starting on layr
For feat(developer): ldml: include all LDML data in kmx+ 🙀 #753
2022-12-16 17:53:14 -06:00
Steven R. Loomis
02ab5b5851
feat(core): ldml: correct length of list 🙀
...
For #7532
2022-11-17 14:17:27 -06:00
Steven R. Loomis
64c5c796a1
feat(core): ldml: steps for list/key2 🙀
...
- update .ts constants
- update builder to support digits in section id
- update XML and stub KMXPlusData
For feat(developer): ldml: include all LDML data in kmx+ 🙀 #7532
2022-11-16 19:05:14 -06:00
Steven R. Loomis
0e6aa6566f
feat(core): ldml: First steps for layr 🙀
...
For feat(developer): ldml: include all LDML data in kmx+ 🙀 #7532
- dummy Layr class for compilation
- fleshed out Layr class
- CPP validation side
2022-11-16 19:04:55 -06:00
Steven R. Loomis
bf45412b72
feat(core): ldml: add constants for disp 🙀
...
For feat(developer): ldml: include all LDML data in kmx+ 🙀 #7532
depends on #7566
2022-11-02 13:36:24 -05:00
Marc Durdin
b6c4e21c1d
chore(developer): remove name from meta section
...
Fixes #7214 .
2022-09-09 08:57:52 +10:00
Marc Durdin
8e5ce35f4d
feat(developer): kmldmlc compiler and tests for transforms
...
Adds compilers and minimal unit tests for transform sections bksp,
finl, ordr, and tran, and cleans up problems in the corresponding
builders.
Adds a utility script for building test fixtures for manual analysis:
./build.sh build-fixtures
Refactors constants to give us design-time type safety once more.
2022-09-06 10:15:31 +10:00
Marc Durdin
9f5f8e976e
feat(core): ldml keyboard transform elements
...
Adds definitions for LDML keyboard transform elements `transforms`,
`backspaces`, and `reorders`, and the binary format sections `bksp`,
`elem`, `finl`, `ordr`, and `tran`.
Minimally updates the compiler so that it will build, but no other
changes to the compiler.
Compiler and Typescript updates to support building these sections will
come in the next PR.
2022-09-05 13:11:51 +10:00
Marc Durdin
b17805df3a
feat(core): add 'name' section
...
Updates compiler, headers and documentation for the 'name' section,
which will always be present as the LDML keyboard spec requires at least
one name in the `<names>` element.
2022-09-04 05:45:43 +10:00
Marc Durdin
702db90a71
feat(core): add version field to meta
...
Also adds semver package for validating the version field.
2022-09-02 14:13:10 +10:00
Marc Durdin
9756c28102
chore(developer): Merge branch 'feature-ldml' into feat/developer/ldml-compiler-kmxplus-builder
2022-08-26 05:17:05 +10:00
Steven R. Loomis
af3bcd2a15
feat(core): ldml: padding for vkey and loca 🙀
...
- vkey and loca needed padding before the variable part
- add static asserts to validate this padding
- update sample files (null and tiny)
#7043
2022-08-25 12:54:52 -05:00
Marc Durdin
23d9aad0a0
chore(developer): cleanup
2022-08-25 15:12:00 +10:00
Steven R. Loomis
b08f101f37
fix(core): ldml: goodbye multichar strings 🙀
...
- update builder to print out string as well as hex
- change to symbol name
2022-08-23 16:34:08 -05:00
Steven R. Loomis
fd4945c5ee
fix(core): ldml: goodbye multichar strings 🙀
...
- use 32 bit hex constants instead
#7098
2022-08-23 11:27:59 -05:00
Steven R. Loomis
f5db1749b4
style(core): ldml: review comments
...
#5015
- add copyright notices
2022-08-22 17:13:45 -05:00
Steven R. Loomis
70639c585b
feat(core): more kmx_plus_dump functions
...
- also update sample data again
2022-08-17 18:13:17 -05:00
Steven R. Loomis
95b4469ea8
feat(core): build out ldml structures
...
- checkin spec to repo
- new header: kmx_plus.h with data access structs and functions
- static asserts to validate header sizes
- early validation of data
- internal dump of kmx+ data
2022-08-17 15:53:53 -05:00
Steven R. Loomis
1f4509f29b
feat(core): constant generator between core and developer
...
- resolved review comments
2022-08-09 14:14:20 -05:00
Steven R. Loomis
d414be8313
feat(core): constant generator between core and developer
...
- change to manual regen of the .h file
2022-08-09 12:12:52 -05:00