4 votes

Existe-t-il un moyen de remapper par programme les touches d'un Macbook fonctionnant sous OSX Mavericks ?

Je veux remapper les touches de mon clavier. Je veux le faire de manière programmatique, car je vais utiliser une certaine logique pour décider de ce qu'il faut saisir. Par exemple, lorsqu'un utilisateur appuie sur "A" suivi de "S", je produirai "". En d'autres termes, chaque fois que je tape une touche sur mon clavier, je veux l'intercepter, lui appliquer une certaine logique et la restituer modifiée avant qu'elle ne soit envoyée à l'application ciblée.

Comment ?

2voto

Adam Nelson Points 2299

Avez-vous regardé dans Keyboard Maestro ? Je l'utilise tout le temps, je crois que vous pouvez accomplir ce que vous voulez en utilisant Keyboard Maestro.

Par exemple : Vous pouvez faire en sorte qu'il vérifie la présence de la chaîne de caractères "bon" et qu'il renvoie le matin ou l'après-midi en fonction de l'heure de la journée.

enter image description here

Avec Keyboard Maestro, vous pouvez exécuter des AppleScript ou des scripts. Keyboard Maestro est assez puissant. Vos macros peuvent ensuite être globales ou spécifiques à une application.

2voto

perimosocordiae Points 4582

La plupart des outils de macro texte disponibles sur le Mac seront capables de déclencher des scripts (Applescript, shell scripts, etc.) ainsi que d'effectuer des expansions standard en fonction de l'entrée et du contexte.

J'aime commencer mes expansions par le point-virgule car je sais qu'il est rare que je déclenche accidentellement une expansion lors de ma frappe normale, et c'est une touche facile à actionner.

Par exemple :

  • Lorsque je tape ";check", il se développe automatiquement en "".
  • ;yen ¥
  • ;dt 2014-07-11 (date actuelle)
  • ;l'e-mail se développe à mon adresse e-mail
  • etc.

Ces expansions peuvent également appeler des scripts plutôt que des substitutions de base pour réaliser des fonctions plus avancées si vous le souhaitez. Quelques options logicielles populaires pour cela sont aText , Typinator y TextExpander parmi beaucoup d'autres.

1voto

Kevin Chen Points 1747

Les réponses que les autres ont données sont probablement la façon dont vous voulez le faire, mais si vous vraiment Vous souhaitez intercepter et injecter des frappes au clavier ? Découvrez comment Karabiner (anciennement KeyRemap4MacBook) s'y prend.

Voilà ce qui est intéressant : https://github.com/tekezo/Karabiner/tree/master/src/core/kext

Il serait assez compliqué d'adapter leur code et de faire ce que vous voulez, mais c'est certainement possible.

1voto

Une autre option consiste à créer ~/Library/KeyBindings/ , sauver

{
  "a" = {
    "s" = (insertText:, "");
  };
}

comme ~/Library/KeyBindings/DefaultKeyBinding.dict et quittez et rouvrez les applications pour appliquer les changements.

Cela vous empêche d'insérer a mais vous pourriez remplacer a avec une autre combinaison de touches comme ~a (option-a) ou \Uf704 (F1).

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X