Posso usar combinações complexas de botões do mouse com xbindkeys?

3

Estou executando o Ubuntu 16.04 e conectei o mouse Logitech M705. Este rato tem um total de 10 botões, o botão 1 fica com o clique esquerdo, o botão 2 com o botão direito, o botão 10 com o botão "polegar".

Eu configurei xbindkeys

# History Back & Forward
"xte 'keydown Alt_L' 'key Left' 'keyup Alt_L' "
  b:6 + Release
"xte 'keydown Alt_L' 'key Right' 'keyup Alt_L' "
  b:7 + Release

# page down
"xte 'key Next' "
  b:8

# page up
"xte 'key Prior' "
  b:9

# powerclick
"xte 'keydown Control_L' 'mouseclick 1' 'keyup Control_L' "

Isso tudo funciona muito bem. O que eu chamo de powerclick é usado para abrir links no FF em uma nova aba.

Agora, o que eu gostaria de alcançar: quando eu clico no botão 1 THEN button 10 ENTÃO eu seleciono algum texto e eu libero ambos os botões, o texto deve ser copiado para a área de transferência. Então, como um modo de edição rápida para qualquer janela, assim que o texto é selecionado dessa forma, ele é copiado.

# quickcopy
"xte 'keydown Control_L' 'key c' 'keyup Control_L' "
  b:10  + b:1 + Release

Mas isso não produz o efeito desejado.

Existe uma maneira de mapear essas condições complexas? Eu posso imaginar isso sendo de grande utilidade, considerando que o "botão de polegar" pode funcionar de forma semelhante à tecla Ctrl no teclado, ou seja, modificar o comportamento padrão de clique.

Mais tarde, Id gostaria de fazer Colar função para o botão 10 (botão do polegar) + botão 2 (botão direito)

Obrigado

    
por michnovka 03.10.2016 / 04:15

2 respostas

0

Executando xbindkeys -n -v em uma saída de terminal:

1 keys in /home/whoever/.xbindkeysrc

min_keycode=8     max_keycode=255 (ie: know keycodes)
"xte 'keydown Control_L' 'key c' 'keyup Control_L' "
    Release + m:0x0 + b:1   (mouse)
starting loop...

Como acho que m:0x0 é um estado de mouse, parece que xbindkeys está interpretando b:10 + b:1 + Release como simplesmente b:1 + Release .

Eu não sei se estamos fazendo errado e se há uma maneira correta de escrevê-lo, ou se usar uma combinação de dois botões do mouse simplesmente não é possível em xbindkeys .

    
por 100r 06.12.2016 / 12:38
0

Não é possível fazer normalmente, mas felizmente xbindkeys suporta uma linguagem de script chamada guile que permite que você faça coisas como configurar estados / variáveis que permitem criar botões que funcionam como teclas modificadoras.

Eu fiz um tópico sobre isso: link

    
por David Bobb 23.09.2017 / 09:26