У меня есть Wacom Cintiq 24HD планшет/экран, который имеет несколько наборов кнопок. Большинство из них хорошо работает [редактирование: и настраиваются с xsetwacom], но существует один набор кнопок (сенсорные кнопки, на самом деле) на вершине экрана, который не полностью зарегистрируется в стеке Ubuntu GUI.
Изображение рассматриваемых кнопок
Возьмите крайние левые из этих трех кнопок, маркированная та I
. Если я просто нажимаю его, ничего не происходит. Если я использую xev
, кнопка не инициировала вывода (в противоположность рабочим кнопкам), но оба sudo showkey
и sudo evtest
действительно покажите, что кнопка регистрируется в ядре (я предполагаю). Я определил код клавиши как 202
:
% sudo evtest /dev/input/event4
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x56a product 0xf4 version 0x110
Input device name: "Wacom Cintiq 24HD Pad"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 148 (KEY_PROG1)
Event code 149 (KEY_PROG2)
Event code 202 (KEY_PROG3)
Event code 256 (BTN_0)
Event code 257 (BTN_1)
Event code 258 (BTN_2)
Event code 259 (BTN_3)
Event code 260 (BTN_4)
Event code 261 (BTN_5)
Event code 262 (BTN_6)
Event code 263 (BTN_7)
Event code 264 (BTN_8)
(output trimmed)
Event: time 1477672672.059563, type 1 (EV_KEY), code 202 (KEY_PROG3), value 1
Event: time 1477672672.059563, type 3 (EV_ABS), code 40 (ABS_MISC), value 15
Event: time 1477672672.059563, -------------- SYN_REPORT ------------
Event: time 1477672672.291614, type 1 (EV_KEY), code 202 (KEY_PROG3), value 0
Event: time 1477672672.291614, type 3 (EV_ABS), code 40 (ABS_MISC), value 0
Event: time 1477672672.291614, -------------- SYN_REPORT ------------
showkey
соглашается с evtest
то, что код клавиши 202
:
% sudo showkey -k
kb mode was ?UNKNOWN?
[ if you are trying this under X, it might not work
since the X server is also reading /dev/console ]
press any key (program terminates 10s after last keypress)...
keycode 28 release
keycode 202 press
keycode 202 release
Однако я хочу на самом деле использовать кнопку для чего-то, поэтому если я пытаюсь временно присвоить кнопку ключу для тестирования, это, кажется, не работает.
xmodmap -e "keycode 202 = a"
Нет производится, если я нажимаю кнопку когда в, скажем, эмуляторе терминала.
Я делаю что-то не так с xmodmap или являюсь там некоторым другим инструментом, который я могу использовать, чтобы заставить материал произойти, когда я нажимаю эту кнопку? Я в конечном счете хочу, чтобы кнопка инициировала сценарий, но если я могу сделать это косвенно путем переотображения кнопки на некоторый другой ключ с модификаторами, это является также большим. Прямо сейчас я не знаю, что попробовать затем.
Используйте xsetwacom:
http://linuxwacom.sourceforge.net/wiki/index.php/Tablet_Configuration
(см. "человека xsetwacom" также),
Найдите свое устройство с
xsetwacom list
Пример произвел:
Wacom DTK2241 Pad pad id: 12 type: PAD
Wacom DTK2241 Pen stylus id: 13 type: STYLUS
Wacom DTK2241 Pen eraser id: 14 type: ERASER
Мое устройство было DTK2241, таким образом, я буду использовать этот пример ниже:
xsetwacom -s get "Wacom DTK2241 Pad pad" all
Затем для списка устройств клавиатуры Ваши доступные кнопки с:
xsetwacom -s get "Wacom DTK2241 Pad pad" all
Пример произвел:
xsetwacom set "Wacom DTK2241 Pad pad" "Button" "1" "button +1 "
xsetwacom set "Wacom DTK2241 Pad pad" "Button" "2" "+2 "
xsetwacom set "Wacom DTK2241 Pad pad" "Button" "3" "+3 "
xsetwacom set "Wacom DTK2241 Pad pad" "Button" "8" "+8 "
xsetwacom set "Wacom DTK2241 Pad pad" "Button" "9" "+9 "
xsetwacom set "Wacom DTK2241 Pad pad" "Button" "10" "+10 "
....
Затем установите кнопку, например:
xsetwacom set "Wacom DTK2241 Pad pad" "Button" "1" "key a"