KMComp Command-line Compiler
KMComp is the command-line compiler included in Keyman Developer. It is located in
%ProgramFiles(x86)%\Tavultesoft\Keyman Developer 9.0.
The following parameters are available:
kmcomp [-s[s]] [-nologo] [-c] [-d] [-w] [-e [installer.msi [-u]]] [-l username password] [-p RuntimeSourcePath] infile [-t target] [outfile.kmx|outfile.js [error.log]]
General compiler parameters
- A .kmn file (Keyboard Source), .kps file (Package Source), or .kpj (project). Required in compiler mode. If
a .kpj is specified, the .kpj will determine output paths and all files referenced in the project will be
- Generate an output file for Windows/Mac OS X; can only be specified for a .kmn
infile. Optional; if omitted, generates an output file with the same base name as the input file.
- Generate an output file for KeymanWeb/touch devices; can only be specified for a .kmn
- Write output to a text file specified by error.log instead of stdout.
- Mostly silent; don't print information-level messages
- Fully silent; don't print anything except fatal internal errors
- Don't print the compiler description and registration
- Clean target(s) instead of building (only for .kpj)
- Include debug information
- Treat warnings as errors
- Build only the
targetfile from the project (only for .kpj)
Branding Pack parameters
-l username password
- Login and password override for compiling product installers
- Set Keyman runtime source path to RuntimeSourcePath
- Create a .exe installer for a package as well, using installer.msi if specified
- update .kps to refer to latest version of installer.msi
Encryption mode is used with the Branding Pack to prepare files for distribution.
kmcomp -x filetoencrypt [product.pxx]
- Name of the .kmx or .kct file to encrypt. If .kmx, then
product.pxxmust also be specified.
- Name of product to encrypt a .kmx file for.