setting multiple layout variants with setxkbmap
Peter Hutterer
peter.hutterer at who-t.net
Thu Jan 2 19:32:33 PST 2014
On Fri, Dec 27, 2013 at 03:33:59PM +0100, Ernest Adrogué wrote:
> Hi there,
>
> According to setxkbmap's man page, I should be able to select multiple
> layout variants by giving setxkbmap a comma-separated list of variants.
> However when I do that, it doesn't seem to work.
>
> With '-variant cat', it uses the specified layout variant:
>
> ernest at doriath:~$ setxkbmap -variant cat -print
> xkb_keymap {
> xkb_keycodes { include "evdev+aliases(qwerty)" };
> xkb_types { include "complete" };
> xkb_compat { include "complete" };
> xkb_symbols { include "pc+es(cat)+inet(evdev)+ctrl(nocaps)+compose(rwin)" };
> xkb_geometry { include "pc(pc105)" };
> };
>
> So does '-variant nodeadkeys':
>
> ernest at doriath:~$ setxkbmap -variant nodeadkeys -print
> xkb_keymap {
> xkb_keycodes { include "evdev+aliases(qwerty)" };
> xkb_types { include "complete" };
> xkb_compat { include "complete" };
> xkb_symbols { include "pc+es(nodeadkeys)+inet(evdev)+ctrl(nocaps)+compose(rwin)" };
> xkb_geometry { include "pc(pc105)" };
> };
>
> However, with '-variant cat,nodeadkeys' none of the variants is used:
>
> ernest at doriath:~$ setxkbmap -variant cat,nodeadkeys -print
> xkb_keymap {
> xkb_keycodes { include "evdev+aliases(qwerty)" };
> xkb_types { include "complete" };
> xkb_compat { include "complete" };
> xkb_symbols { include "pc+es+inet(evdev)+ctrl(nocaps)+compose(rwin)" };
> xkb_geometry { include "pc(pc105)" };
> };
>
> Am I doing something wrong?
note that you can't combine variants into one, but you can use two layouts
of two different variants. so you can't have "us that does nodeadkeys and
cat", but you can have two layouts, one nodeadkeys, one cat.
that becomes
setxkbmap -layout "us,us" -variant "foo,bar"
or, easier to understand:
setxkbmap -layout "us(nodeadkeys),us(cat)"
Cheers,
Peter
More information about the xorg
mailing list