libxkbcommon 1.7.0
Error index

This page lists the warnings and errors generated by xkbcommon. There are currently 55 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-043 conflicting-key-type-preserve-entries Conflicting “preserve” entries in a key type Warning
XKB-060 unsupported-modifier-mask Warn on unsupported modifier mask Error
XKB-077 expected-array-entry Expected an array entry, but the index is missing Error
XKB-101 illegal-keycode-alias Illegal keycode alias with the name of a real key Warning
XKB-107 unrecognized-keysym Warn on unrecognized keysyms Warning
XKB-123 undeclared-virtual-modifier A virtual modifier is used before being declared Error
XKB-134 insufficient-buffer-size A buffer has an insufficient size Error
XKB-150 wrong-statement-type The type of the statement is not allowed in the context Error
XKB-172 unsupported-geometry-section Geometry sections are not supported Warning
XKB-183 cannot-infer-key-type Warn if no key type can be inferred Warning
XKB-193 invalid-escape-sequence Invalid escape sequence in a string Warning
XKB-195 illegal-key-type-preserve-result The result of a key type “preserve” entry must be a subset of its input modifiers. Warning
XKB-203 invalid-include-statement Syntax error in the include statement Error
XKB-206 invalid-modmap-entry A modmap entry is invalid Error
XKB-237 unsupported-group-index Warn when a group index is not supported Error
XKB-239 conflicting-key-type-level-names The name of a key type level is defined multiple times. Warning
XKB-254 invalid-set-default-statement Invalid statement setting default values Error
XKB-266 conflicting-key-type-map-entry Conflicting “map” entries in type definition Warning
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-338 included-file-not-found Could not find a file used in an include statement Error
XKB-345 unknown-operator Use of an operator that is unknown and thus unsupported Error
XKB-378 duplicate-entry An entry is duplicated and will be ignored Warning
XKB-386 recursive-include Included files form cycle Error
XKB-407 conflicting-key-type-definitions Conflicting definitions of a key type Warning
XKB-428 global-defaults-wrong-scope A global defaults statement is in a wrong scope and should be moved Error
XKB-433 missing-default-section Missing default section in included file Warning
XKB-461 conflicting-key-symbol Warn if there are conflicting keysyms while merging keys Warning
XKB-478 invalid-operation The operation is invalid in the context Error
XKB-489 numeric-keysym Warn on numeric keysym (other than 0-9) Warning
XKB-516 extra-symbols-ignored TODO: add description Warning
XKB-523 conflicting-key-name Conflicting definitions of a key name or alias Warning
XKB-550 allocation-error Cannot allocate memory Error
XKB-578 wrong-field-type Warn when a field has not the expected type Error
XKB-623 invalid-real-modifier Invalid real modifier Error
XKB-645 unknown-char-escape-sequence Warn on unknown escape sequence in string literal Warning
XKB-661 invalid-included-file The target file of an include statement could not be processed Error
XKB-700 multiple-groups-at-once Warn if a key defines multiple groups at once Warning
XKB-711 unsupported-symbols-field A legacy X11 symbol field is not supported Warning
XKB-769 invalid-syntax The syntax is invalid and the file cannot be parsed Error
XKB-770 undefined-keycode Reference to an undefined keycode Warning
XKB-784 invalid-expression-type An expression has not the expected type Error
XKB-796 invalid-value A value is invalid and will be ignored Error
XKB-800 conflicting-modmap Warn if there are conflicting modmap definitions Warning
XKB-812 unknown-field A field is unknown and will be ignored Error
XKB-883 conflicting-key-action Warn if there are conflicting actions while merging keys Warning
XKB-893 conflicting-key-type-merging-groups Warn if there are conflicting key types while merging groups Warning
XKB-901 conflicting-key-symbols-entry Conflicting symbols entry for a key Error
XKB-903 missing-symbols-group-name-index Missing group index in a group name entry Warning
XKB-935 conflicting-key-fields Warn if there are conflicting fields while merging keys Warning
XKB-949 invalid-identifier An identifier is used but is not built-in Error
XKB-965 unresolved-keymap-symbol Warn if using a symbol not defined in the keymap Warning
XKB-971 undeclared-modifiers-in-key-type Some modifiers used in a key type “map” or “preserve” entry are not declared Warning

