Remapper des touches de clavier sous MacOS

La touche Backspace de mon clavier est cassée, c'est franchement pas pratique ! Aucun droit à l'erreur. Voyons comment tricher en l'intervertissant avec une touche qui marche.

Plan d'action

On va intervertir ces 2 touches :

  • F5 <-> Delete (backspace)
  • F6 <-> Delete forward (= fn + backspace)

hidutil

Cette page indique un exemple d'usage de la commande hidutil ainsi que les codes hexa de chaque touche de clavier (F5 = 0x3E, Delete (backspace) = 0x2A, ...)

Pour voir si un mapping est déjà en place :

1hidutil property --get "UserKeyMapping"

Pour définir le mapping du plan d'action :

1hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x70000002A,"HIDKeyboardModifierMappingDst":0x70000003E},{"HIDKeyboardModifierMappingSrc":0x70000003E,"HIDKeyboardModifierMappingDst":0x70000002A},{"HIDKeyboardModifierMappingSrc":0x70000004C,"HIDKeyboardModifierMappingDst":0x70000003F},{"HIDKeyboardModifierMappingSrc":0x70000003F,"HIDKeyboardModifierMappingDst":0x70000004C}]}'

Pour annuler le mapping, on remet la même valeur pour Src et Dst :

1hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x70000002A,"HIDKeyboardModifierMappingDst":0x70000002A},{"HIDKeyboardModifierMappingSrc":0x70000004C,"HIDKeyboardModifierMappingDst":0x70000004C},{"HIDKeyboardModifierMappingSrc":0x70000003E,"HIDKeyboardModifierMappingDst":0x70000003E},{"HIDKeyboardModifierMappingSrc":0x70000003F,"HIDKeyboardModifierMappingDst":0x70000003F}]}'

Conclusion

Voilà, je peux à nouveau effacer des caractères, mais en ayant choisi délibéremment de condamner ces 2 touches de fonction...

comments powered by Disqus