Hi i3wm gurus, I use i3 with kbdd in order to have different keyboard layouts in different windows:
exec_always --no-startup-id kbdd exec_always setxkbmap -layout de,us -option grp:shift_caps_toggle I figured out that the following command changes the current layout into the US version: $ dbus-send --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.set_layout uint32:1 ...and replacing the uint32:1 with uint32:0 switches to the DE layout. Now, what I couldn't figure out is that how can I set up a default layout for certain types of windows. New windows start with the DE version (I guess because that one comes first in the list with the 'setxkbmap -layout de,us' command). So far, so go. But on terminals I want to use the US layout. I tried something like this in the i3wm config: for_window [window_role="terminal"] exec dbus-send --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.set_layout uint32:1 Unfortunately this doesn't work. Can you please tell me how can I do this kind of setup from the i3 config? (Maybe I could run the dbus-send command from the bash_profile or something like that, but I hope this can be done with for_window in the i3 config somehow.) Thanks, Uz.