Як призначити дії "назад" та "вперед" для горизонтального колеса прокрутки Logitech Anywhere Mouse MX?


11

Я використовую Logitech Anywhere Mouse MX на своєму Ubuntu. Миша працює добре, але я не можу призначити дії додатковим кнопкам, доступним на ній. Що найбільше мені не вистачає - це дії "назад" і "вперед", призначені для нахилу колеса прокрутки вліво і вправо.

Як я можу активувати ці функції?

Відповіді:


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 відкривається щоразу, коли ви запускаєте гостьову систему.


Спасибі. Я перевіряю рядок vmx наступного разу, коли перезапускаю систему (не трапляється занадто часто).
ysap

Просто спробував зламати файл vmx - і він, схоже, не працює. Що я бачу, це те, що під час перезавантаження VMware стирає тільки що доданий рядок, ніби в ньому є шаблон файлу за замовчуванням, який скидається щоразу при запуску машини.
ysap

добре, схоже, мені довелося пройти весь шлях і вимкнути автомат, а не просто перезапустити. Тепер налаштування збережені. На жаль, працюючи віддалено зараз, колесо миші здається неефективним (те саме на хост-машині). Я ще раз перевіряю, коли ви знаходитесь на віддаленому місці, і повідомлю про результати.
ysap

О так - просто перевірено, і воно працює!
ysap

Очевидно, що xbindkeysпісля запуску потрібно запустити .
HongboZhu

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 + Вліво» або «Alt + Вправо» в систему за допомогою віртуальної клавіатури (xvkbd) кожного разу, коли натиснути кнопку 8 на миші 0 або натиснути кнопку 9 на миші 0 відповідно. Ці клавіші відповідають клавішам вперед та назад у більшості програм. Це буде працювати, наприклад, у Nautilus, chrome /

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


Спасибі. Запускаючи утиліту xev, я бачу багато інформації, однак, хоча функції прокрутки вгору та вниз відображаються на клавіші 4 та 5, я не отримую жодної події, коли нахиляю колесо прокрутки, а також не натискаю на дві бічні кнопки. Будь-які ідеї чому?
ysap

Можливо, чомусь ваша система не розпізнає сигнали, що надсилаються мишею. Якщо це так, ви повинні побачити коди помилок або в / var / log / messages або в dmesg. Детальніше про цю проблему та як її виправити на цій URL- адресі jveweb.net/uk/archives/2011/01/… Якщо це не проблема, нам доведеться розглянути її більше.
jarvisschultz

добре, я подивився журнал dmesg. це досить довгий список повідомлень. Що саме я повинен шукати?
ysap

До речі, я не згадував це в питанні, але це може допомогти - я використовую Ubuntu як гостьову ОС на VMware Player в Windows 7. З мого досвіду з кількома пристроями емуляція досить хороша, чи Ubuntu обов'язково повинен бачити все повідомлення, що надсилаються мишею.
ysap

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"та спробуйте інше відображення
  • Тепер у моїх програмах запуску є команда swap, яку потрібно виконати після входу
  • також здається можливим відповідно до man xmodmapзбереження цієї команди у файлі, який називається ~/.xmodmaprcабо додає інструкцію до~/.bashrc

Працювали для мене. Сподіваюсь, це допомагає.


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) Перейдіть до програм запуску та додайте програму за допомогою команди xbindkeys.

5) Вийти та увійти

Джерело: Форуми Ubuntu


Спасибі, B-Scan. Я припускаю, що ви мали на увазі файл, який потрібно помістити в домашній каталог. Я помістив його там і додав xbindkeysзапис до запуску програм, вийшов із системи та ... він не працює :-(
ysap

Так, домашній каталог. Тепер я побачив, що ви використовуєте VMware. Може, може бути пов’язане з цим ?
B-Scan

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.