Как назначить действия «назад» и «вперед» для колеса горизонтальной прокрутки Logitech Anywhere Mouse MX '?

11

Я использую Logitech Anywhere Mouse MX на своей Ubuntu. Мышь работает хорошо, но я не могу назначить действия дополнительным кнопкам, доступным на ней. Больше всего я скучаю по действиям «назад» и «вперед», назначенным наклона колеса прокрутки влево и вправо.

Как я могу активировать эти функции?

ysap
источник

Ответы:

9

Я использую xbindkeysв сочетании с xdotool.

Создайте .xbindkeysrcфайл в вашем домашнем каталоге. Он должен содержать:

# Mapping BACK to mousewheel left on old Logitech
"xdotool key Alt_L+Left"
m:0x0 + b:6

# Mapping FORWARD to mousewheel right on old Logitech
"xdotool key Alt_L+Right"
m:0x0 + b:7

Однако с VMware вам не нужно ничего делать, кроме добавления

mouse.vusb.enable = "TRUE"

в файл .vmx в вашей хост-системе. Это то, что VMware открывает каждый раз, когда вы запускаете гостевую систему.

fiod3s
источник
Благодарю. Я протестирую строку vmx в следующий раз, когда перезапущу систему (это происходит не слишком часто).
2013 г.
Только что попробовал взломать файл vmx - и это не похоже на работу. Я вижу, что при перезагрузке VMware стирает только что добавленную строку, как если бы у нее был шаблон файла по умолчанию, который сбрасывается при каждом запуске компьютера.
ysap
хорошо, похоже, мне пришлось пройти весь путь и выключить машину, а не просто перезапустить. Теперь настройки сохранены. К сожалению, работая удаленно, колесико мыши кажется неэффективным (то же самое на хост-машине). Я проверю еще раз, когда на удаленном сайте и сообщу результаты.
ysap
Ах да - только что проверил, и все работает!
ysap
Очевидно, вам нужно запустить xbindkeysпосле установки.
ХунбоЖу
18

У меня есть та же мышь, и я хотел связать две кнопки на боковой стороне мыши, чтобы двигаться вперед и назад. Вот как я решил это:

1) Используйте утилиту "xev", чтобы определить, каким номерам соответствуют кнопки, которые вы хотите переназначить. Возможно, вам придется установить этот пакет, используя

sudo apt-get install xev  

Как только xev будет установлен, введите «xev» в терминал, и появится окно X белого цвета с черным ящиком. При перемещении мыши в это окно начнется регистрация событий в терминале. Внимательно прочитав результаты, вы узнаете номера кнопок мыши. На моей мышке левый и правый угол наклона соответствуют кнопкам 6 и 7 соответственно.

2) Теперь мы будем использовать утилиту "xbindkeys", чтобы переназначить кнопки мыши на нажатия клавиш. Если это еще не сделано, возможно, вам придется установить его с

sudo apt-get install xbindkeys

3) Создайте файл в вашем домашнем каталоге с именем .xbindkeysrc. Это то, что xbindkeys прочитает, чтобы увидеть, что вы переназначаете. Содержимое моего файла .xbindkeysrc:

 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Left]""
   m:0x0 + b:8

 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Right]""
  m:0x0 + b:9

Таким образом, это говорит моему компьютеру отправлять нажатия клавиш «Alt + Left» или «Alt + Right» в систему с помощью виртуальной клавиатуры (xvkbd) всякий раз, когда нажимается кнопка 8 на мыши 0 или кнопка 9 на мыши 0 соответственно. Эти клавиши соответствуют клавишам вперед и назад в большинстве приложений. Это будет работать, например, в Nautilus, chrome /

Примечание : вам может потребоваться установка, xvkbdесли она еще не установлена ​​в вашей системе.sudo apt-get install xvkbd

