Can't use two different layouts at once

Hello. I have been using BSPWM for about a week and so far everything is fine. I need to have two different layouts, Russian and Polish. I added ‘setxkbmap -option grp:alt_shift_toggle ru,pl’ to ~/.config/bspwm/bspwmrc and it works. But I decided to switch to colemak layout for Polish (or at least for English) and leave the secondary layout as it is (YCUKEN). I tried changing this line to ‘setxkbmap -option grp:alt_shift_toggle ru,us -variant colemak’ and after restarting BSPWM nothing changes. However, ‘setxkbmap us -variant colemak’ works. How can I change the layout to colemak? And yes, I read the arch wiki and googled for about two hours and found nothing :frowning:. Any help would be appreciated.

Hello, maybe I don’t understand the problem.
Insert your code into sxhkd (sxhkd
[in I3-wm I use a more direct method (2 lines from config)

bindsym Ctrl+Shift+KP_End exec --no-startup-id setxkbmap hu
bindsym Ctrl+Shift+KP_Down exec --no-startup-id setxkbmap pl -variant qwertz
]

@eso

Totally Off Topic

Does your avatar have anything to do with the “Old man and the Sea” by Ernest Hemingway?

Pudge

I like understatements. Some words are correct.
Eso (Eső means rain in Hungarian)

I think there is no Coleman layout for Russian or Polish, only for English.
Using layouts is described in Archwiki, and you need to assign a layout/variant for each of your languages you set, comma delimited, letting zero for the non-coleman ones. ( ",coleman,,").

You might want to set X keyboard layouts globally, with localectl, which creates a conf file at /etc/xorg.conf.d/.

If you want to use the polybar xkeyboard module, here’s my customized part of config.ini:

[bspd]
#### Keyboard Layout

# Keyboard Layout Indicator (layout-variant-label)
xkb-layout-0="us;_;US"
xkb-layout-1="gr;_;GR"
xkb-layout-2=
xkb-layout-3=
xkb-layout-4=

[module/xkeyboard]
type=internal/xkeyboard

format="%{T3}<label-indicator><label-layout>%{T-}"
format-prefix=""

label-layout="%{T3}%icon%%{T-}"
layout-icon-0=${bspd.xkb-layout-0}
layout-icon-1=${bspd.xkb-layout-1}
layout-icon-2=${bspd.xkb-layout-2}
layout-icon-3=${bspd.xkb-layout-3}
layout-icon-4=${bspd.xkb-layout-4}

indicator-icon-default =
indicator-icon-0=caps lock;;%{T1}בּ%{T-}
indicator-icon-1=scroll lock;;%{T1}%{T-}
indicator-icon-2=num lock;;%{T1}%{T-}

label-indicator-on-capslock="%{T3}%icon%%{T-}"
label-indicator-on-numlock="%{T3}%icon%%{T-}"
label-indicator-on-scrolllock="%{T3}%icon%%{T-}"

Look at Polybar upstream documentation for usage.

1 Like

To get closer
xfce4-settings if installed includes a Keyboard Manager
switch off at the top right corner the Use system defaults on Layout tab
add Us - Colemak (it’s there)
You will see the Change layout option as well
Forgive me my previous bla-bla

Thanks! Adding setxkbmap -option "grp:alt_shift_toggle us,ru -variant colemak, " to ~/.config/bspwm/bspwmrc did the job.

1 Like