Переназначить ключ для педального переключателя
Я купил простой ножной переключатель и пытался переназначить ключ на что-то другое. В настоящее время педальный переключатель связан с кодом 56 (буква b). xev возвращает следующее, когда я нажимаю педальный переключатель:
KeyPress event, serial 36, synthetic NO, window 0x1000001,
root 0x81, subw 0x0, time 29926629, (-485,502), root:(713,618),
state 0x10, keycode 56 (keysym 0x62, b), same_screen YES,
XLookupString gives 1 bytes: (62) "b"
XmbLookupString gives 1 bytes: (62) "b"
XFilterEvent returns: False
KeyRelease event, serial 36, synthetic NO, window 0x1000001,
root 0x81, subw 0x0, time 29927029, (-485,502), root:(713,618),
state 0x10, keycode 56 (keysym 0x62, b), same_screen YES,
XLookupString gives 1 bytes: (62) "b"
XFilterEvent returns: False
Я не хочу переназначать свою клавишу "b" для всех моих клавиатур, поэтому я пытался заставить xkbcomp работать.
я пробовал xkbcomp -i 14 ~/Documents/footswitchlayout.xkb $DISPLAY
и вручную редактировать макет и активировать его с помощью xkbcomp -i 1 $DISPLAY ~/Documents/footswitchlayout.xkb
но отмечая изменения. Он по-прежнему печатает клавишу "b".
Xinput возвращает
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ A4Tech PS/2+USB Mouse id=13 [slave pointer (2)]
⎜ ↳ RDing FootSwitch1F1. id=14 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=16 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Video Bus id=8 [slave keyboard (3)]
↳ Power Button id=9 [slave keyboard (3)]
↳ Sleep Button id=10 [slave keyboard (3)]
↳ Laptop_Integrated_Webcam_2HDM id=11 [slave keyboard (3)]
↳ DELL Dell QuietKey Keyboard id=12 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=15 [slave keyboard (3)]
↳ Dell WMI hotkeys id=17 [slave keyboard (3)]
Что я делаю неправильно? Кто-нибудь может указать мне правильное направление?
1 ответ
После многих хлопот и повторных привязок клавиш, не работающих с xkbcomp (даже если он работал с любой другой клавиатурой. Возможно, потому что педальный переключатель рассматривается как мышь), я нашел небольшую терминальную программу, которая полностью решает проблему и проста в использовании.
Программа называется footswitch
Радослав Герганов.
Вы можете установить его, выполнив следующие команды:
sudo apt-get install libhidapi-dev
git clone https://github.com/rgerganov/footswitch.git
cd footswitch
make
sudo make install
После того, как вы установили его, вы можете прочитать ваши клавиши sudo footswitch -r
и перепрограммировать их sudo footswitch -k <key>
, Все предварительно запрограммированные ключи можно найти в common.c
,
Изменить: Это переназначение по сути перепрограммирования ножной переключатель, и он повлияет на ножной переключатель на ПК. Так что, если вы используете это и вам нужен другой ключ в окнах, вам придется переназначать его для окон каждый раз, когда вы меняете ключ ножного переключателя в Linux или Mac.