Comment créer une disposition de clavier personnalisée sous OS X?

60

J'ai récemment migré vers OS X et je trouve la disposition du système "Russian Phonetic" peu satisfaisante (ce n'est pas celle à laquelle je suis habitué). Comment créer une mise en page personnalisée?

J'ai lu sur Ukelele , mais la disposition que j'ai créée et copiée Library/Keyboard Layoutsne s'affiche pas dans les préférences de clavier.

J'utilise OS X 10.9 Mavericks. J'ai cherché des solutions sur Internet, mais la plupart d'entre elles étaient obsolètes.

mik01aj
la source
Quelle mise en page utilisiez-vous avant MacOS? Paul Gorodyansky? Souhaitez-vous partager votre mise en page Ukelele?
davidair
10.9 et les versions ultérieures semblent utiliser un type de fichier de disposition de clavier différent; Ukelele s'est cassé pour moi avec cette mise à niveau aussi. J'ai perdu mon clavier OCS personnalisé - OCS utilise des caractères cyrilliques impairs dans des endroits étranges.
aramis

Réponses:

59
  1. Ouvrez Ukelele et choisissez Fichier> Nouveau à partir de la source d’entrée actuelle. Dans les nouvelles versions d'Ukelele, il attribue également un nouvel identifiant à la disposition du clavier.
  2. Modifier la disposition du clavier.
  3. Enregistrez la disposition du clavier dans un emplacement temporaire tel que le bureau. (L'enregistrement direct /Library/Keyboard Layouts/échoue silencieusement.) Vous pouvez utiliser l'un des deux formats. Les popovers de style iOS affichés lorsque vous tenez les clés fonctionnent uniquement avec le format de paquet. Le format de fichier XML unique (par défaut) est plus simple. Lorsque vous utilisez XML, assurez-vous que le fichier est enregistré avec une .keylayoutextension.
  4. Déplacez la disposition du clavier sur /Library/Keyboard Layouts/. Les dispositions de clavier dans ~/Library/Keyboard Layouts/ne peuvent pas être sélectionnées dans les boîtes de dialogue de mot de passe ou dans la fenêtre de connexion.
  5. Redémarrer le PC. Se déconnecter et revenir n'est pas suffisant.
  6. Activez la nouvelle disposition du clavier à partir des Préférences Système.

Pour appliquer les modifications à une disposition de clavier, exécutez sudo touch /Library/Keyboard\ Layouts/et redémarrez.

Voir http://osxnotes.net/keylayout-files-and-ukelele.html pour plus d'informations.


Mise à jour (octobre 2015): Il existe une nouvelle version de Ukelele (3.0.0) qui inclut la possibilité d'installer la mise en page à partir de l'application. Je devais toujours aller dans les préférences système pour l'activer, mais je n'avais pas besoin de passer par la ligne de commande.

Lri
la source
1
Je vous remercie! J'ai cependant une remarque importante: les fichiers XML enregistrés par Ukelele doivent avoir une .keylayoutextension. Ainsi, cela a fonctionné :)
mik01aj
L'utilisation du format de paquet permet de placer un fichier d'icônes .icns dans le paquet (au même emplacement que .keylayout) et une icône de votre choix peut apparaître à côté de la source d'entrée. (Ukelele peut ajouter une icône à l'ensemble via le menu. Vous avez besoin d'un fichier .icns).
Ebukva
1
Vous pouvez également ajouter une icône pour un fichier de jeu de clés XML, par exemple en enregistrant le fichier icns sous /Library/Keyboard Layouts/My Keyboard Layout.icns.
Lri
au lieu de l'enregistrer quelque part et de le déplacer manuellement, vous pouvez démarrer ukelele en tant que root afin qu'il puisse directement enregistrer dans / librairie / dispositions de clavier
Rayjax
J'ai également dû modifier le .keylayout fichier directement pour modifier l' nameattribut de la ligne 5. Auparavant, il n'apparaissait pas dans les Préférences Système, probablement parce qu'il portait le même nom qu'une présentation existante. Personne d'autre n'a rencontré ça? o_O
vendredi
12

Création du fichier de disposition du clavier

Moi aussi, j'ai utilisé Ukelele pour générer une disposition de clavier. Vous pouvez ensuite exporter le fichier .bundleou .keylayoutle copier et le copier /Library/Keyboard Layouts.

sudo cp KeyboardLayout.keylayout /Library/Keyboard\ Layouts/

Si vous souhaitez que l'icône du clavier soit intégrée dans un fichier, Ukelele propose une option d'exportation vers l’ensemble. Donc, dans ce cas, copiez le .bundlefichier à la place. Vous pouvez également séparer les icônes et les copier avec le même nom dans le même dossier.

sudo cp KeyboardLayout.icns /Library/Keyboard\ Layouts/

Après un redémarrage, vous pouvez ajouter la source d'entrée dans le menu Préférences Système-> Clavier-> Sources d'entrée. Probablement disponible sous Autres ou dans la langue si vous avez attaché une langue au clavier en ukelele.

Menu Source d'entrée

Comment créer un fichier .icns

mkdir layout.iconset

Ajoutez ensuite les PNG suivants au dossier:

# All sizes necessary
icon_16x16.png
[email protected]
icon_32x32.png
[email protected]
icon_128x128.png
[email protected]
icon_256x256.png
[email protected]
icon_512x512.png
[email protected]

Vous n'avez pas besoin de tout cela, mais c'est la liste officielle. Certaines sont redondantes en nombre de pixels, mais indiquent une densité.

iconutil --convert icns --output layout.icns layout.iconset/

Exemple de projet sur GitHub

Mon projet ukraino-russe sur GitHub est une démo qui travaille actuellement sur Mavericks 10.9.5.

Cameron Lowell Palmer
la source
2
+1 pour le lien de projet ukrainien-russe. Partager avec quelques amis maintenant. Merci mec!
Côte de la mer du Tibet
Vous êtes les bienvenus!
Cameron Lowell Palmer
1
Beaucoup +1 pour le lien de projet ukrainien-russe. Nous vous soutenons, @CameronLowellPalmer (et d'autres)!
Per Lundberg
4

Ukelele peut fonctionner pour vous, sachez qu'il semble s'agir de relier des clés au niveau logiciel (plutôt qu'au niveau matériel). l'utiliser dans les dialogues de mot de passe, etc.

Si vous recherchez une solution plus robuste, consultez Karabiner .

Sensé
la source
Karabinier est également préférable, car vous n'avez pas à copier le fichier de configuration, cela fonctionne directement. Et vous pouvez l'activer au démarrage dans la configuration par défaut de misc / system
bormat
-1

Utiliser l'ancienne version stable Ukelele 1.8.4 ... Aucun redémarrage nécessaire

J'ai OS X 10.10.5 (Yosemite). La version actuelle de Ukelele ne fonctionnait pas, même après avoir essayé plusieurs autres suggestions. Enfin, j'ai désinstallé la version actuelle et installé l'ancienne version stable (1.8.4). Après cela, ça a bien fonctionné. Aucun redémarrage n'était nécessaire. Enregistrez simplement la nouvelle disposition dans les dispositions de bibliothèque / clavier. Puis ouvrez les préférences du clavier, sources d'entrée. Ajoutez en cliquant sur +, et vous devriez voir la nouvelle mise en page dans "Autres".

Nilotpal
la source