Estou executando o Ubuntu no VirtualBox em um MacBook Pro e estou tentando remapear a tecla Caps-Lock para mod3 para que eu possa usá-lo como um substituto para o Alt chave em Xmonad. Eu posso remapear os keyyms, mas o problema que me deparo é que, se Eu pressiono a tecla Caps-Lock, em seguida, ele gera um evento de chave para baixo imediatamente seguido por um evento de lançamento de chave. Como posso evitar esse comportamento? eu quero o evento de lançamento para ocorrer quando a chave é realmente liberada (como é o caso para outras chaves). Isso é algo que o OSX está fazendo ou é uma propriedade secreta? que está ligado ao código de acesso específico em X?
Eu uso o xmodmap para desmapear Super_R, mapear o código da chave 66 para Super_R e então atribuir Super_R para o modificador mod3.
Atualizar :
Eu trabalhei em torno disso usando Seil no OSX para remapear Caps-Lock para o código de chave 110 ( PC_APPLICATION). Por alguma razão, X faz o remapeamento para 135, mas eu poderia remapear Super_R para 135, desativar a repetição de teclas para 135 com "xset -r 135", e então atribuir Super_R a mod3.
PC_APPLICATION e Super_R foram escolhidos apenas porque eu não os usei para mais nada, acho que isso deve funcionar com a maioria ou todos os códigos-chave e símbolos-chave.
Eu escrevi uma explicação (muito) mais longa sobre como fazer isso. -of-remapeamento-em-osx-e-linux / "> aqui .Tenho certeza de que o comportamento das teclas para cima / para baixo do Caps-Lock é algo que o X faz.
Tags virtualbox xorg keyboard linux macos