Pessoal, antes do problema, essa é uma pequena prévia do meu “setup”…
Uso no meu notebook um Ubuntu deveras minimalista (faço a instalalção com a mini iso e atualizo para a versão _rolling release, 22.10) com i3wm, aonde para alternar as janelas entre tiling/floating está setado:
bindsym $mod+Shift+space floating toggle
Que é a bind que já vem por padrão.
Pois bem, comprei um teclado mecânico (meu primeiro inclusive), TGT SPAWN TOURNAMENT (é o modelo) e quando eu tento super+shift+space, simplesmente nada acontece, isso, utilizando o shift esquerdo, que é o que eu sempre usei e que sempre funcionou (no teclado do próprio notebook), porém, fazendo a mesma coisa, só que com o shift direito funciona perfeitamente.
Além do comportamento errôneo nesse caso específico, o mesmo acontece no atalho dentro de alguma aplicação específica, por exemplo, dentro do vs code se você tecla ctrl+shift+p é aberto uma paleta de comandos e eu sempre fiz essa combinação de teclas com o shift esquerdo, e da mesma forma agora com o teclado externo só surte efeito se eu usar o shift direito.
Então, pesquisando em diversos forúms a respeito de mapeamento de teclado, eu consegui fazer com que keycodes de ambos fossem trocados, e até mesmo que os keycodes disparados ao pressionar as duas teclas fossem referenciados ao Shift_L, porém, sem sucesso em ambos os casos.
Foi esses os comandos que executei:
Para trocar os shift’s (primeiro método):
-
verifico os keycodes dos shift’s:
xmodmap
-
removo eles:
xmodmap -e 'remove shift = Shift_L'xmodmap -e 'remove shift = Shift_R'
-
troco os keycodes:
xmodmap -e 'keycode 0x3e = Shift_L'xmodmap -e 'keycode 0x32 = Shift_R'
-
adiciono eles novamente:
xmodmap -e 'add shift = Shift_L'xmodmap -e 'add shift = Shift_R'
Para trocar os shift’s (segundo método):
-
verifico os keycodes dos shift’s:
xmodmap -pke | grep -iF shift_
-
troco os keycodes:
xmodmap -e 'keycode 62 = Shift_L NoSymbol Shift_L'xmodmap -e 'keycode 50 = Shift_R NoSymbol Shift_R'
Para setar os dois keycodes com a keysym Shift_R:
-
verifico os keycodes dos shift’s:
xmodmap -pke | grep -iF shift_
-
defino o keycode:
xmodmap -e 'keycode 50 = Shift_R NoSymbol Shift_R