-
-
Notifications
You must be signed in to change notification settings - Fork 111
KMP Metadata File (kmp.inf and kmp.json)
kmp.inf
is based on the INI format.
NOTE: Replaced by https://help.keyman.com/developer/11.0/reference/file-types/metadata
kmp.json
is a parallel format but in a more easily parseable JSON format. (Schema)
Required: Yes
Type: Float
Float: Version number of Keyman Developer/Desktop
Example: Version=7.0
Type: String
String: Name of image to be shown during installation
Example: GraphicFile=khm.jpg
Type: String
String: Face name of font
Example: KhmerOS.ttf=Khmer OS
Required: Yes
Type: String,String
String: Package Name
String: Empty string (for legacy support)
Example: Name="NiDa Khmer",""
Type: String,String
String: Version number of package in dotted number format. Defaults to "1.0" if missing.
String: Empty string (for legacy support)
Example: Version="1.1",""
Type: String
String Copyright information
Example: Copyright="© 2006 State Library of Victoria"
Type: String,String
String: Name
String: Email address
Example: Author="John Doe","mailto:[email protected]"
Type: String,String
String: Description of URL
String: URL associated with keyboard
Example: WebSite="Sample Keyboard Home","https://samplekeyboard.com"
There is one key for each file in the KMP. i
is zero indexed.
Type: String,String,Integer
String: Description of file
String: Filename in package
Integer: 0 (for legacy support)
Example:
0="File khmer10.kvk","khmer10.kvk",0
1="Keyboard NiDA Khmer","khmer10.kmx",0
2="Package information","kmp.inf",0
There is one section for each keyboard in the KMP and i
is zero-indexed.
For example, [Keyboard0]
, [Keyboard1]
, [Keyboard2]
, etc.
Required: Yes
Type: String
String: The human readable name of the keyboard. This will usually differ from the ID.
Example: name=Khmer (NiDA)
Required: Yes
Type: String
String: The identifier for the keyboard, equivalent to filename prefix (excluding version).
Example: ID=kbdkhmr
This would then match kbdkhmr.kmx
, kbdkhmr.kldml
, kbdkhmr-1.1.js
Required: Yes
Type: String
String: Version of the keyboard
Example: Version=1.1
Required: No
Type: Boolean
String: True (1) if the keyboard is RTL
Example: Version=1
There is one key for each language that the keyboard supports. i
is zero-indexed.
Required: At least 1
Type: String,String
String: Lower case full BCP 47 language tag
String: Description of language name
Example:
Language0=km,Central Khmer
Language1=har-Latn,Harari with Latin script
Type: String
String: Filename of .ttf used for the on-screen keyboard.
Example: OSKFont=KhmerOS.ttf
Type: String
String: Filename of .ttf used for display text within the mobile app.
Example: DisplayFont=KhmerOS.ttf