Il peut être utile dans un script d’afficher automatiquement un tableau de préférences. Vous pourriez envoyer à un ami, collègue un petit script capable d’afficher un panneau de préférences afin de le guider, ou plus directement créer un raccourcis clavier vers un de ces panneaux.
Attention nous ne parlons pas de modifier une préférence mais de l’afficher. Cette fonction n’est pas documentée. Il existe pourtant une astuce qui autorise cette opération.
Les lignes de script à utiliser sont les suivantes :
tell application "System Preferences" activate reveal pane "com.apple.preferences.users" end tell
Le script est simple, La première et dernière ligne définissent un bloc « tell », il s’agit de l’application cible, ici « System Preferences ». La seconde ligne « Activate » fait passer cette application au premier plan devant tous les programmes ouverts. Enfin « reveal pane » affiche le tableau de préférence désigné entre guillemets.
Le nom du panneau est présenté en notation Java ou domaine inversé. Pour les produits apple il s’agit toujours du préfixe « com.apple.preference » puis du nom en Anglais du tableau, voici une liste partielle :
Préférences Système : com.apple.preference.general
Clavier : com.apple.preference.keyboard
Sécurité : com.apple.preference.security
Son : com.apple.preference.sound
Réseau : com.apple.preference.network
Imprimante et Fax : com.apple.preference.printfax
Parole : com.apple.preference.speech
Date et heure : com.apple.preference.datetime
Les panneaux de préférences livrés avec Mac OS X se trouvent dans le dossier : « System/Library/PreferencePanes « .
(Attentions aux « s » parfois à la fin du mot « préférence » ou à la fin du nom du tableau comme pour « Displays »).
Si vous souhaitez lancer des panneaux d’autres applications, le plus simple est de récupérer le nom des fichiers de préférences ou Plist, ceux-ci correspondent en général au nom du tableau.
Pour être plus précis, vous pouvez demander à afficher un onglet, là la quête d’information est encore plus difficile, car il faut trouver le nom de l’onglet en Anglais, Apple n’ayant pas standardisé le nomination… il faut explorer les « packets « de chaque panneau.
Voici comment afficher l’onglet « Couleur » du panneau « Moniteurs » :
tell application « System Preferences »
activate
reveal anchor « displaysColorTab » of pane id « com.apple.preference.displays »
end tell
Nous avons ajouté le nom de l’onglet après « anchor » et le mot « of » pour « de ». Remplacez « displaysColorTab » par « displaysDisplayTab » pour afficher l’onglet des résolutions.
Quelques exemples à placer dans le script :
– Le panneau de préférences de l’économiseur d’écran :
reveal anchor « DesktopPref » of pane id « com.apple.preference.desktopscreeneffect »
– Le panneau de préférences de Clavier et l’onglet « raccourcis clavier »
reveal anchor « shortcutsTab » of pane id « com.apple.preference.keyboard »
Henri Dominique Rapin