覆盖 gtk3 主题颜色

覆盖 gtk3 主题颜色

我想要实现一些我认为需要几秒钟但结果却是精神崩溃的事情:覆盖主题所选项目GTK3 主题中的颜色。

起初,我天真地认为覆盖其中的值~/.config/gtk-3.0/gtk.css会成功,但不,它被忽略了。

$ cat ~/.config/gtk-3.0/gtk.css
@define-color selected_bg_color #ff4e9a;

然后我rsync通过修改 的值/usr/share/themes/<name>来更改其中想要的颜色,但这没有任何作用。我 编辑了文件中的所有颜色值。还是被忽视了。~/.themesselected_bg_colorsedcss

最后,我发现覆盖一种简单颜色的唯一方法是“注册”本地复制的主题:

cd /home/foo/.themes/themename/gtk-3.0
glib-compile-resources gtk.gresource.xml

GTK3 是否过度设计以至于没有其他方法来覆盖颜色?

编辑:在有人建议启动gnome之前外貌菜单,我正在运行 Mate Desktop,其中首选项适用于 GTK2。除了填充之外
也严格不执行任何操作。gtk-theme-config~/.config/gtk-3.0/gtk.css

答案1

我最近经历过这个。通常,有不止一条线来勾勒装饰的轮廓。在您执行任何操作之前,我建议您对要编辑的文件进行备份。

我最初完成此操作的方法是安装一个颜色选择器,这样我就可以获得我想要替换的颜色的确切十六进制代码。然后我使用查找和替换在 Vim 中编辑了主题的 gtk.css 文件。我使用 vim 命令将颜色 {#ff4e9a} 的所有实例替换为我自己的颜色:%s/#ff4e9a/#C7CDDB/g。进行更改后,请确保使用该文件写入文件:w并重新加载 shell。

通常,GTK 还会有一种用于某些窗口的“后备”颜色。/fallback如果您可以明显地区分窗口装饰,我建议您使用 Vim 搜索您的主题文件中的这个短语,或者使用颜色选择器。

GTK 非常挑剔,我在学习时弄乱了几次主题,所以要小心。

相关内容