xkbcomp error: Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols
Submitted by Christian Weiske
Assigned to xkb..@..bat.ru
Description
Everytime I run X manually, I get the following error message:
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Type "ONE_LEVEL" has 1 levels, but `<RALT>` has 2 symbols
> Ignoring extra symbols
Errors from xkbcomp are not fatal to the X server
Since this is really annoying to me, I tracked it down to:
/usr/share/X11/xkb/symbols/level3:
// the default behavior is for the right Alt key (AltGr) to generate the
// third engraved symbol
default partial modifier_keys
xkb_symbols "ralt_switch" {
key `<RALT>` {
type[Group1]="ONE_LEVEL",
symbols[Group1] = [ ISO_Level3_Shift ]
};
modifier_map Mod5 { ISO_Level3_Shift };
};
and /usr/share/X11/xkb/symbols/altwin:
partial modifier_keys
xkb_symbols "meta_alt" {
key `<LALT>` { [ Alt_L, Meta_L ] };
key `<RALT>` { [ Alt_R, Meta_R ] };
modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R };
};
Here you see that two symbols are assigned to RALT, which is defined as ONE_LEVEL. Commenting out the RALT line in /usr/share/X11/xkb/symbols/altwin helps, as well as changing ONE_LEVEL to TWO_LEVEL in /usr/share/X11/xkb/symbols/level3.
I don't know which one is the correct way. I only know that hundreds of people have the same warnings (search the web for the message). It would be great if that issue could be fixed. The Gentoo devs sent me here; see the related bug.
Related:
http://bugs.gentoo.org/show_bug.cgi?id=269931
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=291853
Reproducible: Always
Steps to Reproduce:
- start X as root on the shell
- watch the output
Actual Results:
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Type "ONE_LEVEL" has 1 levels, but `<RALT>` has 2 symbols
> Ignoring extra symbols
Errors from xkbcomp are not fatal to the X server
Expected Results:
No warning/error
I use x11-apps/xkbcomp 1.0.5 and x11-apps/setxkbmap 1.0.4, xorg-server 1.5.3-r5, x11-libs/libxkbfile 1.0.5
My xorg.conf lists no keyboard configuration, but /etc/hal/fdi/policy/10-keymap.fdi contains:
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
`<device>`
<match key="info.capabilities" contains="input.keymap">
<append key="info.callouts.add" type="strlist">hal-setup-keymap`</append>`
`</match>`
<match key="info.capabilities" contains="input.keys">
<merge key="input.xkb.rules" type="string">base`</merge>`
<merge key="input.x11_driver" type="string">evdev`</merge>`
<merge key="input.xkb.layout" type="string">de`</merge>`
<merge key="input.xkb.model" type="string">macintosh`</merge>`
`</match>`
`</device>`
`</deviceinfo>`