我需要在系统中获取当前的Icon主题。问题是有很多环境,如GNOME,XFCE,MATE ......
请问,我怎么能获取当前的图标主题?我认为它会与Gtk.IconTheme.get_default()
在一起,但我没有取得好成绩。
提前致谢!
答案 0 :(得分:2)
不幸的是,并没有适用于所有系统的通用解决方案。
根据环境的不同,您需要使用不同的方法,然后根据当前环境,很可能包括一个开关。这需要一些研究......
在现代gtk3环境中,您可以通过gsettings
非常方便地查询和更改任何设置。
例如在GNOME
gsettings get org.gnome.deskop.interface icon-theme
将返回当前的图标主题 在 Cinnamon 中,您可以使用
进行类似查询gsettings get org.cinnamon.deskop.interface icon-theme
在 Mate 中,密钥icon-theme
将在架构org.mate.interface
中定义,在 Xfce 下,可用工具 xfconf-query < /强>:
xfconf-query -lvc xsettings -p /Net/ThemeName
使用窗口管理器,您可以从 $ HOME / .gtkrc-2.0 中读取相应的配置文件,例如gtk-icon-theme-name=
,
或者它甚至可以在〜/ .Xresources 中定义,或者在 $ HOME / gtk-3.0 / settings.ini 中定义(或者过时),也可能在 $中定义HOME / .config / qt5ct / qt5ct.conf ;)......依此类推:))