Configurando Teclado no I3

Configurando Teclado no I3

2018, Jun 08    

No gerênciador de janelas I3 não existe uma opção para alternar entre diferentes layouts de teclado. Mas tal pode ser resolvido acrescentando o seguinte trecho no arquivo de configuração do i3:

Como funciona ?

Para mudar de layout o podemos usar o setxkbmap com código do idioma do teclado.

setxkbmap -layout en

Para nosso comando mágico, primeiro consultamos o layout atual a partir da opção -query:

setxkbmap -query

depois pesquisamos no resultado pelo código de um dos layout que será usado usando o comando grep com o pipe

setxkbmap -query | grep us

Agora vem a parte mágica. Caso encontre o layout do outro idioma desejado o grep retorna que deu tudo certo então podemos associar uma comando para ser executando usando operador lógico E do Linux:

setxkbmap -query | grep us && setxkbmap -layout br

Então basta acrescentar o operador lógico OU para executar o comando para o outro layout quando o grep não achar o layout

setxkbmap -query | grep us && setxkbmap -layout br || setxkbmap -layout us

Por fim associamos este comando a um atalho de dentro do i3 config

bindsym $mod+space "exec setxkbmap -query | grep us && setxkbmap -layout br || setxkbmap -layout us"