--- title: Compiler Messages Reference for @keymanapp/kmc-ldml --- Code | Identifier | Message ------|------------|--------- [KM00001](km00001) | `HINT_NormalizationDisabled` | normalization=disabled is not recommended\. [KM00002](km00002) | `ERROR_InvalidLocale` | Invalid BCP 47 locale form '<param>' [KM00003](km00003) | `ERROR_HardwareLayerHasTooManyRows` | 'hardware' layer has too many rows [KM00004](km00004) | `ERROR_RowOnHardwareLayerHasTooManyKeys` | Row \#<param> on 'hardware' <param> layer for modifier none has too many keys [KM00005](km00005) | `ERROR_KeyNotFoundInKeyBag` | Key '<param>' in position \#<param> on row \#<param> of layer <param>, form '<param>' not found in key bag [KM00006](km00006) | `HINT_OneOrMoreRepeatedLocales` | After minimization, one or more locales is repeated and has been removed [KM00007](km00007) | `ERROR_InvalidFile` | The source file has an invalid structure: <param> [KM00008](km00008) | `HINT_LocaleIsNotMinimalAndClean` | Locale '<param>' is not minimal or correctly formatted and should be '<param>' [KM00009](km00009) | `ERROR_InvalidScanCode` | Form '<param>' has invalid/unknown scancodes '<param>' [KM0000A](km0000a) | `WARN_CustomForm` | Custom <form id="<param>"> element\. Key layout may not be as expected\. [KM0000B](km0000b) | `ERROR_GestureKeyNotFoundInKeyBag` | Key '<param>' not found in key bag, referenced from other '<param>' in <param> [KM0000D](km0000d) | `ERROR_InvalidVersion` | Version number '<param>' must be a semantic version format string\. [KM0000E](km0000e) | `ERROR_MustBeAtLeastOneLayerElement` | The source file must contain at least one layer element\. [KM00010](km00010) | `ERROR_DisplayIsRepeated` | display has more than one display entry\. [KM00011](km00011) | `ERROR_KeyMissingToGapOrSwitch` | key id='<param>' must have either output=, gap=, or layerId=\. [KM00012](km00012) | `ERROR_ExcessHardware` | layers formId=<param>: Can only have one non\-'touch' element [KM00013](km00013) | `ERROR_InvalidHardware` | layers has invalid value formId=<param> [KM00014](km00014) | `ERROR_InvalidModifier` | layer has invalid modifiers='<param>' on layer id=<param> [KM00015](km00015) | `ERROR_MissingFlicks` | key id=<param> refers to missing flickId=<param> [KM00016](km00016) | `ERROR_DuplicateVariable` | duplicate variables: id=<param> [KM00018](km00018) | `ERROR_InvalidTransformsType` | Invalid transforms types: '<param>' [KM00019](km00019) | `ERROR_DuplicateTransformsType` | Duplicate transforms types: '<param>' [KM0001A](km0001a) | `ERROR_MixedTransformGroup` | transformGroup cannot contain both reorder and transform elements [KM0001B](km0001b) | `ERROR_EmptyTransformGroup` | transformGroup must have either reorder or transform elements [KM0001C](km0001c) | `ERROR_MissingStringVariable` | Reference to undefined string variable: $\{<param>\} [KM0001D](km0001d) | `ERROR_MissingSetVariable` | Reference to undefined set variable: $\[<param>\] [KM0001E](km0001e) | `ERROR_MissingUnicodeSetVariable` | Reference to undefined UnicodeSet variable: $\[<param>\] [KM0001F](km0001f) | `ERROR_NeedSpacesBetweenSetVariables` | Need spaces between set variables: <param> [KM00020](km00020) | `ERROR_CantReferenceSetFromUnicodeSet` | Illegal use of set variable from within UnicodeSet: $\[<param>\] [KM00021](km00021) | `ERROR_MissingMarkers` | Markers used for matching but not defined: <param> [KM00022](km00022) | `ERROR_DisplayNeedsToOrId` | display needs output= or keyId=, but not both [KM00023](km00023) | `HINT_PUACharacters` | File contains <param> PUA character\(s\), including Illegal \(U\+NAN\) [KM00024](km00024) | `WARN_UnassignedCharacters` | File contains <param> unassigned character\(s\), including Illegal \(U\+NAN\) [KM00025](km00025) | `ERROR_IllegalCharacters` | File contains <param> illegal character\(s\), including Illegal \(U\+NAN\) [KM00026](km00026) | `HINT_CharClassImplicitDenorm` | File has character classes which span non\-NFD character\(s\), including Illegal \(U\+NAN\)\. These will not match any text\. [KM00027](km00027) | `WARN_CharClassExplicitDenorm` | File has character classes which include non\-NFD characters\(s\), including Illegal \(U\+NAN\)\. These will not match any text\. [KM00028](km00028) | `ERROR_UnparseableReorderSet` | Illegal UnicodeSet "<param>" in reorder "<param> [KM00030](km00030) | `ERROR_InvalidQuadEscape` | Invalid escape "\\u0000"\. Hint: Use "\\u\{<param>\}" [KM00F00](km00f00) | `ERROR_UnparseableTransformFrom` | Invalid transform from="<param>": "<param>" [KM00F01](km00f01) | `ERROR_IllegalTransformDollarsign` | Invalid transform from="<param>": Unescaped dollar\-sign \($\) is not valid transform syntax\. [KM00F02](km00f02) | `ERROR_TransformFromMatchesNothing` | Invalid transfom from="<param>": Matches an empty string\. [KM00F03](km00f03) | `ERROR_IllegalTransformPlus` | Invalid transform from="<param>": Unescaped plus \(\+\) is not valid transform syntax\. [KM00F04](km00f04) | `ERROR_IllegalTransformAsterisk` | Invalid transform from="<param>": Unescaped asterisk \(\*\) is not valid transform syntax\.