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

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

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

13
задан 15 November 2017 в 17:00

5 ответов

  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
    
17
ответ дан 15 November 2017 в 17:00

Здесь есть инструкции для нескольких кнопок мыши и 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. (Я пока не знаю, как это сделать.)

0
ответ дан 15 November 2017 в 17:00

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

Первый, установите необходимые пакеты:

$ sudo apt install x11-utils xbindkeys xautomation

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

$ xev |grep -A2 ButtonPress

Для моего соединил вертикальную мышь Анкера проводом , назад и вперед соответственно кнопки 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

wired vertical Anker mouse

, Продолжаются путем создания скрытого файла, названного .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
ответ дан 16 October 2019 в 10:35

После большого верчения о я нашел, что, чтобы заставить две маленьких треугольных кнопки под ползунком (рядом с колесом ползунка) работать как назад/вперед с моим 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", по-видимому), не содержа модифицирующих клавиш (например, Сдвиг , Ctrl , Высокий звук ) одновременно (это не "Ни один" часть) должно эмулировать удержание левой клавиши Alt ( Alt_L ), и нажатие стрелки влево () ключ для возвращения в браузере.

Точно так же строка "Thumb2" генерирует левую клавишу Alt плюс стрелка вправо, для продвижения.

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

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

sudo imwheel -k
0
ответ дан 16 October 2019 в 10:35

Исправить скорость прокрутки и кнопки назад/вперед на Logitech G900 (должны быть одинаковыми для этого):

xev не работал для моей мыши, я использовал команду xinput, чтобы сначала узнать идентификатор устройства моей мыши. Чтобы вывести список устройств ввода:

 # xinput 
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech Gaming Mouse G900                id=8    [slave  pointer  (2)]
⎜   ↳ Logitech Gaming Mouse G900                id=9    [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)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ HD Pro Webcam C920                        id=11   [slave  keyboard (3)]
    ↳ Logitech Gaming Mouse G900                id=12   [slave  keyboard (3)]
    ↳ Apple Inc. Magic Keyboard with Numeric Keypad id=10   [slave  keyboard (3)]

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

Я уже установил imwheel для настройки скорости прокрутки мыши

Создайте .imwheelrc следующим образом:

cat >~/.imwheelrc<<EOF
".*"
None, Up, Button4, 5 
None, Down, Button5, 5
None, Thumb1, Alt_L|Left
None, Thumb2, Alt_L|Right
EOF

Где ".*" означает, используйте эту конфигурацию для всех x-windows. Если вы хотите использовать этот конфиг только в хроме, например, вы можете вставить туда "^google-chrome$".

Вы можете использовать xprop WM_CLASS | grep -o '"[^"]*"' | head -n 1, а затем щелкните окно, чтобы получить имя, которое должно быть в конфигурации.

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

Button4 и Button5 обычно представляет собой колесико мыши. 5 в конце строки определяет скорость прокрутки (чем больше, тем быстрее, чем меньше, тем медленнее)

Я понятия не имею, что означает ThumbN.

Alt_L|Влево должен эмулировать нажатие левой Alt клавиши (Alt_L) и нажатие клавиши со стрелкой влево (←), чтобы вернуться в браузер.KP_Left вместо Left также будет работать.

Перезапустите imwheel с помощью killall imwheel и imwheel.

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

Чтобы найти названия кнопок, используйте список xmodmap -pke или его графический интерфейс xkeycaps

Я использовал много источников. В честь некоторых из них: Еще один пост на ту же тему Также о мышах пример файла imwheelrc

5
ответ дан 17 September 2020 в 19:54

Другие вопросы по тегам:

Похожие вопросы: