Summary: | [Patch] Error activating XKB configuration with MacBook keyboard model | ||
---|---|---|---|
Product: | xkeyboard-config | Reporter: | Bryce Harrington <bryce> |
Component: | General | Assignee: | xkb |
Status: | RESOLVED MOVED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | Martin.vGagern |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | Add aliases for mac layouts |
Description
Bryce Harrington
2009-10-12 15:23:38 UTC
Btw, here's the original bug report: I've got Intrepid installed on a MacBookPro5,1 with German keyboard layout. I started configuring the keyboads using gnome-keyboard-properties as available from the settings menu. I first selected the layout "Germany Macintosh, eliminate dead keys" and followed that up with changing the model to "MacBook/MacBook Pro (Intl)". This resulted in an error message "Error activating XKB configuration" which asked me to prvide this additional information: $ xprop -root | grep XKB _XKB_RULES_NAMES_BACKUP(STRING) = "evdev", "pc105", "de", "mac_nodeadkeys", "" _XKB_RULES_NAMES(STRING) = "evdev", "pc105", "de", "mac_nodeadkeys", "" $ gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd layouts = [] model = macbook79 options = [] As the error message from the dialog contains little actual information, I straced gnome-settings-daemon and identified a failing invocation of xkbcomp as the likely cause of the issue. By renaming /usr/bin/xkbcomp and replacing it with a wrapper script, I managed to get my hands on its input file and reproduce the issue: $ cat /tmp/fileJPMGgA xkb_keymap { xkb_keycodes { include "evdev+aliases(qwertz)" }; xkb_types { include "complete+numpad(mac)" }; xkb_compat { include "complete" }; xkb_symbols { include "pc+macintosh_vndr/de(mac_nodeadkeys)+inet(evdev)" }; xkb_geometry { include "macintosh(macbook79)" }; }; $ xkbcomp -I -I/usr/share/X11/xkb -xkm /tmp/fileJPMGgA /tmp/fileNtKqh7 Error: No Symbols named "mac_nodeadkeys" in the include file "macintosh_vndr/de" Exiting Abandoning symbols file "(null)" That looks like a much better error description. Looking at /usr/share/X11/xkb/symbols/macintosh_vndr/de I see that indeed it doesn't contain a description of "mac_nodeadkeys". Neither does it include /usr/share/X11/xkb/symbols/de where the mac_nodeadkeys would have been defined. Changing the layout to simple "Germany Eliminate dead keys", I could use the MacBook keyboard model all right, just as mac_nodeadkeys layout worked all right with a Generic keyboard model. However, both combinations don't fully match the key labels. My first concern is that for an obvious choice like a MacBook keyboard model with a mac keyboard layout, no obscure error messages should be generated by the Gnome UI. Secondly, it would be nice to actually get Mac keyboard layout, in order to stay consistent with OS X and friends. That's tough one. First of all, these days macs have usual PC kbds. Would it make sense to drop the rules referring to macintosh_vndr/* symbols? If necessary, variants could be added to the 'general' symbol files. What I will try to do is analyze the difference between macintosh_vndr/* symbols and normal symbols. BTW, I immediately see that 'es' can be dropped - it only includes general default 'es' variant;) -- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/issues/112. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.