jarvisschultz
источник
Благодарю. Запустив утилиту xev, я вижу много информации, однако, хотя функции прокрутки вверх и вниз отображаются на клавиши 4 и 5, я не получаю никаких событий, когда наклоняю колесо прокрутки или нажимаю две боковые кнопки. Есть идеи почему?
ysap
Возможно, по какой-то причине ваша система не распознает сигналы, посылаемые мышью. Если это так, вы должны увидеть коды ошибок либо в / var / log / messages, либо в dmesg. Подробнее об этой проблеме и о том, как ее решить, читайте по этому адресу: jveweb.net/en/archives/2011/01/… Если это не проблема, нам нужно больше ее изучить.
jarvisschultz
хорошо, я посмотрел журнал dmesg. это довольно длинный список сообщений. Что именно я должен искать?
2012 г.
Кстати, я не упомянул об этом в вопросе, но это может помочь - я использую Ubuntu в качестве гостевой ОС на VMware Player на Windows 7. Из моего опыта работы с несколькими устройствами эмуляция довольно хорошая, действительно ли Ubuntu должен видеть все сообщения, отправленные мышью.
2012 г.
1
Возможно ли, sudo apt-get install xvkbdчто здесь не хватает?
c_korn
5

Вот что я сделал. Никаких sudoкоманд или новых пакетов не требуется:

  • Я проверил мои кнопки с xev-> все кнопки соответствуют определенному значению, что означает, что они распознаются системой
  • осмотреть устройства с xinput list-> указана мышь с идентификатором 9 в моем случае
  • xinput list-props 9 показывает текущее отображение и особенно говорит о метках кнопок -> кажется, что вперед / назад соответствует кнопкам 8 и 9, которых у меня нет (наклон колеса равен 6 и 7 и отображается на горизонтальную прокрутку)
  • переназначение привязок с помощью xmodmapинтерпретации X является для меня наиболее удобным решением. Первые пять кнопок не должны быть изменены (левый правый средний щелчок и прокрутка вверх и вниз), но те, которые сообщают как кнопки 6 и 7, должны перемещаться вперед / назад
  • выполнение xmodmap -e "pointer = 1 2 3 4 5 8 9 6 7 10 11 12 13 14 15 16"в терминале меняет кнопки 6 и 7 на 8 и 9 (виртуально)
  • если это сопоставление не работает, восстановите значения по умолчанию xmodmap -e "pointer = default"и попробуйте другое сопоставление.
  • Теперь у меня есть команда button swap в моём Startup Applications, которая будет выполнена после входа в систему
  • Это также представляется возможным в соответствии с тем, man xmodmapчтобы сохранить эту команду в файле с именем ~/.xmodmaprcили добавить инструкцию к~/.bashrc

Работал на меня. Надеюсь это поможет.

Andreas
источник
1
+1: этот xmodmapподход сразу сработал для меня, но ... можно ли изменить отображение для конкретной мыши?
MestreLion
4

Вот что сработало для меня:

1) Установите xbindkeys

sudo apt-get install xbindkeys

2) Установите xautomation

sudo apt-get install xautomation

3) Создайте файл .xbindkeysrc в вашем домашнем каталоге с этим внутри:

# History Back & Forward
"xte 'keydown Alt_L' 'key Left' 'keyup Alt_L' "
  b:6
"xte 'keydown Alt_L' 'key Right' 'keyup Alt_L' "
  b:7

4) Зайдите в Startup Applications и добавьте программу командой xbindkeys.

5) Выйти и войти

Источник: Форумы Ubuntu

B-Scan
источник
Спасибо, B-Scan. Я предполагаю, что вы имели в виду файл, который будет помещен в мой домашний каталог. Я поместил его туда и добавил xbindkeysзапись в Startup Apps, вышел из системы и ... и это не работает :-(
ysap
Да, домашний каталог. Теперь я увидел, что вы используете VMware. Может быть, может быть связано с этим ?
B-Scan
0

Easystroke легко настраивается.

sudo apt-get install easystroke
Скотт Гудгейм
источник