[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: xkb-data: Help needed for Macintosh keyboards



On Wed, Aug 30, 2006 at 06:55:18PM +0200, Ben Mueller wrote:
> Hi,
>
> I'm very happy that someone is taking care of the macintosh keyboards!
>
> First I switched to
>   XkbRules:   xorg
>   XkbModel:   pc105
>   XkbLayout:  de
>   XkbVariant: mac_nodeadkeys
>   XkbOptions: lv3:lalt_switch
> which is also provided by xkb-data 0.8-8 in unstable. This is working well
> except KP_Equal. The key on my PowerBook5,2 (15'' with ADB keyboard) emits
> keycode 157 while keycodes/xfree86 maps <KPEQ> to keycode 126. (I would
> like to file a bug about this, but I don't know against which package.)

Have a look at /usr/share/X11/xkb/keycodes/macintosh:
  default xkb_keycodes "macintosh" {
     include "xfree86"

     <FK13> = 182;
     <FK14> = 183;
     <FK15> = 184;
     <KPEQ> = 157;
  };
and you will see why your KP_Equal key has the wrong keycode ;)

> Then I tested
>   XkbRules:     xorg
>   XkbModel:     macintosh
>   XkbLayout:    de
>   XkbVariant:   nodeadkeys
>   XkbOptions:   lv3:lalt_switch
> from xkb-data 0.8-8exp1. This time <KPEQ> is working.

Yes, this is indeed what I would have tried myself.

> But I have no shift key anymore. Thus I can't type any symbol from
> level 2 or level 4.  Furthermore I have no ctrl, no command (win key),
> no funcion keys and no navigation (left, right, up, down ...). This is
> no fun ...

There is a bug in rules/base:
 $mac $macvendorlayouts nodeadkeys =
macintosh_vndr/us(extended)+macintosh_vndr/%l%(v)
has to be replaced by
 $mac $macvendorlayouts nodeadkeys =
pc(pc105)+macintosh_vndr/us(extended)+macintosh_vndr/%l%(v)
(ie. 'pc(pc105)+' has to be prepended)
It has been fixed in 0.8-10exp1.

> But perhaps symbols/macintosh_vndr/de will be dropped anyway in favour of
> the macintosh variants in symbols/de?

See above, I believe that this is not a good idea, but time will tell.

> Further I saw that the keypad section in symbols/macintosh_vndr/us is
> different to symbols/pc. In macintosh_vndr/us the numbers are on level 1
> in contrast to level 2 in symbols/pc. So by using include "keypad(comma)"
> in macintosh_vndr/{ch,de,se} you're hitting again bug #328125 because
> symbols/keypad is used to work together with symbols/pc.

Absolutely, but then you should have read upstream comments at
  https://bugs.freedesktop.org/show_bug.cgi?id=6671
more carefully if you did not want to go that way ;)
BTW #328125 is fixed in 0.8-10, though I did not notice that ch is
bogus too, will fix it in 0.8-11.
Thanks for your help.

Denis



Reply to: