Answers:
与gtk+ ≥ 3.12
可以装载一个特定的主题和其上的每个应用程序的变体(暗光)1周经由环境变量的基础GTK_THEME=theme:variant
。根据gtk+
参考手册:
GTK_THEME. If set, makes GTK+ use the named theme instead of the theme that is
specified by the gtk-theme-name setting [...] It is also possible to specify a
theme variant to load, by appending the variant name with a colon, like this:
GTK_THEME=Adwaita:dark.
因此,装载2的暗变种你可以运行:
GTK_THEME=Adwaita:dark gedit
同样,要实现相反的效果(默认主题为深色时),请加载light变体:
GTK_THEME=Adwaita:light gedit
请注意,如果要通过自定义启动器(.desktop
文件)使用它,则必须env
在该Exec
行之前添加命令:
Exec=env GTK_THEME=Adwaita:dark eog %U
1:值得注意的是-根据开发人员的决定-较新的产品gnome-terminal
通过菜单>偏好设置具有自己的配置,并且忽略了主题。另外,由于这是相当新的东西,因此某些gtk + 3应用程序可能(尚未)遵守GTK_THEME
环境变量。
2:如果您已经具有该应用程序的运行实例,则这似乎不起作用,例如,如果nautilus
已经在暗模式下运行,则运行GTK_THEME=Adwaita:light nautilus
将打开一个新nautilus
窗口,但仍在暗模式下。我不知道这是功能还是错误...
GTK_THEME=:light eog
似乎也可以工作...
desktop
.files文件),但是即使使用.files文件也无法正常工作env
。从终端启动时,它可以正常工作。我使用GTK + 3.14.5-1 deb8u1,并试图用gedit 3.14.0-3,在Debian上运行“杰西/稳定” 8
对于GTK + -3应用程序,您可以使用GtkSettings的settings.ini实施深色主题变体:
$ mkdir -p $HOME/.config/gnome-terminal/gtk-3.0 # the path before gtk-3.0 is arbitrary
$ cat >> $HOME/.config/gnome-terminal/gtk-3.0/settings.ini << EOF
[Settings]
gtk-application-prefer-dark-theme=true
EOF
$ echo 'alias gnome-terminal="XDG_CONFIG_HOME=$HOME/.config/gnome-terminal gnome-terminal" >> $HOME/.bashrc
对于像非GTK +应用程序vnc
,您还可以通过设置执行黑暗的窗饰_GTK_THEME_VARIANT
类的x属性UTF8_STRING
来dark
。为此xprop
,请键入以下命令,然后单击窗口:
$ xprop -f _GTK_THEME_VARIANT 8u -set _GTK_THEME_VARIANT "dark"
xprop
也可以通过WM_NAME
属性(标题栏标签)或窗口ID 选择窗口:
$ xprop -f _GTK_THEME_VARIANT 8u -set _GTK_THEME_VARIANT "dark" -name "Spotify Premium - Linux Preview"
$ xprop -f _GTK_THEME_VARIANT 8u -set _GTK_THEME_VARIANT "dark" -id 0x380002b
要获取窗口ID和名称,请使用xlsclients -l
。
gnome-terminal
,我们决定为保持Dark主题的代码而付出了过多的努力,因此,除非您的发行版对此进行了修补,否则不会起作用gnome-terminal
这是我用来启动具有不同主题的应用程序的bash脚本。多年来没有使用它,所以我不知道它是否可以与当前的GTK一起使用。
#!/bin/bash
# lauch a gtk application with a different theme
# set GTKRCFILE variable to your favourite theme
GTKRCFILE=Clearlooks
GTK2_RC_FILES=/usr/share/themes/"$GTKRCFILE"/gtk-2.0/gtkrc "$@"
这是我从ubuntu fourms存档获得的一些信息。不确定是否会出现问题。(在此处)还有一篇博客文章详细介绍了该方法。(在这里)和(在这里)。此站点上还有一个类似的问题已得到解答。(这里)
在gnome下,应用程序从gnome-settings-daemon获得其主题。这可以将任何主题更改立即应用于所有活动应用程序,从而使按应用程序主题更改成为不可能。
…(in ancient Greek belief) Daemons are good or benevolent supernatural beings between mortals and gods
... daemon = good / demon = bad ... en.wikipedia.org/wiki / Daemon_%28classical_mythology%29 ..(发音为day-mon)
GTK2_RC_FILES=/usr/share/themes/Adwaita/gtk-2.0/gtkrc /opt/ide/eclipse
过但