6 votes

Comment puis-je relier les touches du clavier dans OS X?

J'ai besoin d'un raccourci clavier personnalisé pour le backslash \.

J'ai créé ~/Bibliothèque/KeyBindings/DefaultKeyBinding.dict et y ai placé ceci :

{
    "@ö" = ("insertText:", "\\");
}

Cela devrait déclencher le backslash en appuyant sur + ö (Oui, j'ai un caractère "ö" sur mon clavier).

Lorsque j'essaie de sourcer le fichier, j'obtiens cette erreur :

-bash: DefaultKeyBinding.dict: ligne 2: erreur de syntaxe près du jeton inattendu `('
-bash: DefaultKeyBinding.dict: ligne 2: `    "@ö" = ("insertText:", "\\");'

Qu'est-ce qui ne va pas avec la syntaxe ? Y a-t-il une meilleure façon de faire ?

3voto

klanomath Points 63400

Pour activer CmdÖ -> \, remappez simplement la combinaison de touches avec Karabiner. Le raccourci dont vous avez besoin n'est pas prédéfini, donc vous devez écrire le vôtre :

  1. Téléchargez, installez et ouvrez Karabiner

  2. Ouvrez dans le menu Karabiner -> Préférences

  3. Ouvrez l'onglet Misc & Uninstall

  4. Cliquez sur le bouton Ouvrir private.xml

  5. Ouvrez le fichier private.xml avec un éditeur approprié

  6. Entrez le code clavier personnalisé

    Exemple 1 (cmdÖ -> \) :

          Command-Ö to Backslash
          (Changer Command-Ö en \)
          remap.command_ö_to_backslash
          __KeyToKey__ KeyCode::GERMAN_O_UMLAUT, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_COMMAND, KeyCode::KEY_7, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L

    Exemple 2 (cmd_RÖ -> \ cmd_R est la touche de commande droite uniquement, cmd_LÖ n'a pas de sortie !) :

          Command_R-Ö to Backslash
          (Changer Command_R-Ö en \)
          remap.command_r_ö_to_backslash
          __KeyToKey__ KeyCode::GERMAN_O_UMLAUT, ModifierFlag::COMMAND_R, KeyCode::KEY_7, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L

    Exemple 3 (cmd_R -> \ vous ne pouvez pas utiliser la touche de commande droite à d'autres fins) :

          Command_R to Backslash
          (Changer Command_R en \)
          remap.command_r_to_backslash
          __KeyToKey__ KeyCode::COMMAND_R, KeyCode::KEY_7, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L

    Exemple 4 (cmd_R -> \ similaire à l'exemple 3 mais vous pouvez utiliser la touche de commande droite comme touche de commande normale -> en appuyant sur cmd_R vous obtenez \ mais cmd_RS enregistre les fichiers) :

          Quand vous tapez Command_R seulement, envoyez Backslash
          (Changer Command_R paresseux en \)
          remap.command_r_lazy_to_backslash
          __KeyOverlaidModifier__ KeyCode::COMMAND_R, KeyCode::VK_LAZY_COMMAND_R, KeyCode::KEY_7, ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L
  7. Enregistrez le fichier

  8. Ouvrez dans le menu Karabiner -> Préférences l'onglet Change Key

  9. Cliquez sur le bouton ReloadXML

  10. Activez le remappage. Il devrait être listé au début.

1voto

StrawHara Points 4305

Pourquoi n'utilisez-vous pas Karabiner ?

Un personnaliseur de clavier puissant et stable pour OS X.

  • Vous pouvez facilement personnaliser à partir des paramètres préparés.

  • Vous pouvez également ajouter vos propres paramètres en XML.

https://pqrs.org/osx/karabiner/

1voto

kenorb Points 11627

À partir d'une brève recherche sur le web pour DefaultKeyBinding.dict, selon cette page:

Seule l'application qui utilise le système de texte Cocoa prendra en charge ceci.

Il ne s'agit pas d'un fichier shell et ne fonctionnera pas lorsqu'il est 'sourcé' via bash.

Source: commentaire de @mtklr.

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