Mapear Ctrl e Alt para os botões do polegar do mouse

10

Estou executando o Ubuntu 12.04 e tenho um mouse Microsoft com vários botões. Eu gostaria de mapear as teclas modificadoras Ctrl e Alt para os botões esquerdo e direito do mouse, respectivamente, para que eu possa Ctrl + clique e Alt -clique sem tocar no teclado. Meus botões do polegar são botões 8 e 9 .

Eu tentei a solução em Como configuro um botão de polegar do mouse? que explica como mapear um clique duplo para um botão polegar - isso funcionou para o duplo clique, mas não consegui descobrir como modificar a solução para Ctrl e < kbd> Alt

Eu também tentei Como mapear Ctrl / Shift para os botões do mouse? que usou xdotools e xbindkeys. Eu modifiquei o script para isso:

~/.xbindkeysrc :

"xdotool keydown alt"
        b:9
"xdotool keyup alt"
        release + alt + b:9
"xdotool keydown ctrl"
        b:8
"xdotool keyup ctrl"
        release + control + b:8

Qual QUASE funciona. Ele simula uma tecla Ctrl quando clico no botão de polegar esquerdo, mas não consigo segurar o botão e clicar ao mesmo tempo - segurar o botão do botão parece para evitar que ele ouça outras entradas até que seja liberado.

Alguém sabe como eu posso fazer com que meu botão thumb do mouse funcione como uma tecla modificadora, então eu posso usar o botão polegar + clicar em vez de Ctrl + clicar

    
por rcorre 10.07.2012 / 22:34

2 respostas

0

Eu encontrei uma solução de trabalho aqui . usa o Easystroke ( sudo apt install easystroke ). kudos a @stuartr de ubuntuforums!

embora houvesse um problema - o re-mapeado clique do mouse acionou esporadicamente um evento original ('voltar' no meu caso). para evitar isso, o botão do mouse pode ser remapeado para algum número não usado com xinput set-button-map ( sudo apt install xinput ). para re-mapear em cada login que eu criei (exacutável) $HOME/.config/autostart/mouse-buttons.sh com este conteúdo:

$ cat .config/autostart/mouse-buttons.sh
#!/usr/bin/env bash

mi_mouse_id=$(xinput | grep 'GTech MI wireless mouse.*pointer' | sed 's/.*\tid=\([0-9]*\)\t.*//')
xinput set-button-map $mi_mouse_id 1 2 3 4 5 6 7 20 9 10 11 12 13 14 15 16 17 18 19 20
$

isto mapeia o botão do mouse 8 para o botão 20. esperamos que o botão 20 não tenha significado. pelo menos não tem absolutamente nenhum efeito para mim. agora é hora de mapear novamente o botão 20 para Ctrl:

  1. guia Preferências: botões adicionais - > add - > botão de opção 'Instant Gestures' - > clique no botão de escolha do mouse na área cinza (para mim, uma 'volta, botão do polegar' tornou-se '(Instantaneamente) Botão 20')
  2. guia Preferências: selecione "Autostart Easystroke"
  3. guia Ações: Adicionar ação
    Nome: qualquer coisa que você goste (por exemplo, "Mouse 20 - > Ctrl")
    Tipo: 'Ignore'
    Detalhes: clique uma vez para alterar "Ignorar" para "Combinação de chaves ...". em seguida, pressione Ctrl + a. 'a' não importa e é ignorado. 'Combinação de chaves' será substituída por 'Ctr'
  4. Com a nova ação selecionada / destacada - > clique em "Gravar Stroke" - > pressione o botão do mouse que você está querendo usar novamente (isso veio com '20 - > 20 'na coluna Stroke para mim)
  5. Agora, pressionar e segurar o botão do meu mouse exibe um 'Ctr' na tela e age como se o botão estivesse sendo pressionado enquanto o botão do mouse estivesse
por atti 28.02.2018 / 13:38
-1

Em vez de usar xdotool, se você preferir uma solução funcional baseada em GUI, você pode baixar o aplicativo Easystrokes do centro de software do Ubuntu. Você pode facilmente mapear teclas do teclado e atalhos para botões do mouse e até mesmo gestos do mouse.

    
por user76179 13.07.2012 / 17:13