web-dev-qa-db-ja.com

アプリケーションごとにGTK3 / GnomeShellテーマをオーバーライドする方法

私はFedora17でCinnamonとGnomeShell(Gnome 3)の両方をダークテーマで使用しています Blapple 。かなりの数のアプリケーションが暗いテーマをうまく処理できません。

Gnome 2では、これらのプログラムの簡単な解決策がありました。次のように、環境変数GTK2_RC_FILESを介してライトテーマを使用するように指示しました(例は2009年のUbuntu Gnome 2セットアップで機能しました)。

env GTK2_RC_FILES=/usr/share/themes/Human/gtk-2.0/gtkrc ooffice --writer

現在、Gnome3では機能しません。次のようなさまざまなコマンドのバリエーションで試してみましたが、これまでのところ成功していません。

env GTK2_RC_FILES=/usr/share/themes/Adwaita/gtk-3.0/gtkrc GTK3_RC_FILES=/usr/share/themes/Adwaita/gtk-3.0 libreoffice --writer

これに関するドキュメントはどこにも見つかりません。それを行う方法や、その情報をどこで入手できるかを知っている場合は、教えてください。

オーバーライドする理由:LibreOfficeとOpenOfficeの場合、問題を回避しようとしても役に立たないようです。 Blappleテーマをインストールすると、すべてが灰色の背景になります。たとえば、Calcでデフォルトの背景色を上書きしようとすると、背景が白になりますが、すべてのカスタム背景セルも白に上書きされます。これは恐ろしいことです。ニースインプレスの仕組みについては始めさせないでください…

12
aef

同じ問題があります。OpenOffice+黒のテーマは見苦しいです。古い_GTK2_RC_FILES_変数ほど便利なものはないようですが、これを見てください。

アプリケーションは、gtk_css_provider_load_from_file()を呼び出し、gtk_style_context_add_provider()またはgtk_style_context_add_provider_for_screen()を使用してプロバイダーを追加することにより、GTK +に特定のCSSスタイルシートを解析させることができます。さらに、GTK +が初期化されるときに特定のファイルが読み取られます。まず、ファイル_XDG_CONFIG_HOME/gtk-3.0/gtk.css_が存在する場合はロードされます。次に、GTK +は_HOME/.themes/theme-name/gtk-3.0/gtk.css_をロードしようとし、_GTK_DATA_PREFIX/share/themes/theme-name/gtk-3.0/gtk.css_にフォールバックします。ここで、theme-nameは現在のテーマの名前であり(_"gtk-theme-name"_設定を参照)、_GTK_DATA_PREFIX_は_GTK_DATA_PREFIX_環境変数によってオーバーライドされない限り、GTK +がコンパイルされたときに設定されたプレフィックス。

ソース

これは、これを行うことにより、GTKにデフォルトのプレーンテーマを使用させることを意味します。

_env GTK2_RC_FILES= GTK_DATA_PREFIX= libreoffice --writer
_

テーマ名を上書きする可能性はないようです(これは少しばかげているので修正する必要があります)ので、「偽の」テーマディレクトリを作成するのが唯一の方法のようです。

8
leoluk

これは非常に古い質問ですが、GTK +3でそれを行う方法です。

GTK_THEME=Adwaita gnome-calculator

または使用する

GTK_THEME=Adwaita:dark gnome-calculator

アドワイチャテーマのダークバリアント用。

8
Michael Tunnell