Eu resolvi usar o hwdb. Eu criei /etc/udev/hwdb.d/10-m535.hwdb
:
evdev:input:b0005v046DpB016e1203-*
KEYBOARD_KEY_700e2=reserved
KEYBOARD_KEY_7002b=leftmeta
Então:
sudo udevadm hwdb --update
sudo udevadm trigger
E desligue e ligue o mouse. Funciona agora, liguei a tecla meta (Windows).
Eu acho que esta solução poderia ser feita, então o xinput set-button-map
não é necessário (e talvez eu possa resolver o problema que os botões não repetem) ... Mas eu não consegui encontrar os códigos de teclas para os botões 6 e 7 esquerda e direita). Eu encontrei os scancodes:
evdev:input:b0005v046DpB016e1203-*
KEYBOARD_KEY_700e2=reserved
KEYBOARD_KEY_7002b=leftmeta
KEYBOARD_KEY_90004=??? (scroll left - mouse button 6)
KEYBOARD_KEY_90005=??? (scroll right - mouse button 7)
Eu tentei os valores decimais para BTN_SIDE
, BTN_EXTRA
, BTN_BACK
, BTN_FORWARD
, BTN_6
, BTN_7
(como definido em /usr/include/linux/input-event-codes.h
) sem sorte.
Outro mouse, com a rolagem horizontal trabalhando fora da caixa, tem a seguinte evtest
output:
Event: time 1522616506.145899, -------------- SYN_REPORT ------------
Event: time 1522616507.105926, type 2 (EV_REL), code 6 (REL_HWHEEL), value 1
Event: time 1522616507.105926, -------------- SYN_REPORT ------------
Event: time 1522616508.191962, type 2 (EV_REL), code 6 (REL_HWHEEL), value -1
Posso de alguma forma especificar um evento EV_REL
com valor para keycode no arquivo hwdb?