20 votes

Comment lister toutes les clés .plist disponibles sur une certaine application de domaine par la commande defaults ?

Je veux connaître toutes les clés (liste de propriétés) qui sont disponibles sur une certaine application de domaine, par exemple, je pourrais énumérer les clés disponibles pour les éléments suivants com.apple.dock en entrant cette commande :

$ defaults read com.apple.dock

mais d'une manière ou d'une autre, la sortie de cette commande ne montre que la clé active de la liste des propriétés, et non pas toutes les clés disponibles pour com.apple.dock qui y figurent.

Quelqu'un peut m'aider ?

8voto

Christopher Scott Points 665

Ce n'est pas une tâche triviale, si je me souviens bien, les gens exécutent la fonction strings à la ligne de commande d'une application, et recherchez les éléments qui correspondent à une structure similaire à com.domain.FeatureName. (com.apple.iTunes, ch.cyberduck.CyberDuck, com.panic.Coda, etc.)

Le moyen le plus simple de gérer ces substitutions est probablement d'utiliser un volet des préférences système du nom de Secrets . L'utilisation de cette fonction installe un volet de préférences dans les Préférences système et vous offre une interface pour choisir une application et modifier ses paramètres selon vos préférences.

7voto

Psiberzerker Points 11

J'ai trouvé un site web dédié à ces commandes d'écriture par défaut de Mac OS X, quelques commandes pratiques pour Mac OS X Lion & Mountain Lion.

http://www.defaults-write.com

5voto

jtbandes Points 10878

Il n'y a pas vraiment de notion de clés "disponibles". L'application est libre de lire les clés qu'elle veut. La plupart des gens découvrent les clés par défaut "secrètes" en utilisant la fonction strings de regarder dans le binaire de l'application pour voir quelles clés elle va essayer de lire.

4voto

La plupart des gens ici veulent tout faire via la ligne de commande, mais j'ai une suggestion plus pratique.

Les deux programmes décrits ci-dessous répertorient une grande partie des fonctions personnalisables en ligne de commande connues des applications Mac OS X, classées par application ou par fonction. L'avantage est que la liste des fonctions est fournie pour vous ; vous n'avez pas besoin d'aller chercher sur Google pour trouver ce que sont les fonctions et les séquences de ligne de commande nécessaires pour modifier chacune d'entre elles.

Il existe plusieurs applications gratuites ou commerciales qui fournissent une interface utilisateur graphique répertoriant la plupart des options de personnalisation qui peuvent être modifiées via le terminal. Pour activer l'une de ces fonctions, en utilisant les programmes que je décris, vous le faites dans l'interface graphique de l'application et vous n'avez pas besoin d'utiliser la ligne de commande. Vous n'avez pas besoin de savoir quoi que ce soit sur defaults write o .plist des fichiers.

Deux de ces applications sont :

TinkerTool

qui est gratuit, et

MacPilot

qui vient d'être mis à jour avec les nouvelles fonctionnalités de Lion, et coûte 20 dollars américains.

Ce sont des programmes que je possède et utilise.

Téléchargez l'outil gratuit TinkerTool et la version d'essai de MacPilot et cliquez sur tous les onglets pour voir la myriade de fonctions que vous pouvez personnaliser. Il y en a trop pour les énumérer ici.

enter image description here

enter image description here

Mise à jour

Développeur Frederik Wiker a publié des applications gratuites (les dons sont acceptés) pour créer des personnalisations d'écriture par défaut spécifiques à Lion et Mountain Lion ; beaucoup d'entre elles fonctionnent également très bien pour Mavericks (Mac OS X 10.9).

Téléchargez-les et voyez quelles personnalisations s'offrent à vous.

Ajustements du Lion

Ajustements de la montagne

enter image description here

3voto

Oskar Points 1242

Peut-être qu'une explication assez longue du fonctionnement des choses pourrait éclaircir votre recherche et celle des autres sur ces préférences "cachées".

La plupart des applications lisent leurs fichiers de préférences une fois au démarrage et l'option defaults existe pour s'assurer que les fichiers de préférences ont une structure valide et ne contiennent pas d'erreurs de syntaxe. (Il permet également au système de modifier la manière dont les clés sont stockées et les personnes n'ont pas à connaître les détails de l'implémentation et peuvent utiliser l'outil Valeurs par défaut pour effectuer toutes les lectures et écritures).

Les guides de style et de grammaire de la langue anglaise garantissent que les mots que je tape ici ont un sens pour l'anglophone moyen, et la normalisation du système de valeurs par défaut définit un cadre pour que chacun sache à quoi s'attendre. Le formatage de la liste de préférences est beaucoup plus rigide et mathématique qu'une langue humaine, mais les concepts sont similaires.

Le système des valeurs par défaut de l'utilisateur de Mac OS X est un magasin de valeurs clés (ou une base de données si vous préférez).

Vous pouvez écrire n'importe quoi dans ces mémoires de valeurs de préférence, un sonnet de Shakespeare, des chiffres, une liste de courses. Si le programme est codé pour rechercher une clé spécifique, il lira la valeur stockée. S'il ne recherche pas cette clé, la valeur reste là, inutilisée et non lue.

Cela soulève la question de savoir quelles sont les valeurs qu'un programme spécifique pourrait rechercher lors de son lancement. En résumé, il faut soit connaître la valeur, soit faire de la rétro-ingénierie du programme.

Il existe de nombreux outils permettant d'examiner un programme et d'essayer de déterminer les chaînes (les clés) qui y sont intégrées, par exemple strings et dbx/lldb, ainsi que la possibilité de lier votre propre bibliothèque pour vider la structure interne d'un programme spécifique.

Dans la pratique, certaines choses nécessaires pour les tests sont ajoutées de manière "cachée" afin que vous ne puissiez pas regarder le panneau des préférences du programme et voir ces nouvelles fonctionnalités qui ne sont pas prêtes à être utilisées à grande échelle. D'une certaine manière, il n'est pas du tout simple d'obtenir une liste complète, à moins que l'auteur de ce programme ne publie le code source ou ne documente publiquement ces paramètres.

Lorsque vous lisez le magasin de valeurs par défaut d'une application particulière, vous lisez simplement le "livre" qui a été écrit lorsque l'application a créé son jeu de valeurs par défaut ou les paramètres qui ont été livrés avec Mac OS X. C'est pourquoi vous ne recevez pas la liste exhaustive des éléments qu'il est possible de modifier de manière réaliste avec cette application.

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