Czy w nazwach schematów dconf rozróżniana jest wielkość liter?

10

Znalazłem przykład schematu, do którego odnoszą się dwa na dwa różne sposoby, różniące się tylko przypadkiem, co jest dla mnie mylące.

Gsettings widzi nazwę schematu jako com.canonical.Unity.Launcheri nie akceptuje com.canonical.unity.launcherjako prawidłowej nazwy schematu. Z drugiej strony edytor dconf widzi tylko com.canonical.unity.launchermałe litery, jak pokazano na zrzucie ekranu.

Jeśli zmienię klucz favoritesw Gsettings, zmiana ta zostanie odzwierciedlona w edytorze dconf i na odwrót.

Co się dzieje? Która nazwa jest poprawna com.canonical.Unity.Launcher, lub com.canonical.unity.launcher?

Gsettings:

$ gsettings list-schemas | grep -i com.canonical.unity.launcher
com.canonical.Unity.Launcher
david@david-Aspire-5735:~$ $ gsettings list-recursively com.canonical.Unity.Launcher
com.canonical.Unity.Launcher favorite-migration '3.2.10'
com.canonical.Unity.Launcher favorites ['application://firefox.desktop', 'application://thunderbird.desktop', 'unity://running-apps', 'unity://expo-icon', 'unity://devices']
david@david-Aspire-5735:~$ gsettings list-recursively com.canonical.unity.launcher
No such schema 'com.canonical.unity.launcher'

edytor dconf:

Zrzut ekranu edytora dconf, przycięty

Flimm
źródło
Szanuję, że jest o jeden starszy niż ten, o którym wspominam. Ale pomyślałem, że nowszy zawiera więcej referencji i lepsze informacje na temat tej sprawy. (Jeśli Ty, Flimm i @whtyger, zgadzasz się ze mną)
user.dz
To pytanie wydaje się przydatne, ale nie jest duplikatem tego pytania. To pytanie dotyczy bardzo dokładnie rozróżniania wielkości liter.
Flimm

Odpowiedzi:

8

Drzewo schematu Dconf jest trudne i nie zawsze odnosi się do rzeczywistych nazw schematów.

Na przykład poniżej appsmożesz znaleźć update-manager, ale nie znajdziesz apps.update-managerschematu przy użyciu gsettings. Prawidłowa nazwa schematu to com.ubuntu.update-manageri nie jest wyświetlana w Dconf, gdzie powinna być. Prawidłową nazwę schematu w Dconf można znaleźć poniżej listy kluczy, w szarym polu z opisem i wartością domyślną. (Patrz zrzut ekranu) Najwyższy wpis pokazuje prawdziwą nazwę schematu.

Więc zaufałbym wyjściu ustawień. W twoim przypadku com.canonical.Unity.Launcherjest to poprawna nazwa schematu, a jej wielkość naprawdę ma znaczenie.

Zrzut ekranu z podświetleniem pola schematu

whtyger
źródło
Co ciekawe, nie zauważyłem pola schematu w edytorze dconf. Jeśli ścieżka drzewa nie zawsze pasuje do nazwy schematu, co się zgadza?
Flimm,
1
Być może te nazwy schematów zostały zmienione podczas procesu programowania i nie zostały jeszcze naprawione w interfejsie dconf. Lub po prostu zapomniany. Istnieje również kilka ustawień dconf, które w ogóle nie mają schematu. org>gtk>settings>file-chooser, na przykład. Zastanawiam się, jak można je zmienić za pomocą gsettings?
whtyger
BTW, te opcje bez schematów można zmienić za pomocą dconfterminala. Sprawdź dconf --helpwszystkie opcje. Na przykład dconf write /org/gtk/settings/file-chooser/show-hidden truewłącza opcję. Autouzupełnianie nazwy klucza działa również podczas pisania w terminalu. Fajne!
whtyger