evrouter
pode ajudar a fazer isso. Ele permitirá até liberar G9 antes de selecionar a tarefa da lista.
Eu criei a partir da fonte e instalei com checkinstall
, mas há algo parecido com um repositório lá.
Ganchos
Pode ser configurado no ~/.evrouterrc
:
"Logitech Gaming Mouse G300" "/dev/input/event.*" any key/272 "SHELL//home/velkan/click.sh"
"Logitech Gaming Mouse G300" "/dev/input/event.*" any key/275 "SHELL//home/velkan/atab.sh"
Executar sudo evrouter -d /dev/input/event*
e clicar em volta ajudará a compor essas linhas.
"Logitech Gaming Mouse G300"
é o nome do meu mouse.
"/dev/input/event.*"
significa que a entrada será interceptada, independentemente do nome do arquivo do dispositivo ao qual o mouse está vinculado.
any
- significa que o evento será aceito com qualquer modificador Alt / Ctrl / Shift.
key/272
- botão esquerdo do mouse.
key/275
- botão do mouse para trás (no G4 para mim).
"SHELL//home/velkan/click.sh"
- execute /home/velkan/click.sh
quando esse evento ocorrer.
Scripts Alt-Tab
Então, o script /home/velkan/atab.sh
(que está vinculado a G4 neste caso):
#!/bin/bash
mktemp /tmp/evr-alt-tab-XXXX
/usr/bin/xte 'usleep 100000' 'keydown Alt_L' 'usleep 50000' 'key Tab'
Ele cria um arquivo temporário que informará o click.sh
(ligado ao botão esquerdo) que precisa liberar o Alt.
click.sh
script:
#!/bin/bash
if [ -e /tmp/evr-alt-tab-???? ]; then
/usr/bin/xte 'usleep 100000' 'keyup Alt_L'
rm /tmp/evr-alt-tab-????
fi
Ativando o evrouter na inicialização
Não tentei isso no KDE.
Iniciar script /usr/local/sbin/evrouter_launch.sh
:
#!/bin/sh
/usr/local/bin/evrouter /dev/input/event* 0<&- > /dev/null
(ou pode ser /usr/bin/evrouter
em vez de /usr/local/bin/evrouter
)
Config /etc/lightdm/lightdm.conf
para iniciar o roteiro com o gerenciador de área de trabalho:
[SeatDefaults]
autologin-user=
session-setup-script=/usr/local/sbin/evrouter_launch.sh