тл; д-р
Я щойно купив Logitech T630 . Це миша Bluetooth, яка підтримує декілька подій на клавіатурі за допомогою жестів (PDF). Ці жести витончені та денді, але я їх мало використовую. Мені страшний час позбутися їх.
Я хочу зробити наступне, щоб зменшити пріоритетність:
- відключити ці жести
- перекроюйте жести (я думаю, що без злому вбудованого програмного забезпечення або зворотної інженерії драйверів пристроїв Windows / OS X це неможливо)
Я не хочу:
- використовувати Windows
- відключити всі жести
Більше інформації читайте на…
кнопки та жести
Тринадцять можливих подій миші:
- клацання лівою кнопкою миші
- середній клацання
- клацніть правою кнопкою миші
- прокрутити вгору
- прокрути вниз
- прокрутіть ліворуч
- прокрутити праворуч
- проведіть по краю вліво
- проведіть по краю праворуч
- проведіть пальцем ліворуч
- проведіть двома пальцями праворуч
- двічі натисніть
- подвійний дотик двома пальцями
Перші сім є в порядку того, як ОС їх відображає.
Тільки перші три є механічними, всі інші використовують сенсорну поверхню:
Параметри графічного інтерфейсу
Налаштування в Kubuntu Trusty було легким вітром, але він не підтримує налаштування цих інших жестів.
Ці жести не пов'язані з:
- тачпад (
synaptics
не працює) - доступність
- гарячі куточки
- стандартні жести миші
Усі налаштування, пов’язані з тими, були перевірені, і всі вони вимкнено.
налаштування командного рядка
lomoco
lomoco
Утиліта для допомоги в налаштуванні спеціальних функцій Logitech мишей USB не застосовується.
xinput
Я думав, xinput
може запропонувати допомогу:
$ xinput --list | grep pointer
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Ultrathin Touch Mouse id=13 [slave pointer (2)]
$ xinput --list-props 13
Device 'Ultrathin Touch Mouse':
Device Enabled (144): 1
Coordinate Transformation Matrix (146): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (266): 0
Device Accel Constant Deceleration (267): 1.000000
Device Accel Adaptive Deceleration (268): 1.000000
Device Accel Velocity Scaling (269): 10.000000
Device Product ID (261): 1133, 45069
Device Node (262): "/dev/input/event11"
Evdev Axis Inversion (270): 0, 0
Evdev Axes Swap (272): 0
Axis Labels (273): "Rel X" (154), "Rel Y" (155), "Rel Horiz Wheel" (746), "Rel Vert Wheel" (265)
Button Labels (274): "Button Left" (147), "Button Middle" (148), "Button Right" (149), "Button Wheel Up" (150), "Button Wheel Down" (151), "Button Horiz Wheel Left" (152), "Button Horiz Wheel Right" (153), "Button Side" (1032), "Button Extra" (1033), "Button Unknown" (264), "Button Unknown" (264), "Button Unknown" (264), "Button Unknown" (264)
Evdev Middle Button Emulation (275): 0
Evdev Middle Button Timeout (276): 50
Evdev Third Button Emulation (277): 0
Evdev Third Button Emulation Timeout (278): 1000
Evdev Third Button Emulation Button (279): 3
Evdev Third Button Emulation Threshold (280): 20
Evdev Wheel Emulation (281): 0
Evdev Wheel Emulation Axes (282): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (283): 10
Evdev Wheel Emulation Timeout (284): 200
Evdev Wheel Emulation Button (285): 4
Evdev Drag Lock Buttons (286): 0
Зверніть увагу на 13 міток кнопок:
$ xinput --get-button-map "Ultrathin Touch Mouse"
1 2 3 4 5 6 7 8 9 10 11 12 13
Відключення їх не допомогло:
$ xinput --set-button-map "Ultrathin Touch Mouse" 1 2 3 4 5 6 7 0 0 0 0 0 0
Незважаючи на те, що, наприклад, вона може перетворити середню кнопку миші на клацання лівою кнопкою миші:
$ xinput --set-button-map "Ultrathin Touch Mouse" 1 1 3 4 5 6 7 0 0 0 0 0 0
xmodmap
Схожий на ті xinput
ж результати:
$ xmodmap -e "pointer = 1 2 3 4 5 6 7 0 0 0 0 0 0"
inputkbd
Запропонований elmicha нижче , це працює на рівні ядра, намагаючись зробити так, щоб жести призводили до подій нульової клавіатури. Потрібно працювати, але не пощастило і з наступним процесом:
$ sudo input-kbd 4 > keymap # note the 4 is from /dev/input/event4
# edit the keymap to map any combination of keys to either 0 or 240 (KEY_UNKNOWN)
# e.g. change this:
# 0x700e0 = 29 # KEY_LEFTCTRL
# to this:
# 0x700e0 = 0 # KEY_LEFTCTRL
# or this:
# 0x700e0 = 240 # KEY_LEFTCTRL
$ sudo input-kbd -f keymap 4
$ sudo input-kbd 4 # should return the updated keymap
Після цього карта клавіш не показує змін.
xkbcomp
Про це запропонував X
хакер на запитання Пітер Хаттерр , безумовно, людина, яка повинна знати, що він робить. Все-таки не щастить:
$ xkbcomp -xkb $DISPLAY t630.xkb
# edit the keyboard description and replace the definition of any key to NoSymbol or VoidSymbol
# e.g. change this:
# key <LCTL> { [ Control_L ] };
# to this:
# key <LCTL> { [ NoSymbol ] };
# or this:
# key <LCTL> { [ VoidSymbol ] };
$ sudo xkbcomp -i 8 t630.xkb $DISPLAY # here the 8 is the id in xinput, names don't work
$ xkbcomp -xkb -i 8 $DISPLAY - # should return the updated keyboard description
Після цього опис клавіатури не показує змін.
Петро відчув, що це, ймовірно, пов’язано з тим, що X
плутається характер природи пристрою як клавіатури чи миші, подібний до цієї помилки, яка має протилежну проблему. Це може пояснити, чому всі інші очікувані елементи не працюють. Однак він також сказав, що використання evdev
не повинно працювати з тієї ж причини.
evdev
Спочатку здавалося, що це працює, але це теж не відбувається. Це намагається використовувати загальний драйвер введення для X
встановлення відображення кнопок, додаючи наступне до /usr/share/X11/xorg.conf.d/10-evdev.conf
або /etc/X11/xorg.conf.d/10-evdev.conf
:
# custom for Logitech Ultrathin Touch mouse
Section "InputDevice"
Identifier "Logitech bluetooth Touch Mouse"
Driver "evdev"
Option "Name" "Ultrathin Touch Mouse"
Option "ButtonMapping" "1 2 3 4 5 6 7 0 0 0 0 0 0"
EndSection
Section "InputClass"
Identifier "Ultrathin Touch Mouse"
Option "ButtonMapping" "1 2 3 4 5 6 7 0 0 0 0 0 0"
EndSection
Здається, це працює без помилок у /var/log/Xorg.0.log
(використанні grep EE
) та xinput
підтверджує відображення кнопки, але це не призводить до ефекту бажання.
Однак, як відомо, це працює для T631.
події на клавіатурі
Я думаю, що проблема полягає в тому, що ці жести генерують події на клавіатурі:
$ sudo evemu-record /dev/input/event4 | grep "E: "
# swipe edge right
E: 0.000000 0004 0004 458976 # EV_MSC / MSC_SCAN 458976
E: 0.000000 0001 001d 0001 # EV_KEY / KEY_LEFTCTRL 1
E: 0.000000 0004 0004 458979 # EV_MSC / MSC_SCAN 458979
E: 0.000000 0001 007d 0001 # EV_KEY / KEY_LEFTMETA 1
E: 0.000000 0004 0004 458795 # EV_MSC / MSC_SCAN 458795
E: 0.000000 0001 000f 0001 # EV_KEY / KEY_TAB 1
E: 0.000000 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
E: 0.002980 0004 0004 458976 # EV_MSC / MSC_SCAN 458976
E: 0.002980 0001 001d 0000 # EV_KEY / KEY_LEFTCTRL 0
E: 0.002980 0004 0004 458979 # EV_MSC / MSC_SCAN 458979
E: 0.002980 0001 007d 0000 # EV_KEY / KEY_LEFTMETA 0
E: 0.002980 0004 0004 458795 # EV_MSC / MSC_SCAN 458795
E: 0.002980 0001 000f 0000 # EV_KEY / KEY_TAB 0
E: 0.002980 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
# swipe edge left
E: 3.306977 0004 0004 458978 # EV_MSC / MSC_SCAN 458978
E: 3.306977 0001 0038 0001 # EV_KEY / KEY_LEFTALT 1
E: 3.306977 0004 0004 458979 # EV_MSC / MSC_SCAN 458979
E: 3.306977 0001 007d 0001 # EV_KEY / KEY_LEFTMETA 1
E: 3.306977 0004 0004 458866 # EV_MSC / MSC_SCAN 458866
E: 3.306977 0001 00c1 0001 # EV_KEY / KEY_F23 1
E: 3.306977 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
E: 3.310979 0004 0004 458978 # EV_MSC / MSC_SCAN 458978
E: 3.310979 0001 0038 0000 # EV_KEY / KEY_LEFTALT 0
E: 3.310979 0004 0004 458979 # EV_MSC / MSC_SCAN 458979
E: 3.310979 0001 007d 0000 # EV_KEY / KEY_LEFTMETA 0
E: 3.310979 0004 0004 458866 # EV_MSC / MSC_SCAN 458866
E: 3.310979 0001 00c1 0000 # EV_KEY / KEY_F23 0
E: 3.310979 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
# two finger double tap
E: 10.225976 0004 0004 458983 # EV_MSC / MSC_SCAN 458983
E: 10.225976 0001 007e 0001 # EV_KEY / KEY_RIGHTMETA 1
E: 10.225976 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
E: 10.229986 0004 0004 458983 # EV_MSC / MSC_SCAN 458983
E: 10.229986 0001 007e 0000 # EV_KEY / KEY_RIGHTMETA 0
E: 10.229986 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
# two finger swipe left
E: 27.934977 0004 0004 589828 # EV_MSC / MSC_SCAN 589828
E: 27.934977 0001 0113 0001 # EV_KEY / BTN_SIDE 1
E: 27.934977 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
E: 27.937983 0004 0004 589828 # EV_MSC / MSC_SCAN 589828
E: 27.937983 0001 0113 0000 # EV_KEY / BTN_SIDE 0
E: 27.937983 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
# two finger swipe right
E: 32.513990 0004 0004 589829 # EV_MSC / MSC_SCAN 589829
E: 32.513990 0001 0114 0001 # EV_KEY / BTN_EXTRA 1
E: 32.513990 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
E: 32.516994 0004 0004 589829 # EV_MSC / MSC_SCAN 589829
E: 32.516994 0001 0114 0000 # EV_KEY / BTN_EXTRA 0
E: 32.516994 0000 0000 0000 # ------------ SYN_REPORT (0) ----------
Що стосується ключової карти , вони стосуються:
$ sudo input-kbd 4 | grep -e KEY_LEFTCTL -e KEY_LEFTMETA -e KEY_TAB -e KEY_LEFTALT -e KEY_F23 -e KEY_RIGHTMETA -e BTN_SIDE -e BTN_EXTRA
0x700e2 = 56 # KEY_LEFTALT
0x700e3 = 125 # KEY_LEFTMETA
0x700e7 = 126 # KEY_RIGHTMETA
0x7002b = 15 # KEY_TAB
0x70072 = 193 # KEY_F23
0x700e2 = 56 # KEY_LEFTALT
0x700e3 = 125 # KEY_LEFTMETA
0x700e7 = 126 # KEY_RIGHTMETA
0x90004 = 275 # BTN_SIDE
0x90005 = 276 # BTN_EXTRA
Подвійне торкання , здається, нічого не робить.
інші посилання
Це також може допомогти вказати на посилання на подібні проблеми в помилку, коли вищезазначена миша не знаходиться в gnome-bluetooth
базі даних pincode. Потрібно говорити, що подальший коментар до цієї теми офіційно не є темою цього звіту про помилку, але посилання можуть допомогти додати певну точку зору на суть цієї проблеми.
Ось вихід evemu-describe /dev/input/event4
FWIW.
Bluetooth адаптери
FWIW Я використовував два різні адаптери Bluetooth Bluetooth:
$ lsusb | grep Bluetooth
Bus 007 Device 010: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
$ lsusb | grep Bluetooth
Bus 007 Device 011: ID 0a5c:21e8 Broadcom Corp. BCM20702A0 Bluetooth 4.0
vmmouse_detect
утиліти. xmodmap
і xinput
навіть xorg.conf
стане в нагоді під вашим Kubuntu, але не під Windows VM. Отже, під WinVM ви маєте можливість налаштувати мишу за допомогою стандартних утиліт Logitech для Windows.