# Error index {#error-index} This page lists the warnings and errors generated by xkbcommon. There are currently 20 entries. @todo The documentation of the log messages is a work in progress. ## Index | Code | Identifier | Description | Type | | --------- | ---------------------------- | ----------- | ---- | | [XKB-034] | `malformed-number-literal` | Warn on malformed number literals | Error | | [XKB-060] | `unsupported-modifier-mask` | Warn on unsupported modifier mask | Error | | [XKB-107] | `unrecognized-keysym` | Warn on unrecognized keysyms | Warning | | [XKB-183] | `cannot-infer-key-type` | Warn if no key type can be inferred | Warning | | [XKB-237] | `unsupported-group-index` | Warn when a group index is not supported | Error | | [XKB-286] | `undefined-key-type` | Warn if using an undefined key type | Warning | | [XKB-305] | `non-base-group-name` | Warn if a group name was defined for group other than the first one | Warning | | [XKB-312] | `unsupported-shift-level` | Warn when a shift level is not supported | Error | | [XKB-461] | `conflicting-key-symbol` | Warn if there are conflicting keysyms while merging keys | Warning | | [XKB-516] | `extra-symbols-ignored` | TODO: add description | Warning | | [XKB-578] | `wrong-field-type` | Warn when a field has not the expected type | Error | | [XKB-645] | `unknown-char-escape-sequence` | Warn on unknown escape sequence in string literal | Warning | | [XKB-700] | `multiple-groups-at-once` | Warn if a key defines multiple groups at once | Warning | | [XKB-769] | `invalid-syntax` | The syntax is invalid and the file cannot be parsed | Error | | [XKB-770] | `undefined-keycode` | TODO: add description | Warning | | [XKB-800] | `conflicting-modmap` | Warn if there are conflicting modmap definitions | Warning | | [XKB-883] | `conflicting-key-action` | Warn if there are conflicting actions while merging keys | Warning | | [XKB-893] | `conflicting-key-type` | Warn if there are conflicting key types while merging groups | Warning | | [XKB-935] | `conflicting-key-fields` | Warn if there are conflicting fields while merging keys | Warning | | [XKB-965] | `unresolved-keymap-symbol` | Warn if using a symbol not defined in the keymap | Warning | ## Details ### XKB-034 – Malformed number literal {#XKB-034}
Since
1.0.0
Type
Error
Summary
Warn on malformed number literals
xkbcommon can parse the following number literal formats: - *decimal integer:* 1, 123, etc. - *decimal floating-point number:* 1.23, etc. - *hexadecimal integer:* prefixed with “0x”: 0x123, 0xff, 0xAB, etc. ### XKB-060 – Unsupported modifier mask {#XKB-060}
Since
1.0.0
Type
Error
Summary
Warn on unsupported modifier mask
### XKB-107 – Unrecognized keysym {#XKB-107}
Since
1.0.0
Type
Warning
Summary
Warn on unrecognized keysyms
xkbcommon replaces keysyms it does not recognize by the keysym `NoSymbol`. You may find the list of supported keysyms in `include/xkbcommon/xkbcommon-keysyms.h`. #### Examples
Unrecognized keysym “`coma`” **Error message:** ``` xkbcommon: WARNING: [XKB-107] de:31:20: unrecognized keysym "coma" ``` xkbcommon does not recognize the keysym “`coma`”. It is most probably a typo for “comma”. See: `XKB_KEY_comma` in `include/xkbcommon/xkbcommon-keysyms.h`. **Fix:**
Before
```c key {[ coma, semicolon, periodcentered, multiply ]}; ```
After
```c key {[ comma, semicolon, periodcentered, multiply ]}; ```
### XKB-183 – Cannot infer key type {#XKB-183}
Since
1.0.0
Type
Warning
Summary
Warn if no key type can be inferred
### XKB-237 – Unsupported group index {#XKB-237}
Since
1.0.0
Type
Error
Summary
Warn when a group index is not supported
xkbcommon supports group index in the range (1..4). ### XKB-286 – Undefined key type {#XKB-286}
Since
1.0.0
Type
Warning
Summary
Warn if using an undefined key type
### XKB-305 – Non base group name {#XKB-305}
Since
1.0.0
Type
Warning
Summary
Warn if a group name was defined for group other than the first one
### XKB-312 – Unsupported shift level {#XKB-312}
Since
1.0.0
Type
Error
Summary
Warn when a shift level is not supported
Shift levels are _one_-indexed. xkbcommon supports two formats of shift levels: as numbers and as identifiers `LevelN`, where `N` is in the range (1..8). ### XKB-461 – Conflicting key symbol {#XKB-461}
Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting keysyms while merging keys
### XKB-516 – Extra symbols ignored {#XKB-516}
Since
1.0.0
Type
Warning
Summary
TODO: add description
### XKB-578 – Wrong field type {#XKB-578}
Since
1.0.0
Type
Error
Summary
Warn when a field has not the expected type
### XKB-645 – Unknown char escape sequence {#XKB-645}
Since
1.0.0
Type
Warning
Summary
Warn on unknown escape sequence in string literal
xkbcommon support the following escape sequences in string literals: | Escape sequence | Corresponding character | | --------------- | ----------------------------------- | | `\b` | `U+0008` Backspace | | `\t` | `U+0009` Character tabulation | | `\n` | `U+000A` Line feed | | `\v` | `U+000B` Vertical tabulation | | `\f` | `U+000C` Form feed | | `\r` | `U+000D` Carriage return | | `\e` | `U+001B` Escape | | `\\` | `U+005C` Backslash | | `\NNN` | _Octal_ escape, from `\0` to `\777` | ### XKB-700 – Multiple groups at once {#XKB-700}
Since
1.0.0
Type
Warning
Summary
Warn if a key defines multiple groups at once
### XKB-769 – Invalid syntax {#XKB-769}
Since
1.0.0
Type
Error
Summary
The syntax is invalid and the file cannot be parsed
### XKB-770 – Undefined keycode {#XKB-770}
Since
1.0.0
Type
Warning
Summary
TODO: add description
### XKB-800 – Conflicting modmap {#XKB-800}
Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting modmap definitions
@todo detailed explanation and examples ### XKB-883 – Conflicting key action {#XKB-883}
Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting actions while merging keys
### XKB-893 – Conflicting key type {#XKB-893}
Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting key types while merging groups
### XKB-935 – Conflicting key fields {#XKB-935}
Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting fields while merging keys
### XKB-965 – Unresolved keymap symbol {#XKB-965}
Since
1.0.0
Type
Warning
Summary
Warn if using a symbol not defined in the keymap
[XKB-034]: @ref XKB-034 [XKB-060]: @ref XKB-060 [XKB-107]: @ref XKB-107 [XKB-183]: @ref XKB-183 [XKB-237]: @ref XKB-237 [XKB-286]: @ref XKB-286 [XKB-305]: @ref XKB-305 [XKB-312]: @ref XKB-312 [XKB-461]: @ref XKB-461 [XKB-516]: @ref XKB-516 [XKB-578]: @ref XKB-578 [XKB-645]: @ref XKB-645 [XKB-700]: @ref XKB-700 [XKB-769]: @ref XKB-769 [XKB-770]: @ref XKB-770 [XKB-800]: @ref XKB-800 [XKB-883]: @ref XKB-883 [XKB-893]: @ref XKB-893 [XKB-935]: @ref XKB-935 [XKB-965]: @ref XKB-965