我可以使用 gconftool-2 轻松设置工作区的数量和工作区名称,如下所示:
gconftool-2 --type int --set /apps/metacity/general/num_workspaces 4
gconftool-2 --type string --set /apps/metacity/workspace_names/name_1 Dev
gconftool-2 --type string --set /apps/metacity/workspace_names/name_2 Docs
gconftool-2 --type string --set /apps/metacity/workspace_names/name_3 VM
gconftool-2 --type string --set /apps/metacity/workspace_names/name_4 Web
但是,出于某种原因,我无法使用类似的技术来设置工作区切换器中的行数,或设置显示工作区名称的首选项。同样,我无法通过 gconftool 添加小程序和启动器。 我还希望能够将我的系统配置为在屏幕底部只有一个面板。(解决了这么多)
我已经审查过使用 gconf页面没有成功。对于某些选项,我可以通过转储gconftool-2 -R /
到文件、通过 GUI 更改选项,然后再次转储和差异来成功找到选项名称。这种技术对上述项目没有效果。我也尝试过--dump 和 --load,并尝试重新启动 gnome-panel 和 gconfd-2,但这也无济于事。除了 gconftool-2 之外,面板是否还使用其他机制来存储设置?
我目前正在使用 gnome-classic 模式下的 11.10。
更新:找一个隐藏面板的脚本。
更新 2:拆卸顶部面板的更简单方法:
gsettings set org.gnome.gnome-panel.layout toplevel-id-list "['bottom-panel']"
我实际上仍然无法使用 dconf 配置面板。
我可以通过 更改现有的面板项以指向不同的程序dconf write /org/gnome/gnome-panel/layout/objects/object-6/instance-config/location "'...'"
,但这killall -HUP gnome-panel
也是必需的。
如果我尝试通过从面板中删除一个项目dconf write /org/gnome/gnome-panel/layout/objects/object-id-list "[...]"
,即使重新启动 gnome 面板,面板的内容也不会改变。
如果我使用 dconf-editor 进行相同的更改,它会立即改变。
dconf 写入后我需要做什么来更新面板?
(注意:在 12.04 版本中行为相同)
答案1
虽然gsettings
无法更改 dconf 中的无模式键,但dconf
可以。您不需要编写自己的程序。您可以执行以下操作来更改工作区切换器中的行数:
- 安装
dconf-tool
包 - 运行
dconf
为dconf 写入 /org/gnome/gnome-panel/layout/objects/workspace-switcher/instance-config/num-rows 2
dconf-editor
您还 可以使用许多其他 gnome-panel 条目进行游戏。
答案2
事实证明,一些 gnome 首选项存储在 gconf 中,可以通过 gconftool-2 进行编辑,而其他首选项存储在 dconf 中,可以通过 gestings 进行编辑。请参阅:如何在没有 GUI 的情况下更改 dconf 键。
更新:不幸的是,我很快就遇到了这个错误报告中描述的问题:无法使用 gsettings 设置无架构密钥我想要设置的许多首选项都是存储在二进制文件 ~/.config/dconf/user 中的无模式键,而且似乎没有办法通过内部 dconf API 来编辑这些首选项——因此您必须编写一个 C 程序来执行此操作。