Où puis-je obtenir une liste de SCHEMA / PATH / KEY à utiliser avec gsettings?

21

Après avoir fait quelques recherches, j'ai constaté que je peux rapidement définir des options de configuration à l'aide de la gsettingscommande dans le terminal, au lieu d'installer dconf-editorou gconf-editorou CCSM.

Mais nous avons besoin de SCHEMA / PATH et KEY pour définir la valeur.
La syntaxe est:

gsettings set SCHEMA[:PATH] KEY VALUE

Par exemple, pour ne jamais masquer automatiquement le lanceur:

gsettings set com.canonical.Unity2d.Launcher hide-mode 0

Et, pour que les fenêtres ne chevauchent pas le lanceur:

gsettings set com.canonical.Unity2d.Launcher use-strut true 

Alors, où puis-je obtenir une liste de tous les SCHEMA / PATH / KEY qui peuvent être définis avec gsettings?

Non, veuillez ne pas suggérer la gsettings list-keyscommande, car je ne connais pas les centaines de schémas disponibles.

Sri
la source

Réponses:

29

gsettings list-schemasvous obtient tout le schéma. Vous pouvez également utiliser gsettings list-recursivelypour ce que vous voulez, mais ce programme répertorie toutes les valeurs de toutes les clés de tous les schémas:
(Lest's call the script gsettings-iterate-all)

#!/bin/bash
# Gnome 3 can be customised from the command line via the gsettings command
# This script should help you to find what you're looking for by
# listing the ranges for all keys for each schema

for schema in $(gsettings list-schemas | sort)
do
    for key in $(gsettings list-keys $schema | sort)
    do
        value="$(gsettings range $schema $key | tr "\n" " ")"
        echo "$schema :: $key :: $value"
    done
done

Étendre vos exemples de gsettings-iterate-all | grep com.canonical.Unity2d.Launcher rendements

com.canonical.Unity2d.Launcher :: edge-decayrate :: type i 
com.canonical.Unity2d.Launcher :: edge-overcome-pressure :: type i 
com.canonical.Unity2d.Launcher :: edge-responsiveness :: type d 
com.canonical.Unity2d.Launcher :: edge-reveal-pressure :: type i 
com.canonical.Unity2d.Launcher :: edge-stop-velocity :: type i 
com.canonical.Unity2d.Launcher :: hide-mode :: type i 
com.canonical.Unity2d.Launcher :: only-one-launcher :: type b 
com.canonical.Unity2d.Launcher :: reveal-mode :: type i 
com.canonical.Unity2d.Launcher :: super-key-enable :: type b 

Vous pouvez rediriger la sortie vers un fichier pour une lecture facile.

Et pour les créatifs. Voici une liste des options possibles de gsettings qui pourraient aider à créer d'autres scripts .

Rinzwind
la source
1
Rinzwind, Merci pour les informations utiles supplémentaires. J'ai réalisé après avoir posté la question qu'une liste complète était disponible en utilisant la commande gsettings list-récursivement, mais comme vous le dites, vous avez donné de superbes informations supplémentaires pour les créatifs :)
Sri
Si vous voulez la valeur par défaut des clés, cela peut être intéressant: askubuntu.com/questions/196896/…
Zta
Très utile ! 1
Sergiy Kolodyazhnyy
1
@Rinzwind Comme une note pratique qui peut être utile: Ne pas appeler appeler un script de test test(je l'ai édité). Le démarrage testfonctionnera très bien et fera parfaitement son travail. Mais c'est peut-être /usr/bin/test; Pour le rendre vraiment rapide, c'est aussi un shell intégré. - Son travail sans argument est de retourner le code de sortie 0et de se taire. (voir man test)
Volker Siegel
2

Il est un peu tard, mais je viens de commencer à lutter contre ce problème de confidentialité ...

Il ressemble à com.canonical.Unity.Lenses remote-content-search 'none'la bascule que vous recherchez.

user141443
la source
La question demande où nous pouvons obtenir la liste du schéma complet. Vous fournissez celui qui concerne la confidentialité. Cela ne répond pas vraiment à la question posée.
Aditya