Per configurare la tastiera ergonomica Microsoft 4000 dobbiamo creare un file di configurazione che contenga la dichiarazione della tastiera e i record per la mappatura dei tasti.
Per fare ciò ci sono tre tipi di informazioni che dobbiamo determinare:
- Tipo di tastiera
- Il tasto
scancode
che è il tasto reale sulla tastiera
- Il tasto
name
per assegnare la funzionalità desiderata al tasto selezionato
Per prima cosa trova il tipo di tastiera:
Nel terminale eseguire il comando seguente:
lsusb
l'output determina il tipo di tastiera:
...
Bus 004 Device 022: ID 045e:00db Microsoft Corp. Natural Ergonomic Keyboard 4000 V1.0
...
Appare dopo ID
. In questo caso lo è045e:00db
In secondo luogo trovare lo scancode e il nome della chiave.
Per determinarli, utilizziamo il evtest
programma che disconnette le informazioni sull'evento di un dispositivo specifico sul terminale:
evtest
Se non si dispone del programma, installarlo eseguendo il comando seguente:
sudo apt-get install evtest
Eseguendo il evtest
programma otteniamo il seguente output:
No device specified, trying to scan all of /dev/input/event* Available devices:
/dev/input/event0: Power Button
/dev/input/event1: Power Button
/dev/input/event2: PixArt USB Optical Mouse
/dev/input/event3: Microsoft Natural® Ergonomic Keyboard 4000
/dev/input/event4: Microsoft Natural® Ergonomic Keyboard 4000
/dev/input/event5: HDA Intel Front Headphone
/dev/input/event6: HDA Intel Line Out
/dev/input/event7: HDA Intel Line
/dev/input/event8: HDA Intel Rear Mic
/dev/input/event9: HDA Intel Front Mic
/dev/input/event10: HDA ATI HDMI HDMI/DP,pcm=3
Select the device event number [0-10]:
L'output è praticamente autoesplicativo, inserisci il numero appropriato per la tastiera, che qui è il numero 3
quindi premi invio:
In questo modo, verranno emesse molte informazioni sul terminale e termina nelle seguenti righe:
...
Testing ... (interrupt to exit)
Event: time 1472203902.240594, type 17 (EV_LED), code 0 (LED_NUML), value 0
Event: time 1472203902.240594, -------------- SYN_REPORT ------------
Event: time 1472203902.281456, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70058
Event: time 1472203902.281456, type 1 (EV_KEY), code 96 (KEY_KPENTER), value 0
Event: time 1472203902.281456, -------------- SYN_REPORT ------------
Ora con ogni pressione del tasto sulla tastiera scarica le informazioni sul tasto. Ad esempio il tasto Barra accanto a Maiusc destro mostra:
Event: time 1472205062.294078, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70038
Event: time 1472205062.294078, type 1 (EV_KEY), code 12 (KEY_SLASH), value 0
Event: time 1472205062.294078, -------------- SYN_REPORT ------------
La prima riga del registro contiene le informazioni sul tasto effettivo sulla tastiera, ad esempio scancode
che segue il valore. In questo caso è 70038
La seconda riga contiene le informazioni sulla funzionalità assegnate come il nome della chiave. In questo caso è SLASH . Esamina le altre chiavi per trovare i nomi appropriati.
Quindi in breve:
- Il nostro tipo di tastiera è: 045e: 00db
- Lo scancode del tasto Slash è: 70038
- Il nome della chiave per l'assegnazione è SLASH
Dopo aver raccolto le informazioni necessarie creiamo il file di configurazione:
sudoedit /etc/udev/hwdb.d/61-keyboard-local.hwdb
Premi i
per attivare la modalità Inserisci e digita quanto segue:
keyboard:usb:v045Ep00DB*
KEYBOARD_KEY_70038=minus
Salvare ed uscire premendo, escape
quindi digitando :wq
e premendo invio .
Quindi eseguire i due comandi seguenti per rendere effettiva la configurazione:
sudo udevadm hwdb --update
sudo udevadm control --reload
Scollegare infine la tastiera e ricollegarla.
Alcune note sul file di configurazione:
- Il formato del file dovrebbe essere esattamente come mostrato, lo spazio prima della mappatura dei record è critico.
- Invece di
sudoedit
utilizzare qualsiasi altro editor di testo, ricorda di seguire l'esatto formato del file come spiegato sopra.
- Esistono due caratteri aggiunti al tipo di tastiera:
v
e p
che rappresentano fornitore e prodotto. Sono anche importanti.
- Il tipo di tastiera è scritto in maiuscolo nel file di configurazione. Il nostro tipo di tastiera era 045e: 00db ma nella configurazione inseriamo v045Ep00DB *
- Lo scancode della chiave viene subito dopo
KEYBOARD_KEY_
- Il nome della chiave appare in minuscolo nel file di configurazione
- Puoi personalizzare praticamente ogni tasto della tastiera seguendo questo tutorial.