Eu tenho um teclado externo que eu uso com meu desktop e laptop Ubuntu 17.10 em casa, e a mesma espécie de teclado em minhas máquinas RHEL 6.8 no trabalho. Mas no meu laptop Ubuntu 17.10, eu uso o teclado embutido na maioria das vezes, mas outras vezes eu preciso conectar o teclado externo mencionado anteriormente a ele. Então, eu preciso do comportamento das teclas capslock e control para funcionarem da mesma forma, tanto para teclados internos quanto externos.
Este teclado externo possui um firmware personalizado que, entre muitas outras coisas, troca as teclas de controle esquerda e de controle esquerda.
O comportamento que estou procurando é o seguinte:
O que eu tenho agora é principalmente trabalhar: Eu tenho um script executado a partir de aplicativos de inicialização que detecta o teclado e executa xmodmap
. Mas é um hack porque algo no Gnome ou Xlib ou Xorg ou qualquer outra coisa também está mexendo com o capslock do teclado e controlar o comportamento das teclas, de forma que eu tenho que ter um sleep 5
antes da chamada para xmodmap
para dar ao Gnome / qualquer tempo para terminar seu "fiddling" para que minha chamada para xmodmap
"ganhe". Isso também é um hack porque não lida com desconectar e conectar o teclado. Ele deve fazer isso com base no tipo de teclado conectado, não baseado em login ou logoff, bloqueio ou desbloqueio ou somente na inicialização do Linux. Também tive que ter alguma configuração que detecta bloqueio e desbloqueio da área de trabalho, bem como, em seguida, o Gnome / whatever tenta novamente redefinir o teclado após o desbloqueio.
Isso é possível fazer?