You are not logged in.
I use 3 keyboard layouts regularly and want to have separate shortcut for activating each layout, as follows:
CapsLock - switches to the first layout
Shift + CapsLock - switches to the second layout
Ctrl + CapsLock - switches to the third layout
As I understand, to implement this I need to modify (or create my own) xkb definitions. So I have read wiki page about xkb configuration and also read some other articles. And then tried to apply this information and implement separate shortcuts for each keyboard layout.
I defined new type in the file $HOME/xkb/types/mytype with three levels in it as
partial xkb_types "three_groups" {
type "THREE_GROUPS" {
modifiers = Shift+Control;
map[None] = Level1;
map[Shift] = Level2;
map[Control] = Level3;
level_name[Level1] = "Base";
level_name[Level2] = "Shift";
level_name[Level3] = "Ctrl";
};
};Also I created action definition in the file $HOME/xkb/compat/mycompat
default partial xkb_compatibility "default" {
interpret ISO_Third_Group {
action= LockGroup(group=3);
};
};This action will switch to third layout. From what I have read, switching to the first layout can be done with existing action ISO_First_Group and switching to the second layout can be done with existing action ISO_Last_Group.
And now it is necessary to define symbols, in other words relation between key or key combination and corresponding action(s). This should be placed in the file $HOME/symbols/mysymbol. Unfortunately here I stuck and can't understand how to connect keys/key combinations with actions. Can anyone help me with finishing this?
Offline