sabato 13 ottobre 2018

Remapping Keys in macOS

Problema
Utilizzo quotidianamente, sia per scopi lavorativi che personali un MAC Book Pro. Quando sono in ufficio mi capita spesso di connettere schermo e tastiera USB (APPLE Magic Keyboard + Tastierino numerico) esterni come quella mostrata qui.


Con altrettanta frequenza mi capita di utilizzare il tastierino numerico per digitare indirizzi IP. Ma forse per pigrizia, ho sempre digitato dal tastierino i numeri e mai il "." (punto). Questo perché nel tastierino numerico come possibile vedere sotto è presente la "," (virgola).



Soluzione
Ho pensato quindi a come poter ri-mappare solo quello specifico tasto e non l'intero layout della tastiera.
La soluzione l'ho trovato nella technote "Remapping Keys in macOS 10.12 Sierra" di apple TN2450.
Per far funzionare il tutto bisogna procedere come indicato sotto. Da tenere presente che la modifica è temporanea e, ad ogni riavvio le impostazioni vengono perse (in futuro vediamo come rendere permanente questa modifica).
La soluzione è stata testata su di un ambiente macOS Mojave Versione 10.14.
  1. Apriamo un "Terminal"

  2. Procediamo con il verificare la lista dei device riconosciuti dal sistema ..digitando hidutil list


  3. Come possiamo vedere, la tastiera esterna è identificata dalla seguente stringa "Apple Keyboard"

  4. Prendiamo nota del ProductID (nel mio caso "0x221") e del VendorID (nel mio caso "0x5ac")

  5. Prendiamo nota dal link della Technote Apple dello "Usage ID (hex)" che corrisponde alla "," del tastierino alla riga "Keypad . and Delete" che corrisponde a "0x63".

  6. Prendiamo nota anche del carattere che vogliamo impostare al posto del tasto identificato alla riga "Keyboard . and ">"" con il UsageID che corrisponde a "0x37".

  7. Non ci resta che lanciare la seguente stringa da terminale ... e verificarne il funzionamento.

    LIF:~ Lorenzo$ hidutil property --matching '{"ProductID":0x221,"VendorID":0x5ac}' --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000063,"HIDKeyboardModifierMappingDst":0x700000037}]}'


  8. Funziona!!!!

  9. Se vogliamo ritornare alle impostazioni originali lanciare il comando:

    LIF:~ Lorenzo$ hidutil property  --set '{"UserKeyMapping":[]}'

  10. Per verificare le impostazioni lanciare il comando:
    LIF:~ Lorenzo$ hidutil property  --get "UserKeyMapping"


Prossimamente scrivorò, come fare in modo di attivare questa mappatura al ricnoscimento della tastiera, rendendolo permanente.

2 commenti:

  1. Questo commento è stato eliminato dall'autore.

    RispondiElimina
    Risposte
    1. Ciao Paolo, hai ragione, mi ero dimenticato di pubblicare .. come rendere permanente la modifica. Puoi trovarla al seguente link http://lmoglie.blogspot.com/2022/10/remap-continue.html

      Elimina