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


10

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

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

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

どうしたの?これは、正しいスキーマ名でcom.canonical.Unity.Launcher、またはcom.canonical.unity.launcher

設定:

$ 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:

トリミングされたdconf-editorのスクリーンショット



私が言及したものより古いものを尊重します。しかし、新しいものはこのケースについてより多くの参照とより良い背景情報を与えると考えました。(あなた、Flimmと@whtygerが私に同意する場合)
user.dz

その質問は役に立ちそうですが、この質問の重複ではありません。この質問は、大文字と小文字の区別について非常に具体的です。
Flimm 2014

回答:


8

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

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

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

スキーマフィールドを強調表示するスクリーンショット


興味深いことに、dconf-editorのschemaフィールドに気づきませんでした。ツリーパスが常にスキーマ名と一致しない場合、何が一致しますか?
Flimm 2013年

1
これらのスキーマ名は開発プロセス中に変更された可能性があり、dconfフロントエンドではまだ修正されていません。または単に忘れた。スキーマがまったくないいくつかのdconf設定もあります。org>gtk>settings>file-chooser、 例えば。gsettingsを使用してどのように変更できるのでしょうか?
whtyger

ところで、スキーマなしのこれらのオプションdconfは、ターミナルで変更できます。dconf --helpすべてのオプションを確認します。たとえば、dconf write /org/gtk/settings/file-chooser/show-hidden trueオプションをオンにします。キー名のオートコンプリートは、ターミナルに入力するときにも機能します。涼しい!
whtyger 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.