KMConvert Command Line Keyboard Conversion Utility
KMConvert converts keyboard layouts between different formats. It is located in %ProgramFiles(x86)%\Keyman\Keyman Developer. KMConvert
will generate a full Keyman template project from the imported layout or data, in a new folder named with the ID of the keyboard. It will not overwrite
an existing folder.
The following parameters are available:
kmconvert import-windows -klid <source-klid> [additional-options]
kmconvert template -id <keyboard_id> [additional-options]
Available conversion modes
The conversion mode must be specified as the first parameter.
import-windows- Imports a Windows keyboard into a new Keyman keyboard project. The
-klidparameter is required. template- Creates a blank keyboard project in the repository template format. The
-idparameter is required.
Parameters
-klid <source-klid>- The KLID of the keyboard to import, per LoadKeyboardLayout. This must be an eight digit hex identifier, such
as
00000409for English (US), kbdus.dll. This parameter is only valid forimport-windowsconversion mode. -id <keyboard_id>- The id of the keyboard to create. Required for
template, optional forimport-windows. Inimport-windowsmode, you can use a format string with the placeholder%swhich will be replaced with the source filename, e.g.kbdus. If not specified, then the source filename will form the id of the generated keyboard. -nologo- Don't show the program description and copyright banner
-o <destination>- The target folder to write the keyboard project into, defaults to
.\ -name <data>- Name of the keyboard, e.g.
My First Keyboard,%s Basic. Format strings are only valid inimport-windowsmode;%swill be replaced with the friendly English name of the imported keyboard. -copyright <data>- Copyright string for the keyboard, defaults to
Copyright (C) -version <data>- Version number of the keyboard, defaults to
1.0 -languages <data>- Space-separated list of BCP 47 tags, e.g.
en-US tpi-PG -author <data>- Name of author of the keyboard, no default.