Details

XKB-034 – Malformed number literal

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-043 – Conflicting key type preserve entries

Since
1.0.0
Type
Warning
Summary
Conflicting “preserve” entries in a key type

XKB-060 – Unsupported modifier mask

Since
1.0.0
Type
Error
Summary
Warn on unsupported modifier mask

XKB-077 – Expected array entry

Since
1.0.0
Type
Error
Summary
Expected an array entry, but the index is missing

XKB-101 – Illegal keycode alias

Since
1.0.0
Type
Warning
Summary
Illegal keycode alias with the name of a real key

XKB-107 – Unrecognized keysym

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
key <AB08> {[ coma, semicolon, periodcentered, multiply ]};
After
key <AB08> {[ comma, semicolon, periodcentered, multiply ]};

XKB-123 – Undeclared virtual modifier

Since
1.0.0
Type
Error
Summary
A virtual modifier is used before being declared

XKB-134 – Insufficient buffer size

Since
1.0.0
Type
Error
Summary
A buffer has an insufficient size

XKB-150 – Wrong statement type

Since
1.0.0
Type
Error
Summary
The type of the statement is not allowed in the context

XKB-172 – Unsupported geometry section

Since
1.0.0
Type
Warning
Summary
Geometry sections are not supported

XKB-183 – Cannot infer key type

Since
1.0.0
Type
Warning
Summary
Warn if no key type can be inferred

XKB-193 – Invalid escape sequence

Since
1.0.0
Type
Warning
Summary
Invalid escape sequence in a string

XKB-195 – Illegal key type preserve result

Since
1.0.0
Type
Warning
Summary
The result of a key type “preserve” entry must be a subset of its input modifiers.

XKB-203 – Invalid include statement

Since
1.0.0
Type
Error
Summary
Syntax error in the include statement

XKB-206 – Invalid modmap entry

Since
1.0.0
Type
Error
Summary
A modmap entry is invalid

XKB-237 – Unsupported group index

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-239 – Conflicting key type level names

Since
1.0.0
Type
Warning
Summary
The name of a key type level is defined multiple times.

XKB-254 – Invalid set default statement

Since
1.0.0
Type
Error
Summary
Invalid statement setting default values

XKB-266 – Conflicting key type map entry

Since
1.0.0
Type
Warning
Summary
Conflicting “map” entries in type definition

XKB-286 – Undefined key type

Since
1.0.0
Type
Warning
Summary
Warn if using an undefined key type

XKB-305 – Non base group name

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

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-338 – Included file not found

Since
1.0.0
Type
Error
Summary
Could not find a file used in an include statement

XKB-345 – Unknown operator

Since
1.0.0
Type
Error
Summary
Use of an operator that is unknown and thus unsupported

XKB-378 – Duplicate entry

Since
1.0.0
Type
Warning
Summary
An entry is duplicated and will be ignored

XKB-386 – Recursive include

Since
1.7.0
Type
Error
Summary
Included files form cycle

XKB-407 – Conflicting key type definitions

Since
1.0.0
Type
Warning
Summary
Conflicting definitions of a key type

The given key type is defined multiple times, but only one definition is kept.

XKB-428 – Global defaults wrong scope

Since
1.0.0
Type
Error
Summary
A global defaults statement is in a wrong scope and should be moved

Examples

Default key type in key statement

Error message:

xkbcommon: ERROR: [XKB-428] Cannot set global defaults for "type" element
within a key statement: move statements to the global file scope.
Assignment to "key.type" ignored.

Fix:

Before
key <AE01> {
key.type = "FOUR_LEVEL_SEMIALPHABETIC",
symbols = [q, Q, at]
};
After
// Either put default key type in global file scope
key.type = "FOUR_LEVEL_SEMIALPHABETIC";
key <AE01> { [q, Q, at] };
// or use a local setting (unqualified, i.e. without `key.`)
key <AE01> {
type = "FOUR_LEVEL_SEMIALPHABETIC",
symbols = [ q, Q, at ]
};

