Миша Logitech M560 на Linux посилає заплутані вхідні події


6

Мій друг купив вчора мишу Logitech M560 (ви можете побачити її тут ) і спробував її на своїй системі Ubuntu. Здається, це відносно нова модель, тому нічого нема про нього, окрім власного веб-сайту logitech. Ключове відображення було вимкнено, але я думав, що було легко перепризначити кнопки - я робив це протягом останнього десятиліття з різноманітними мишами Logitech. Однак, на відміну від інших мишей, де ви повинні сказати перемикач 13 кнопкою 2, ця миша посилає деякі ключові події натискання, як якщо б ви набрали на клавіатурі.

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

Я хотів отримати всі "звичайні" кнопки для того, щоб зробити те, що вони повинні були, і відобразити середню дію кліків на маленьку кнопку за кермом, тому я почав з xev і xinput, щоб визначити, який є який

Кнопка 1 - & gt; лівою кнопкою миші Кнопка 3 - & gt; клацніть правою кнопкою миші Кнопка 4 - & gt; колесо вгору Кнопка 5 - & gt; колесо вниз Кнопка 8 - & gt; нахил вліво Кнопка 9 - & gt; нахиляти вправо

А ось дивна частина: Натискання кнопки вперед є подібним до натискання клавіші Super_R (код 134). Натискання кнопки назад дає змогу одночасно Super_L і d (коди ключів 133 & 40).

Ще більш дивно: Натискання квадратної кнопки один раз дає одночасно Alt_L, Super_L і XF86TouchpadOff (коди клавіш 64, 133, 201). Натискання на неї повторне натискання кнопки 1 ...

Отже, перші шість кнопок відправляють події натискання / випуску кнопок, а інші три надсилають декілька подій натискання / випуску клавіш.

Відносно легко зіставити кнопку миші з клавіатурою клавіатури, але чи можна зробити навпаки, не порушуючи клавіатуру системи? Чи повинен я зв'язатися з ким-небудь з kernel.org, щоб додати підтримку миші?


Я, здається, згадую цих мишей пам'ятайте їх налаштування, тому мені цікаво, чи є вона вже існуючою розкладкою
Journeyman Geek

Згідно з керівництвом цієї миші, вона спеціально розроблена для виконання цих операцій на Windows 8. F.e. те, що ви називаєте кнопку "вперед" (як на M500), позначено в керівництві "показати робочий стіл Windows 8". Так що я впевнений, що миша фактично посилає ці події і спеціально розроблена для того, щоб порадувати Windows 8. У посібнику також згадується, що для Windows 7 потрібне спеціальне програмне забезпечення для роботи, так що йдіть фігурою.
Bobby

@ journeyman-geek Я думав, що розкладка клавіш виведена з драйвера kernel / evdev плюс будь-які конкретні налаштування X-сервера.
xander.pl

@bobby Я бачив, що квадратна кнопка повинна відкривати деякі ящики, якщо вони так і називаються в win 8, але коди клавіш, схоже, не відповідають відповідним клавіатурним скороченням. Компанія Logitech розробляє програмне забезпечення SetPoint, яке дає змогу відображати ключі в будь-який спосіб і для різних додатків, але це виключно вікно.
xander.pl

необов'язково, багато сучасних мишей фактично зберігають розкладки клавіатури в пам'яті.
Journeyman Geek

Відповіді:


5

Ви можете перепризначити ключі через udev. Миша діє як клавіатура. Тут є робота: https://bugzilla.redhat.com/show_bug.cgi?id=1035668


Дякуємо за обхідний шлях, але він не працював у моєму випадку. У мене є Logitech M560 і Logitech K750R, підключені через єдиний об'єднуючий приймач. Коли я застосовую обхідний шлях, деякі клавіші-модифікатори та літери d перестають працювати на клавіатурі, тоді як додаткові кнопки миші також не працюють. Чи може це бути викликане тим, що вони використовують єдиний об'єднуючий приймач? Дякую!
Anton Beloglazov

Так. Робота навколо в даний час перемикає виклики клавіатури на уніфікований приймач. Це означає, що ви не можете використовувати M560 & amp; іншу бездротову клавіатуру Logitech.
Jerone Young

Дякуємо за вашу відповідь, Jerone! Чи відомо вам про будь-яке інше потенційне рішення, яке може вирішити цю проблему?
Anton Beloglazov

1

це моя конфігурація:

~$ cat .xbindkeysrc |egrep -v "^$|^#"
"xte 'mouseclick 2'"
    m:0x50 + c:134

Таким чином, якщо зроблено " роботи msgstr "середня кнопка. \ t

Я вибираю текст, який мені потрібно скопіювати / вставити, утримуючи праву кнопку, після вибору, де вставити я натискаю кнопку. Якщо потрібно вставити знову той самий текст, оскільки квадратна кнопка не піднімає однакові події кожного разу, я натискаю її швидко двічі.

Якщо вибрати інший текст, подія, розкидана з квадратної кнопки, завжди буде такою, що робить xte емуляцією середнього клацання.

Не є досконалим, але краще, ніж взагалі не мати середнього клацання.


0

Мені дуже шкода, що це Гай, але будь ласка, потерпіть зі мною. Я використовую миші Logitech і вказівні пристрої на безліч машин, Windows, Linux і обох, без проблем. Навіть тачпад T650, який рекламувався як пристрій Windows 8, працював належним чином у Linux з оновленням прошивки. M560 просто не може бути виконаний на 100% правильно в будь-якому, крім Windows, без деяких надмірних хакі. Можливо, ви зможете помінятися з кимось іншим для старшої / робочої моделі, або ви зможете отримати відшкодування, оскільки з упаковки зовсім не зрозуміло, що миша не сумісна ні з чим, окрім Windows, але я б не хотів Не рекомендую витрачати на це багато часу.

Я особисто засланий мій M560 до HTPC, що не отримує багато використання миші.


-1

Це 2018, з моїм KDE Fedora 25, ядром 4.13.16-100.fc25.x86_64 і середньою кнопкою M560 працює з коробки як звичайна середня кнопка (кнопка 2).

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