spiegel-keyman/resources/standards-data/ldml-keyboards
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
..
46 chore(resources,core): update BNF and tests for escaping chars 2025-02-19 16:55:59 -06:00
fetch-latest-cldr.sh maint(common): consolidate builder scripts 2025-08-02 08:11:24 +10:00
fixup-schema.js chore(resources, developer,core): CLDR 46 and workaround 2025-01-30 15:41:34 -06:00
readme.md chore(resources): prepare scripts for updating CLDR from latest v45 2024-04-19 17:25:21 -05:00
unicode-license.txt chore(resources): ldml update out of techpreview 🙀 2024-03-02 22:40:38 -06:00
verify-version.mjs chore(resources): prepare scripts for updating CLDR from latest v45 2024-04-19 17:25:21 -05:00

ldml-keyboards

Data is versioned, so each directory has its version such as 45.

How to Update

  • Checkout CLDR, preferably a release version, somewhere such as /src/cldr
  • run fetch-latest-cldr.sh 45 /src/cldr (where '45' is the CLDR version)
  • check results, run tests, check in and open a PR

Data Format

Each directory contains:

  • ldmlKeyboard3.dtd - the DTD file

  • ldmlKeyboard3.xsd - the XSD file, automatically converted from the DTD using Visual Studio, hand tweaked as necessary

  • ldml-keyboard3.schema.json - the JSON schema file, automatically converted from the XSD using xsd2json (https://github.com/Mermade/jgeXml), hand tweaked as necessary:

    • change toplevel "id" to "$id"
    • add "type": "object" to /keyboard
    • change /keyboard/keys/key type to "array"
  • imports/ - the importable data files (TODO-LDML)

License