XKB-433 – Missing default section

Since
1.0.0
Type
Warning
Summary
Missing default section in included file

When using an include statement, the included file may contains multiple sections. The include statement may specify the name of the section to include, or leave it unspecified. In the latter case, the included file must then define a default section. The present warning is shown when no default section is defined.

To solve this, either fix the include statement by specifying the exact section to include, or declare a default section in the included file.

XKB-461 – Conflicting key symbol

Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting keysyms while merging keys

XKB-478 – Invalid operation

Since
1.0.0
Type
Error
Summary
The operation is invalid in the context

XKB-489 – Numeric keysym

Since
1.6.0
Type
Warning
Summary
Warn on numeric keysym (other than 0-9)

Numeric keysyms are not human-friendly. Use the corresponding named keysym or Unicode keysym, if available.

Examples

Hexadecimal keysym 0x1001ed0

Error message:

xkbcommon: WARNING: [XKB-489] numeric keysym "0x1001ed0"

Fix:

Before
key <AE01> { [ 0x1001ed0] };
After
// Preferred form: human-friendly
key <AE01> { [ Ocircumflexacute ] };
// or
key <AE01> { [ U1ED0 ] };

XKB-516 – Extra symbols ignored

Since
1.0.0
Type
Warning
Summary
TODO: add description

XKB-523 – Conflicting key name

Since
1.0.0
Type
Warning
Summary
Conflicting definitions of a key name or alias

XKB-550 – Allocation error

Since
1.0.0
Type
Error
Summary
Cannot allocate memory

XKB-578 – Wrong field type

Since
1.0.0
Type
Error
Summary
Warn when a field has not the expected type

XKB-623 – Invalid real modifier

Since
1.0.0
Type
Error
Summary
Invalid real modifier

XKB-645 – Unknown char escape sequence

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-661 – Invalid included file

Since
1.0.0
Type
Error
Summary
The target file of an include statement could not be processed

XKB-700 – Multiple groups at once

Since
1.0.0
Type
Warning
Summary
Warn if a key defines multiple groups at once

XKB-711 – Unsupported symbols field

Since
1.0.0
Type
Warning
Summary
A legacy X11 symbol field is not supported

XKB-769 – Invalid syntax

Since
1.0.0
Type
Error
Summary
The syntax is invalid and the file cannot be parsed

XKB-770 – Undefined keycode

Since
1.0.0
Type
Warning
Summary
Reference to an undefined keycode

XKB-784 – Invalid expression type

Since
1.0.0
Type
Error
Summary
An expression has not the expected type

XKB-796 – Invalid value

Since
1.0.0
Type
Error
Summary
A value is invalid and will be ignored

XKB-800 – Conflicting modmap

Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting modmap definitions
Todo
detailed explanation and examples

XKB-812 – Unknown field

Since
1.0.0
Type
Error
Summary
A field is unknown and will be ignored

XKB-883 – Conflicting key action

Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting actions while merging keys

XKB-893 – Conflicting key type merging groups

Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting key types while merging groups

XKB-901 – Conflicting key symbols entry

Since
1.0.0
Type
Error
Summary
Conflicting symbols entry for a key

XKB-903 – Missing symbols group name index

Since
1.0.0
Type
Warning
Summary
Missing group index in a group name entry

XKB-935 – Conflicting key fields

Since
1.0.0
Type
Warning
Summary
Warn if there are conflicting fields while merging keys

XKB-949 – Invalid identifier

Since
1.0.0
Type
Error
Summary
An identifier is used but is not built-in

XKB-965 – Unresolved keymap symbol

Since
1.0.0
Type
Warning
Summary
Warn if using a symbol not defined in the keymap

XKB-971 – Undeclared modifiers in key type

Since
1.0.0
Type
Warning
Summary
Some modifiers used in a key type “map” or “preserve” entry are not declared

The modifiers used in map or preserve entries should be declared using the entry modifiers in the key type.