Mapear o botão 2 do meio do mouse para o botão 1 do mouse esquerdo

Mapear o botão 2 do meio do mouse para o botão 1 do mouse esquerdo

Estou tentando mapear o botão do meio do mouse B2 para o botão esquerdo B1. Estou usando o xmodmap e meu entendimento é que o ponteiro é usado para mudar isso.

Aqui está~/.Xmodmap

pointer = 1 1 3 4 5 6 7 8 9

Mas eu recebo esse erro. Alguma ideia?

~$ xmodmap ~/.Xmodmap
Warning: Only changing the first 9 of 20 buttons.
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  116 (X_SetPointerMapping)
  Value in failed request:  0x1
  Serial number of failed request:  9
  Current serial number in output stream:  9

Este modmap funciona, mas é claro que os botões estão invertidos. ~/.Xmodmap

pointer = 2 1 3 4 5 6 7 8 9

Responder1

Bem deixa pra lá. Encontrei uma solução melhor usando o xinput:

$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech Wireless Mouse                   id=10   [slave  pointer  (2)]
⎜   ↳ MyMouse                                   id=11   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=13   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ Power Button                              id=9    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=12   [slave  keyboard (3)]
    ↳ MSI WMI hotkeys                           id=14   [slave  keyboard (3)]
    ↳ Logitech Wireless Mouse                   id=15   [slave  keyboard (3)]
    ↳ BSK30 (AVRCP)                             id=16   [slave  keyboard (3)]

em seguida, obtenha o ID do mouse, por exemplo, 11 (acontece que é um Magic Mouse) e mapeie os botões.

$ xinput set-button-map 11 1 1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

informação relacionada