Karabiner-Elements est le couteau suisse de la personnalisation du clavier sur Mac : il remappe les touches, crée des couches et exécute des règles que vous écrivez en JSON. L’une de ces règles peut sélectionner une méthode de saisie quand une touche provient d’un clavier précis. Keyameleon ne fait que cette tâche, sans règles. Le meilleur choix dépend d’une question : utilisez-vous déjà Karabiner-Elements pour autre chose ?
En bref
| Keyameleon | Karabiner-Elements | |
|---|---|---|
| Ce que c’est | Un outil qui change de méthode de saisie selon le clavier | Un outil généraliste de personnalisation du clavier |
| Méthode de saisie par clavier | Choisir une méthode de saisie pour chaque clavier dans une liste | Écrire une modification complexe avec une condition sur l’appareil et une action select_input_source |
| Comment il lit votre saisie | Observe les claviers en mode écoute seule ; ne peut ni modifier ni injecter de saisie | Prend le contrôle des claviers qu’il modifie et fait passer leur saisie par son propre pilote de clavier virtuel |
| Installation | Une app et l’autorisation Surveillance de l’entrée | Une app, une extension de pilote à approuver et la Surveillance de l’entrée |
| Prix et licence | Gratuit, MIT | Gratuit, domaine public (Unlicense) |
Le changement par clavier dans Karabiner-Elements
Les règles de Karabiner-Elements (modifications complexes) peuvent être limitées à certains appareils avec une condition device_if, qui cible les identifiants de fabricant et de produit d’un clavier, ou le clavier intégré. Une règle peut aussi exécuter une action select_input_source, qui choisit une méthode de saisie par langue ou par identifiant. Combinez les deux, et une frappe sur un clavier peut sélectionner la méthode de saisie de ce clavier.
Ça fonctionne, mais c’est à vous d’écrire et de maintenir cette règle, une fois par clavier, et de vérifier qu’elle n’avale ni ne modifie les touches qu’elle cible. La documentation de Karabiner-Elements avertit aussi que la sélection de méthodes de saisie dotées d’un mode de saisie (chinois, japonais, coréen, vietnamien) peut échouer à cause d’un problème de macOS, et suggère plutôt d’envoyer le raccourci de changement de méthode de saisie.
Keyameleon : la même tâche, sans règles
Keyameleon liste tous les claviers qu’il trouve. Vous choisissez une méthode de saisie pour chacun, y compris des modes de saisie comme le kana japonais ou le pinyin, et il change dès que vous commencez à taper sur ce clavier. Il n’installe jamais de pilote et ne s’interpose jamais entre votre clavier et vos apps : il observe les claviers via le framework CoreHID d’Apple en mode écoute seule et change de disposition via le système de saisie de texte de macOS.
Il vous signale aussi quand quelque chose ne va pas. Son menu dans la barre des menus affiche un avis quand la Surveillance de l’entrée est désactivée, quand le changement est en pause, ou quand une méthode de saisie attribuée a été supprimée de macOS.
Utiliser les deux
Beaucoup de gens utilisent Karabiner-Elements pour remapper leurs touches et veulent en plus une disposition par clavier. Gardez à l’esprit que Karabiner-Elements renvoie la saisie des claviers qu’il modifie depuis son clavier virtuel : les autres apps peuvent donc ne plus voir de quel clavier physique provient une touche. Si Keyameleon ne change pas de disposition pour un clavier pendant que Karabiner-Elements tourne, désactivez Modify events pour ce clavier dans les réglages Devices de Karabiner-Elements.
Lequel choisir ?
- Vous maintenez déjà des règles Karabiner-Elements et le JSON ne vous fait pas peur : ajoutez-y une règle par appareil.
- Vous voulez seulement que chaque clavier tape dans sa propre disposition, sans pilote ni règles à maintenir : Keyameleon.
Pour la liste complète des options, y compris celles intégrées à macOS, lisez comment changer automatiquement de disposition de clavier sur Mac.