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

Two problems with xkb



I am trying to customise my keyboard experience. Precisely, I'd like
to overlay my beloved us/ascii layout with a second group featuring
the international characters I always need.

I have started playing around with xxkb and came up with the
following file:

  partial default alphanumeric_keys
  xkb_symbols "basic" {

      include "us(basic)"

      name[Group1]= "US/ASCII";
      name[Group2]= "Intl";

      override key <AD03> { [ e, E  ], [ EuroSign, cent] };
      override key <AD07> { [ u, U  ], [ udiaeresis, Udiaeresis ] };
      override key <AD09> { [ o, O  ], [ odiaeresis, Odiaeresis ] };
      override key <AC01> { [ a, A  ], [ adiaeresis, Adiaeresis] };
      override key <AC02> { [ s, S  ], [ ssharp, section ] };
      [...]
  };

When I try to load this file ("custom") with `setxkbmap custom`, it
reports: "Error loading new keyboard description". I have found the
problem to be the include line, and when I remove that line,
setxkbmap loads the new kbmap. This works fine, I can have 's' print
'd' if I really wanted to, but I still don't understand why it
works. If I don't include a basic keyboard, is the plain us/ascii
keyboard assumed to be the default? How could I make e.g. the German
keyboard the default and modify just a number of keycodes? Or: how
do you use the include line?

My second question is more important: how can I change between the
two groups I have defined? What I want is group 2 if one of the
Windoze keys is pressed, and group 1 if none is pressed (i.e. no
toggle, no sticky stuff). I tried including "group(win_switch) but
I get the same error as above.

Then I tried to simply copy'n'paste the group(win_switch) stuff into
my custom file:

partial default alphanumeric_keys modifier_keys
xkb_symbols "basic" {

      [...]
      override key <AC02> { [ s, S  ], [ ssharp, section ] };

    key <LWIN> {
      symbols[Group1] = [ Mode_switch, Multi_key ],
    };
    key <RWIN> {
      symbols[Group1] = [ Mode_switch, Multi_key ],
    };
  };

This loads without errors, but when I press one of the Windows
keys and e.g. 'o', I get a plain 'o', not 'ö'.

Could anyone enlighten me and help me to get this working?

Thanks,

-- 
Please do not CC me when replying to lists; I read them!
 
 .''`.     martin f. krafft <madduck@debian.org>
: :'  :    proud Debian developer, admin, and user
`. `'`
  `-  Debian - when you have better things to do than fixing a system
 
Invalid/expired PGP subkeys? Use subkeys.pgp.net as keyserver!

Attachment: signature.asc
Description: Digital signature


Reply to: