vinculando voltar / avançar para os botões do mouse


13

Eu tenho um mouse logitech básico com 5 botões: esquerda, direita, roda esquerda, roda, roda direita.

Eu costumava usar a roda esquerda e direita para ir e voltar no meu navegador ou navegador. Agora isso não funciona. Eu encontrei muitas soluções, pessoas dizendo para instalar esse programa ou aquilo, não pareciam funcionar.


Você pode nos dar um pouco mais de detalhes sobre o que você tentou e como isso falhou?
guntbert

Eu apenas tentei três programas diferentes para mapear teclas e / ou atalhos de teclado (um era um plugin do ccsm, outro era apenas uma ferramenta que eu baixei no centro de software e o último). Mas, honestamente, eu esqueci os seus nomes, e eu agora upgradede a 12.10 então eu duvido se eu puder encontrá-los de volta =)
Brent Roose

Forneça informações adicionais editando sua pergunta. Os comentários podem / se perderão por algum tempo.
guntbert

Respostas:


18
  1. Instale o pacote xautomation, precisamos do comandoxte

    sudo apt-get install xautomation
    
  2. Instale o pacote x11-utils, precisamos do comandoxev

    sudo apt-get install x11-utils
    
  3. Verifique o código para os dois botões do mouse.

    • Inicie o comando xevem um terminal:

      xev
      
    • Mova o mouse na nova janela

    • Pressione sua roda esquerda e direita

    No meu caso, observe a saída button 6e button 7:

    ButtonRelease event, serial 36, synthetic NO, window 0x2e00001,
        root 0x233, subw 0x0, time 9222464, (94,21), root:(1774,85),
        state 0x10, button 6, same_screen YES
    
    ButtonPress event, serial 36, synthetic NO, window 0x2e00001,
        root 0x233, subw 0x0, time 9223854, (94,21), root:(1774,85),
        state 0x10, button 7, same_screen YES
    
  4. Edite sua xbindkeysconfiguração, por exemplo:

    nano ~/.xbindkeysrc
    

    e adicione as linhas abaixo

    "xte 'keydown Alt_L' 'keydown Left' 'keyup Left' 'keyup Alt_L'"
         b:6
    
    "xte 'keydown Alt_L' 'keydown Right' 'keyup Right' 'keyup Alt_L'"
         b:7
    

    Substitua b:6e b:7pelo seu número de xevsaída

    • a partir de man xte

      key k
            Press and release key k
      
      keydown  k
            Press key k down
      
      keyup k
            Release key k
      
  5. Mate todos os kbindkeysprocessos

    killall xbindkeys
    
  6. Reinicie xbindkeyscom sua configuração, por exemplo:

    xbindkeys -f ~/.xbindkeysrc
    

3

Existem instruções para vários botões do mouse aqui e informações sobre o xorg.conf aqui .

Essencialmente, você mexe com o xinput. (Ou instale para obter mais opções.)

Primeiro, abra um terminal. Liste seus dispositivos de entrada:

# show all input devices
xinput list

Você obterá algo como isto:

$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Microsoft Natural® Ergonomic Keyboard 4000        id=11   [slave  pointer  (2)]
⎜   ↳ Evoluent VerticalMouse 4                  id=12   [slave  pointer  (2)]

Eu tenho um Evoluent VerticalMouse. Você pode ver que o número do identificador é 12: "id = 12".

Posso testar meu mouse com:

# show all input from device with identifier number 12
xinput test 12

Agora, quando movo o mouse ou clico, recebo a saída naquele terminal, dizendo-me qual botão eu pressionei. Hit Ctrl- cpara finalizar o teste.

Se os botões voltar / avançar não estiverem fornecendo saída, tente redefinir o mapa de botões para o padrão com o mapa de configuração de botões. Observe que estou usando o nome do meu dispositivo que foi produzido por xinput list:

xinput set-button-map "Evoluent VerticalMouse 4" 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Agora tente executar xinput testcom seu ID. Se você está obtendo respostas corretas dos botões aqui, basta descobrir o mapeamento desejado e atualizar o seu xorg.conf. (Ainda não sei como fazer isso.)


0

Role para cima e para baixo com os botões avançar e voltar do mouse

Primeiro, instale os pacotes necessários:

$ sudo apt install x11-utils xbindkeys xautomation

Em seguida, use o xevfornecido por x11-utilspara detectar os números exatos dos botões Voltar e Avançar do mouse.

$ xev |grep -A2 ButtonPress

Para o mouse Anker vertical com fio, as direções para frente e para trás são respectivamente os botões 8 e 9.

ButtonPress event, serial 37, synthetic NO, window 0x3600001,
    root 0x1da, subw 0x0, time 1708382, (68,54), root:(939,498),
    state 0x10, button 8, same_screen YES
--
ButtonPress event, serial 37, synthetic NO, window 0x3600001,
    root 0x1da, subw 0x0, time 1711030, (69,48), root:(940,492),
    state 0x10, button 9, same_screen YES

mouse Anker vertical com fio

Continue criando um arquivo oculto nomeado .xbindkeysrcem seu diretório pessoal com o seguinte conteúdo:

"xte 'keydown Down'"
b:8

"xte 'keyup Down'"
b:8 + Release

"xte 'keydown Up'"
b:9

"xte 'keyup Up'"
b:9 + Release

O xtecomando é fornecido pelo xautomationpacote.

Por fim, efetue logoff e logon novamente na área de trabalho para que essas alterações entrem em vigor. Agora você pode rolar para cima e para baixo nos navegadores e outros programas pressionando e segurando os botões para trás e para frente do mouse.


0

Depois de muita discussão, descobri que para colocar os dois pequenos botões triangulares sob o polegar (ao lado do botão giratório) para trabalhar como retroceder / avançar com o meu Logitech MX Master, era necessário:

Instale imwheele edite ~/.imwheelrcpara ficar assim:

".*"
None,      Up,   Button4, 5
None,      Down, Button5, 5
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4
Shift_L,   Down, Shift_L|Button5
None, Thumb1  , Alt_L|Left
None, Thumb2  , Alt_L|Right

As duas linhas inferiores significa que ao premir o menor dos dois botões do polegar ( "thumb1", aparentemente) sem manter qualquer teclas modificadoras (por exemplo Shift, Ctrl, Alt), ao mesmo tempo (essa é a parte "Nenhum") deve emular mantendo pressionada a tecla Alt esquerda chave (Alt_L ) e pressione a tecla de seta esquerda ( ) para voltar ao navegador.

Da mesma forma, a linha "Thumb2" gera a tecla Alt esquerda mais a seta direita, para avançar.

Parece que existem várias maneiras diferentes de fazer isso, mas foi o que encontrei e trabalhei para mim no Ubuntu 18.04. Eu tive alguns problemas para interpretar o que a página de manual imwheelestava me dizendo para fazer, então espero que isso ajude alguém.

Depois de editar o .imwheelrcarquivo, não se esqueça de reiniciar imwheelpara que as alterações entrem em vigor:

sudo imwheel -k
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.