web-dev-qa-db-ja.com

dconfスキーマ名では大文字と小文字が区別されますか?

2つの異なる方法で2つ参照されるスキーマの例を見つけましたが、大文字と小文字が異なるだけで、混乱を招きます。

Gsettingsはスキーマ名をcom.canonical.Unity.Launcherとして認識し、有効なスキーマ名としてcom.canonical.unity.launcherを受け入れません。一方、スクリーンショットにあるように、dconf-editorはcom.canonical.unity.launcherがすべて小文字でしか表示されません。

Gsettingsでキーfavoritesを変更すると、その変更はdconf-editorに反映され、その逆も同様です。

どうしたの?正しいスキーマ名、com.canonical.Unity.Launcher、または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'

dconf-editor:

Screenshot of dconf-editor, cropped

9
Flimm

Dconfスキーマツリーは注意が必要であり、実際のスキーマ名に常に関連するとは限りません。

たとえば、appsの下にはupdate-managerがありますが、gsettingsを使用したapps.update-managerスキーマはありません。有効なスキーマ名はcom.ubuntu.update-managerであり、Dconfで実際の場所に表示されません。 Dconfの正しいスキーマ名は、キーリストの下の[説明]および[デフォルト値]の灰色のフィールドにあります。 (スクリーンショットを参照)一番上のエントリには実際のスキーマ名が表示されます。

したがって、gsettingsの出力を信頼します。あなたの場合、com.canonical.Unity.Launcherは有効なスキーマ名であり、その大文字小文字は本当に重要です。

Screenshot highlighting schema field

7
whtyger