привязка назад / вперед к кнопкам мыши

13

У меня есть базовая мышь Logitech с 5 кнопками: слева, справа, колесо слева, колесо, колесо справа.

Я использовал колесо влево и вправо для перехода назад и вперед в моем браузере или навигаторе. Теперь это не работает. Я нашел много решений, люди, говорящие об установке той или иной программы, похоже, не работают.

Брент Руз
источник
Можете ли вы дать нам немного больше информации о том, что вы пытались и как это не удалось?
Гюнтберт
Я только что попробовал три разные программы для сопоставления клавиш и / или сочетаний клавиш (одна была плагином ccsm, другая была просто инструментом, который я скачал в центре программного обеспечения, и последний тоже был). Но, честно говоря, я забыл их имена, и теперь я обновляюсь до 12.10, поэтому я сомневаюсь, что смогу найти их обратно =)
Brent Roose
Пожалуйста, предоставьте дополнительную информацию, отредактировав свой вопрос. Комментарии могут / будут потеряны некоторое время.
Гюнтберт

Ответы:

18
  1. Установите пакет xautomation, нам нужна командаxte

    sudo apt-get install xautomation
    
  2. Установите пакет x11-utils, нам нужна командаxev

    sudo apt-get install x11-utils
    
  3. Проверьте код для двух кнопок мыши.

    • Запустите команду xevв терминале:

      xev
      
    • Переместите мышь в новом окне

    • Нажмите свое колесо влево и колесо вправо

    В моем случае обратите внимание на вывод button 6и 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. Отредактируйте свою xbindkeysконфигурацию, например:

    nano ~/.xbindkeysrc
    

    и добавьте строки ниже

    "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
    

    Замените b:6и b:7ваши номера xevвыходными

    • из man xte

      key k
            Press and release key k
      
      keydown  k
            Press key k down
      
      keyup k
            Release key k
      
  5. Убить все kbindkeysпроцессы

    killall xbindkeys
    
  6. Перезапустите xbindkeysс вашей конфигурацией, например:

    xbindkeys -f ~/.xbindkeysrc
    
AB
источник
3

Здесь есть несколько кнопок мыши и информация о xorg.conf здесь .

По сути, вы возитесь с xinput. (Или imwheel для большего количества вариантов.)

Сначала откройте Терминал. Перечислите ваши устройства ввода:

# show all input devices
xinput list

Вы получите что-то вроде этого:

$ 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)]

У меня есть Evoluent VerticalMouse. Вы можете видеть номер идентификатора 12: «id = 12».

Я могу проверить свою мышь с:

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

Теперь, когда я двигаю свою мышь или щелкаю, я получаю вывод в этом терминале, говорящий мне, какую кнопку я нажал. Хит Ctrl- cчтобы закончить тест.

Если кнопки «назад» / «вперед» не дают выходных данных, попробуйте сбросить карту кнопок по умолчанию с помощью кнопки set-button-map. Обратите внимание, что я использую имя моего устройства, которое было выведено xinput list:

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

Теперь попробуйте запустить xinput testс вашим идентификатором. Если вы получаете правильные ответы кнопок здесь, то вам просто нужно выяснить, какое отображение вы хотите, и обновить ваш xorg.conf. (Я пока не знаю, как это сделать.)

idbrii
источник
0

Прокрутка вверх и вниз с помощью кнопок мыши вперед и назад

Сначала установите необходимые пакеты:

$ sudo apt install x11-utils xbindkeys xautomation

Затем, используйте xevпредоставленный, x11-utilsчтобы определить точные номера кнопок «назад» и «вперед» мыши.

$ xev |grep -A2 ButtonPress

Для моей проводной вертикальной мыши Anker назад и вперед находятся соответственно кнопки 8 и 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

вертикальная проводная мышь Anker

Продолжите, создав скрытый файл с именем .xbindkeysrcв вашем домашнем каталоге со следующим содержанием:

"xte 'keydown Down'"
b:8

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

"xte 'keydown Up'"
b:9

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

Команда xteпредоставляется xautomationпакетом.

Наконец, выйдите и снова с рабочего стола, чтобы эти изменения вступили в силу. Теперь вы можете прокручивать вверх и вниз в браузерах и других программах, нажимая и удерживая кнопки «назад» и «вперед».

Серж Строобандт
источник
0

После долгих раздумий я обнаружил, что для того, чтобы две маленькие треугольные кнопки под большим пальцем (рядом с колесом большого пальца) работали как вперёд / назад с моим Logitech MX Master, мне пришлось:

Установите imwheel, а затем отредактируйте, ~/.imwheelrcчтобы выглядеть так:

".*"
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

Нижние две линии означают , что нажатие на нижнюю из двух кнопок для большого пальца ( «thumb1», судя по всему) без проведения каких - либо клавиши - модификаторы (например Shift, Ctrl, Alt) , в то же время (это «None» часть) должна эмулировать , удерживая левую клавишу Alt клавишей ( Alt_L) и нажатием клавиши со стрелкой влево ( ), чтобы вернуться в браузер.

Аналогично, строка «Thumb2» генерирует левую клавишу Alt и стрелку вправо, чтобы двигаться вперед.

Похоже, что есть несколько способов сделать это, но это то, что я нашел и работал для меня в Ubuntu 18.04. У меня была небольшая проблема с интерпретацией того, что imwheelуказала мне страница руководства , поэтому я надеюсь, что это кому-нибудь поможет.

После редактирования .imwheelrcфайла не забудьте перезапустить, imwheelчтобы изменения вступили в силу:

sudo imwheel -k
Билл Ричман
источник