spiegel-keyman/developer/src/kmc
2022-09-16 09:25:57 +10:00
..
src chore(developer): improve kmc validation and corresponding tests 2022-09-14 11:47:14 +10:00
test chore: Update developer/src/kmc/test/fixtures/sections/meta/invalid-version-1.0.xml 2022-09-16 09:25:57 +10:00
.gitignore refactor(developer): rename kmldmlc to kmc 2022-09-09 09:13:39 +10:00
build.sh feat(developer): add kmx metadata to kmxplus compiles 2022-09-14 09:26:22 +10:00
bundle.inc.sh refactor(developer): rename kmldmlc to kmc 2022-09-09 09:13:39 +10:00
Makefile refactor(developer): rename kmldmlc to kmc 2022-09-09 09:13:39 +10:00
package.json refactor(developer): rename kmldmlc to kmc 2022-09-09 09:13:39 +10:00
README.md refactor(developer): rename kmldmlc to kmc 2022-09-09 09:13:39 +10:00
tsconfig.json refactor(developer): rename kmldmlc to kmc 2022-09-09 09:13:39 +10:00

Keyman Developer - LDML Keyboard Compiler

This package provides the following Keyman command line tool:

  • kmc — takes LDML Keyboard .xml sources and compiles them in to a KMXPlus .kmx file.

Install

Install kmlmdlc globally:

npm install -g @keymanapp/ldml-keyboard-compiler

Usage

To compile an LDML keyboard from its .xml source, use kmc:

kmc my-keyboard.xml --outFile my-keyboard.kmx

To see more command line options by using the --help option:

kmc --help

How to build from source

Run build.sh:

./build.sh configure build

or

nmake configure build

Once you have configured once, you should not normally need to do it again unless dependencies change. ./build.sh without parameters will do the default action, which is build.

How to run the tests

./build.sh test

How to prepare bundling for installation

./build.sh bundle --build-path <temp_path>

The temp_path must be a path outside the repository to avoid npm getting confused by the root package.json. This is called by inst/download.in.mak normally when building the Keyman Developer installer.

How to publish to NPM

./build.sh publish [--dry-run]

Publishes the current release to NPM. This should only be run from CI.