Como definir o mapa de teclado para teclados que são conectados posteriormente?

3

Eu configurei o layout do meu teclado adicionando uma chamada para setxkbmap ao meu .xinitrc . Isso funciona para o teclado interno do meu laptop e para qualquer teclado externo que esteja conectado quando o servidor X for iniciado. Se eu conectar um teclado externo posteriormente, ele usará o mapa de teclado padrão dos EUA.

Como posso ter certeza de que qualquer teclado que eu conecte tenha o meu layout preferido?

    
por Erik 05.01.2016 / 22:11

1 resposta

3

Como Gilles comentou sobre a resposta de Dominik R ontem, a abordagem do udev só funciona para o usuário root e não funciona bem como uma solução geral e sem privilégios. Eu sugiro considerar o inputplug (1) por Andrew Shadura disponível no Debian como o pacote inputplug, bem como no site do projeto: link

inputplug (1) é bastante simples como um listener de loop de eventos XINPUT que invocará um script com parâmetros de eventos decodificados como argumentos. Como você está usando o .xinitrc, imagino que esteja usando um gerenciador de janelas / ambiente modesto e um ouvinte de segundo plano desse tipo deve ser bastante simples para você.

Outra possibilidade é usar o udev de uma maneira menos tradicional, escrevendo um script analisando a saída do "monitor udevadm" e invocando o setxkbmap ao reconhecer um dispositivo correspondente sendo conectado.

Boa sorte!

    
por 07.01.2016 / 20:07