Spis treści
- Wprowadzenie
- Znajdowanie kodów klawiszy dla twojego urządzenia
- Dostosowywanie klawiszy akcji interaktywności
Wprowadzenie
Jeśli Twój ekran używa klawiatury do interaktywnej aplikacji, możesz chcieć zastąpić lub rozszerzyć wiązania klawiszy dla akcji interaktywności. Można to łatwo zrobić, korzystając z Zaawansowanych Directives Odtwarzacza. Klawiatury występują w wielu formach i wariantach, dlatego zamienniki klawiszy muszą być zadeklarowane w postaci kodów klawiszy.
Znajdowanie kodów klawiszy dla twojego urządzenia
Aby znaleźć kody klawiszy dla wybranej klawiatury, najpierw podłącz ją do Odtwarzacza, a następnie ssh do tego samego Odtwarzacza. Następnie kod klawisza dla dowolnego klawisza można odzyskać za pomocą narzędzia evtest.
Uruchomienie evtest poczyniowo wyświetli dostępne urządzenia wejściowe:
$ evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Dell KB216 Wired Keyboard
/dev/input/event1: Dell KB216 Wired Keyboard System Control
/dev/input/event2: Dell KB216 Wired Keyboard Consumer Control
Select the device event number [0-2]: 0
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x413c product 0x2113 version 0x111
Input device name: "Dell KB216 Wired Keyboard"
Po wybraniu urządzenia, które w naszym przypadku to 0, narzędzie wyświetla podstawowe informacje o klawiaturze i czeka na wprowadzenie.
Select the device event number [0-2]: 0
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x413c product 0x2113 version 0x111
Input device name: "Dell KB216 Wired Keyboard"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 1 (KEY_ESC)
Event code 2 (KEY_1)
Event code 3 (KEY_2)
Event code 4 (KEY_3)
(more event codes...)
Properties:
Testing ... (interrupt to exit)
Wypisując dowolny klawisz, program wyświetla szczegółowe informacje o zdarzeniu, w tym kod klawisza. Na przykład, naciśnięcie przycisku spacebar zwraca następujące odpowiedzi:
Event: time 1694082009.896384, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002c
Event: time 1694082009.896384, type 1 (EV_KEY), code 57 (KEY_SPACE), value 1
Event: time 1694082009.896384, -------------- SYN_REPORT ------------
Zdarzenie EV_KEY zawiera potrzebne informacje, ponieważ KEY_SPACE odpowiada klawiszowi z kodem 57.
Dostosowywanie klawiszy akcji interaktywności
Obecnie do dostosowania są wspierane akcje enter oraz exit, które domyślnie odpowiadają spacebar i esc odpowiednio.
Możesz skonfigurować to w konfiguracji Zaawansowanych Directives Odtwarzacza (konfiguracja Ekran → Advanced → Customization → Advanced Player Directives) przy pomocy następującej dyrektywy:
custom_keyboard_configuration={"enter": [30, 31], "exit": [37, 38]}
W tym przykładzie klawisze enter realizują akcje A(30) i S(31), a klawisze exit realizują akcje K(37), L(38).