To moja trzecia odpowiedź, kiedy mogę polecić actkbd
... :)
Jeśli więc chcesz skonfigurować wszystkie klawisze drugiej klawiatury, aby uruchamiały polecenia i nie wpisywały liter, możesz użyć actkbd
... :)
Po instalacji actkbd
musimy dowiedzieć się, jaki plik urządzenia jest używany do odbierania zdarzeń z klawiatury:
pbm@tauri ~ $ cat /proc/bus/input/devices
[cut]
I: Bus=0003 Vendor=046d Product=c31c Version=0110
N: Name="Logitech USB Keyboard"
P: Phys=usb-0000:00:1a.0-1.1/input0
S: Sysfs=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1/1-1.1:1.0/input/input7
U: Uniq=
H: Handlers=sysrq kbd event5
B: PROP=0
B: EV=120013
B: KEY=1000000000007 ff9f207ac14057ff febeffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=1f
I: Bus=0003 Vendor=046d Product=c31c Version=0110
N: Name="Logitech USB Keyboard"
P: Phys=usb-0000:00:1a.0-1.1/input1
S: Sysfs=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1/1-1.1:1.1/input/input8
U: Uniq=
H: Handlers=kbd event6
B: PROP=0
B: EV=1b
B: KEY=2010000 397ad801d001 1e000000000000 0
B: ABS=100000000
B: MSC=10
[cut]
Na tej liście powinieneś znaleźć swoją klawiaturę i sprawdzić jej obsługę. Służy sudo actkbd -s -d /dev/input/HANDLER_NAME
do sprawdzania, czy ten moduł obsługi wysyła zdarzenia. Jeśli uruchomisz to polecenie i naciśniesz klawisz na klawiaturze (sprawdź klawisze, które chcesz powiązać z poleceniami), powinieneś dostać coś takiego:
pbm@tauri ~ $ sudo actkbd -s -d /dev/input/event5
Keys: 57
Keys: 35
Jeśli masz kody actkbd
dostępu, możemy utworzyć plik konfiguracyjny:
pbm@tauri ~ $ sudo nano /etc/actkbd.conf
30:::sudo -u pbm DISPLAY=:0 amarok
//30 is keycode for letter a
Po zapisaniu tego pliku powinniśmy sprawdzić, czy konfiguracja działa:
pbm@tauri ~ $ sudo actkbd -d /dev/input/event5 -D
Po naciśnięciu klawisza, który masz w poleceniu file config, uruchomiona zostanie ostatnia kolumna pliku config.
Myślę, że istnieje sposób na wyłączenie wysyłania kluczy do aplikacji, ale nie udało mi się go znaleźć - sprawdź plik README .
Zamiast próbować go wyłączyć, actkbd
możesz wyłączyć klawiaturę w X.
pbm@tauri ~ $ xinput list
[cut]
↳ Logitech USB Keyboard id=12 [slave keyboard (3)]
↳ Logitech USB Keyboard id=11 [slave keyboard (3)]
pbm@tauri ~ $ xinput set-prop 11 "Device Enabled" 0
pbm@tauri ~ $ xinput set-prop 12 "Device Enabled" 0
Powinien wykonać pracę ... :) Aby uzyskać więcej informacji na temat actkbd
sprawdzania tej odpowiedzi .
Za pomocą actkbd
(i prawdopodobnie kilku skryptów) możesz także skonfigurować klawiaturę do zmiany trybów z trybu poleceń na tryb wprowadzania z rosyjskimi literami. Na tę przeczytaną Ulrich Schwarz's
odpowiedź.