Recentemente, comprei um mouse Sculpt Comfort da Microsoft. Ele usa Bluetooth para conectar-se ao meu laptop e todos os botões comuns do mouse funcionam perfeitamente no Linux e no Windows 7. Porém, o que é diferente nesse mouse é que ele possui uma tecla Windows/ especial Superao lado que inicia o menu Iniciar / quando pressionada. Ele também possui um sensor de toque que detecta quando o botão lateral é pressionado para cima ou para baixo e vibra o mouse para reconhecer que foi ativado.
Obviamente, no Windows, existe um programa que permite alterar o que os traços fazem e desligar a vibração.
No Linux, o xev detecta apenas um pressionamento de tecla normal quando o botão lateral é pressionado ou pressionado. O Xev não relata pressionar o botão do mouse.
Portanto, minha pergunta é: posso alterar quais teclas pressionadas são enviadas no Linux?
Gostaria muito de alterar a ligação de chave de tabpara down, backspacepara up(o que o xev relata) para ctrl+ alt+ left/ rightpara alternar entre os espaços de trabalho.
Obrigado por qualquer ajuda!
Respostas:
Acabei de comprar um e descobri que o seguinte funciona perfeitamente para mim.
sudo apt-get install dconf-editor
se ainda não estiver instalado).Altere o valor de alternar para o espaço de trabalho para baixo para
['<Control><Alt>Down', '<Primary><Super>Tab', '<Control><Super>Tab']
eo valor do switch-to-workspace-up para
['<Control><Alt>Up', '<Primary><Super>BackSpace', '<Control><Super>Backspace']
fonte
Portanto, como o Microsoft Sculpt Comfort Mouse não está registrando pressionamentos de botão do mouse para os gestos de super e deslizar, mas registrando pressionamentos de tecla do teclado, usei os pacotes 'xautomation' e 'xbindkeys' para ouvir essas teclas pressionadas e enviar Ctrl+ Alt+ Right/ Leftpara alternar entre áreas de trabalho. Não é uma solução ideal, mas funciona 8 em 10 vezes.
O que esse script xbindkeys faz é escutar as teclas pressionadas pelos mouses e deslizar para baixo os gestos enviados ao computador. Se detectado, o xautomation envia a tecla de movimentação padrão da área de trabalho, control+ alt+ left/ right.
O gesto de deslizar para cima no mouse envia o pressionamento de tecla left control+ left super+ backspace. O gesto de deslizar para baixo no mouse envia a tecla left control+ left super+ tab. m: 0x4 + mod4 + m: 0x0 + c22 é a combinação de código de chave real que é detectada pelas xbindkeys.
Vou mexer um pouco mais para ver se posso melhorar a eficiência, mas por enquanto isso faz o trabalho. Eu só espero que o tabe backspaceque as saídas do mouse não ferrar com qualquer trabalho que eu estou fazendo.
fonte
Control_L+Super_L+Tab
(de onde vem o Control_L + Super_L)? Ou você combina os botões do mouse comm:0x4+mod4+m:0x0+c:23
(você parecia dizer que não há eventos de mouse gerados na pergunta)?Eu queria mapear os mesmos botões para navegar pelas guias do Firefox nas duas direções. Estou usando xbindkeys e xmacro. Está funcionando muito bem!
fonte