「GTK」の版間の差分
(同期) |
(同期) |
||
28行目: | 28行目: | ||
== テーマ == |
== テーマ == |
||
− | GTK+ 2 のデフォルトテーマは ''Raleigh'' ですが、Arch Linux では {{ic|/usr/share/gtk-2.0/gtkrc}} にカスタム設定ファイルを作成しており、デフォルトテーマは ''Adwaita'' に設定されています。GTK+ 3 のデフォルトテーマは ''Adwaita'' です。ただし ''HighContrast'' |
+ | GTK+ 2 のデフォルトテーマは ''Raleigh'' ですが、Arch Linux では {{ic|/usr/share/gtk-2.0/gtkrc}} にカスタム設定ファイルを作成しており、デフォルトテーマは ''Adwaita'' に設定されています。GTK+ 3 のデフォルトテーマは ''Adwaita'' です。ただし ''HighContrast'', ''HighContrastInverse'', ''Raleigh'' テーマも含まれています。 |
特定のテーマを使うには、環境変数を設定します。 |
特定のテーマを使うには、環境変数を設定します。 |
||
40行目: | 40行目: | ||
公式リポジトリや [[AUR]] から多数のテーマをインストールすることができます。 |
公式リポジトリや [[AUR]] から多数のテーマをインストールすることができます。 |
||
− | '''GTK+ 2 と GTK+ 3 の両方をサポートしているテーマ:''' |
+ | '''GTK+ 2 と GTK+ 3.20 以上の両方をサポートしているテーマ:''' |
* {{App|Breeze|KDE のデフォルトウィジェットテーマの GTK+ バージョン。|https://quickgit.kde.org/?p=breeze-gtk.git|{{Pkg|breeze-gtk}}}} |
* {{App|Breeze|KDE のデフォルトウィジェットテーマの GTK+ バージョン。|https://quickgit.kde.org/?p=breeze-gtk.git|{{Pkg|breeze-gtk}}}} |
||
− | * {{App|Deepin|Deepin デスクトップのデフォルトテーマ。|https:// |
+ | * {{App|Deepin|Deepin デスクトップのデフォルトテーマ。|https://github.com/linuxdeepin/deepin-gtk-theme|{{Pkg|deepin-gtk-theme}}}} |
* {{App|GNOME Standard Themes|GNOME デスクトップのデフォルトテーマ。次のテーマが含まれています: ''Adwaita'', ''HighContrast''|https://github.com/GNOME/gnome-themes-standard|{{Pkg|gnome-themes-standard}}}} |
* {{App|GNOME Standard Themes|GNOME デスクトップのデフォルトテーマ。次のテーマが含まれています: ''Adwaita'', ''HighContrast''|https://github.com/GNOME/gnome-themes-standard|{{Pkg|gnome-themes-standard}}}} |
||
− | * {{App|MATE Themes|MATE デスクトップのデフォルトテーマ。次のテーマが含まれています: ''BlackMATE'', ''BlueMenta'', ''Blue-Submarine |
+ | * {{App|MATE Themes|MATE デスクトップのデフォルトテーマ。次のテーマが含まれています: ''BlackMATE'', ''BlueMenta'', ''Blue-Submarine'', ''ContrastHighInverse'', ''Green-Submarine'', ''Menta'', ''TraditionalGreen'', ''TraditionalOk''。|https://github.com/mate-desktop/mate-themes|{{Pkg|mate-themes}}}} |
− | * {{App|Numix|近代的な外観をしているフラットで明るいテーマ (GNOME, Openbox, Unity, Xfce)。|https:// |
+ | * {{App|Numix|近代的な外観をしているフラットで明るいテーマ (GNOME, Openbox, Unity, Xfce)。|https://github.com/shimmerproject/Numix|{{Pkg|numix-themes}}}} |
− | * {{App| |
+ | * {{App|Adapta|マテリアルデザインガイドラインに基づいている GTK+ テーマ。|https://github.com/tista500/Adapta|{{AUR|adapta-gtk-theme}}}} |
− | * {{App| |
+ | * {{App|Arc|モダンで透過するエレメントを備えたフラットテーマ。|https://github.com/horst3180/arc-theme|{{Pkg|arc-gtk-theme}}}} |
− | * {{App| |
+ | * {{App|Blackbird|Xfce 用のダークなデスクトップスイート。|https://github.com/shimmerproject/Blackbird|{{AUR|xfce-theme-blackbird}}}} |
+ | * {{App|Flat-Plat|GTK3, GTK2, GNOME-Shell に対応しているマテリアルデザインライクなフラットテーマ。|https://github.com/nana-4/Flat-Plat|{{AUR|flatplat-theme-git}}}} |
||
* {{App|Gnome-breeze|新しい Plasma 5 Breeze にマッチする GTK テーマ。|https://github.com/dirruk1/gnome-breeze|{{AUR|gnome-breeze-git}}}} |
* {{App|Gnome-breeze|新しい Plasma 5 Breeze にマッチする GTK テーマ。|https://github.com/dirruk1/gnome-breeze|{{AUR|gnome-breeze-git}}}} |
||
− | * {{App|Greybird|グレーとブルーの Xfce テーマ。Xubuntu 12.04 のデフォルト。| |
+ | * {{App|Greybird|グレーとブルーの Xfce テーマ。Xubuntu 12.04 のデフォルト。|https://github.com/shimmerproject/Greybird|{{AUR|xfce-theme-greybird}}}} |
− | * {{App| |
+ | * {{App|Vertex|GTK 3, GTK 2, Gnome-Shell, Cinnamon のためのテーマ。|ttps://github.com/horst3180/vertex-theme|{{AUR|vertex-themes}}}} |
− | * {{App| |
+ | * {{App|Zuki|GTK, gnome-shell などのためのテーマ。|https://github.com/lassekongo83/zuki-themes|{{AUR|zuki-themes-git}}}} |
− | * {{App|Zukitwo|GTK, gnome-shell などのためのテーマ。|http://gnome-look.org/content/show.php/Zukitwo?content=140562|{{AUR|zukitwo-themes}}}} |
||
'''GTK+ 2 だけをサポートしているテーマ:''' |
'''GTK+ 2 だけをサポートしているテーマ:''' |
||
60行目: | 60行目: | ||
* {{App|Oxygen-Gtk|KDE のデフォルトウィジェットテーマ (Oxygen) の GTK2 ポート|https://projects.kde.org/projects/playground/artwork/oxygen-gtk/|{{Pkg|oxygen-gtk2}}}} |
* {{App|Oxygen-Gtk|KDE のデフォルトウィジェットテーマ (Oxygen) の GTK2 ポート|https://projects.kde.org/projects/playground/artwork/oxygen-gtk/|{{Pkg|oxygen-gtk2}}}} |
||
* {{App|Aurora Gtk Engine|最新の Clearlooks ファミリー。|http://gnome-look.org/content/show.php/Aurora+Gtk+Engine?content=56438|{{Pkg|gtk-engine-aurora}}}} |
* {{App|Aurora Gtk Engine|最新の Clearlooks ファミリー。|http://gnome-look.org/content/show.php/Aurora+Gtk+Engine?content=56438|{{Pkg|gtk-engine-aurora}}}} |
||
− | * {{App|Openbox Themes|Openbox ウィンドウマネージャ用の様々なテーマ。|https://www.debian.org/|{{Pkg|openbox-themes}}}} |
||
* {{App|QtCurve|KDE と Gtk のウィジェットスタイルの設定セット|https://projects.kde.org/projects/playground/base/qtcurve|{{Pkg|qtcurve-gtk2}}}} |
* {{App|QtCurve|KDE と Gtk のウィジェットスタイルの設定セット|https://projects.kde.org/projects/playground/base/qtcurve|{{Pkg|qtcurve-gtk2}}}} |
||
[[AUR]] には他にも多くの GTK+ テーマが存在します: [https://aur.archlinux.org/packages.php?K=gtk-theme search for gtk-theme], [https://aur.archlinux.org/packages.php?K=gtk2-theme search for gtk2-theme]。 |
[[AUR]] には他にも多くの GTK+ テーマが存在します: [https://aur.archlinux.org/packages.php?K=gtk-theme search for gtk-theme], [https://aur.archlinux.org/packages.php?K=gtk2-theme search for gtk2-theme]。 |
||
+ | {{Note|GTK+ 3 は頻繁に変更されるため、GTK+ 3 のリリースがあった後は GTK+ 3 のテーマを修正する必要があることがしばしばあります。このため、全ての GTK+ 3 テーマが (最新バージョンの GTK+ 3 で) 期待通りの外観を表示するとは限りません。}} |
||
− | {{Note| |
||
− | *GTK+ 3 は頻繁に変更されるため、GTK+ 3 のリリースがあった後は GTK+ 3 のテーマを修正する必要があることがしばしばあります。このため、全ての GTK+ 3 テーマが (最新バージョンの GTK+ 3 で) 期待通りの外観を表示するとは限りません。 |
||
− | * テーマによっては正しく表示するために {{pkg|librsvg}} が必要になりますが、依存パッケージとして指定されていないことがあります。選んだテーマが壊れて見えるようでしたらインストールしてみて下さい。 |
||
− | * テーマによってはパネルを正しく表示することができないため (明るい背景に明るいテキストが表示される)、この [http://i.imgur.com/QmeyN.png パネルの背景] を使う必要があります。 |
||
− | }} |
||
=== GTK+ と Qt === |
=== GTK+ と Qt === |
||
90行目: | 85行目: | ||
:インストール後、{{ic|kde-gtk-config}} は ''System Settings > Application Appearance > GTK'' からも設定できます。 |
:インストール後、{{ic|kde-gtk-config}} は ''System Settings > Application Appearance > GTK'' からも設定できます。 |
||
* {{App|LXAppearance|LXDE プロジェクトによる、デスクトップに依存しない GTK+2 と GTK+3 のスタイル設定ツール (LXDE デスクトップの他のソフトウェアを必要としません)。|http://wiki.lxde.org/en/LXAppearance|{{Pkg|lxappearance}}}} |
* {{App|LXAppearance|LXDE プロジェクトによる、デスクトップに依存しない GTK+2 と GTK+3 のスタイル設定ツール (LXDE デスクトップの他のソフトウェアを必要としません)。|http://wiki.lxde.org/en/LXAppearance|{{Pkg|lxappearance}}}} |
||
+ | * {{App|Oo-mox|Numix テーマ (GTK2, GTK3) や gnome-colors アイコンテーマの様々なカラーバリエーションを生成するためのグラフィカルアプリケーション。|https://github.com/actionless/oomox|{{AUR|oomox}}}} |
||
'''GTK+ 2 だけをサポートしているツール:''' |
'''GTK+ 2 だけをサポートしているツール:''' |
||
− | * {{App|GTK-KDE4|KDE4 で GTK+2 アプリケーションのスタイルとフォントを変更できるアプリケーション。|http://kde-look.org/content/show.php?content=74689|{{AUR|gtk-kde4}}}} |
||
− | :インストール後、{{ic|gtk-kde4}} は ''System Settings > Lost and Found > GTK style'' からも設定できます。 |
||
* {{App|GTK+ Change Theme|GTK+ 2.0 のテーマを変更するためのプログラム (''switch2'' の代替プログラム)。|http://plasmasturm.org/code/gtk-chtheme/|{{Pkg|gtk-chtheme}}}} |
* {{App|GTK+ Change Theme|GTK+ 2.0 のテーマを変更するためのプログラム (''switch2'' の代替プログラム)。|http://plasmasturm.org/code/gtk-chtheme/|{{Pkg|gtk-chtheme}}}} |
||
* {{App|GTK+ Preference Tool|GTK+ テーマの選択とフォントの切り替えプログラム。|http://gtk-win.sourceforge.net/home/index.php/Main/GTKPreferenceTool|{{Pkg|gtk2_prefs}}}} |
* {{App|GTK+ Preference Tool|GTK+ テーマの選択とフォントの切り替えプログラム。|http://gtk-win.sourceforge.net/home/index.php/Main/GTKPreferenceTool|{{Pkg|gtk2_prefs}}}} |
||
101行目: | 95行目: | ||
設定ファイルで GTK+ の設定を手動で指定することもできます。ただしデスクトップ環境やアプリケーションは手動設定を上書きしてしまうことがあります。GTK+ のバージョンによって、設定ファイルの場所は異なっています: |
設定ファイルで GTK+ の設定を手動で指定することもできます。ただしデスクトップ環境やアプリケーションは手動設定を上書きしてしまうことがあります。GTK+ のバージョンによって、設定ファイルの場所は異なっています: |
||
− | * GTK+ 2 ユーザー個別: {{ic|~/. |
+ | * GTK+ 2 ユーザー個別: {{ic|~/.gtkrc-2.0}} |
* GTK+ 2 システム全体: {{ic|/etc/gtk-2.0/gtkrc}} |
* GTK+ 2 システム全体: {{ic|/etc/gtk-2.0/gtkrc}} |
||
* GTK+ 3 ユーザー個別: {{ic|$XDG_CONFIG_HOME/gtk-3.0/settings.ini}} ({{ic|$XDG_CONFIG_HOME}} が設定されていない場合は {{ic|$HOME/.config/gtk-3.0/settings.ini}}) |
* GTK+ 3 ユーザー個別: {{ic|$XDG_CONFIG_HOME/gtk-3.0/settings.ini}} ({{ic|$XDG_CONFIG_HOME}} が設定されていない場合は {{ic|$HOME/.config/gtk-3.0/settings.ini}}) |
||
143行目: | 137行目: | ||
ただし、この機能はデフォルトでは無効になっています。この機能を有効にするには、次を設定してください: |
ただし、この機能はデフォルトでは無効になっています。この機能を有効にするには、次を設定してください: |
||
gtk-can-change-accels = 1 |
gtk-can-change-accels = 1 |
||
+ | |||
+ | ==== Emacs キーバインド ==== |
||
+ | GTK アプリで Emacs ライクなキーバインドを使うには: |
||
+ | |||
+ | GTK+2 アプリの場合、{{ic|~/.gtkrc-2.0}} に {{ic|1=gtk-key-theme-name = "Emacs"}} を追加してください。 |
||
+ | |||
+ | GTK+3 アプリの場合、以下を追加してください: |
||
+ | |||
+ | {{hc|1=~/.config/gtk-3.0/settings.ini|2= |
||
+ | [Settings] |
||
+ | gtk-key-theme-name = Emacs}} |
||
+ | |||
+ | そして以下のコマンドを実行してください: |
||
+ | |||
+ | $ gsettings set org.gnome.desktop.interface gtk-key-theme "Emacs" |
||
+ | |||
+ | Xfce にも同じような設定が存在します: |
||
+ | |||
+ | $ xfconf-query -c xsettings -p /Gtk/KeyThemeName -s Emacs |
||
+ | |||
+ | Emacs のキーバインドは {{ic|/usr/share/themes/Emacs/}} の設定ファイルで定義・変更できます。ユーザーの {{ic|~/.gtkrc-2.0}} ファイルにセクションをコピーすることで、ユーザー個別に編集が可能です。 |
||
=== GNOME メニューの高速化 === |
=== GNOME メニューの高速化 === |
||
208行目: | 223行目: | ||
}} |
}} |
||
+ | == GDK バックエンド == |
||
− | == Broadway による GTK+ と HTML == |
||
+ | |||
+ | GDK (GTK+ の抽象レイヤー) は GTK+ アプリケーションを表示するための複数のバックエンドをサポートしています。デフォルトのバックエンドは ''x11'' です。 |
||
+ | |||
+ | === Broadway バックエンド === |
||
GDK Broadway バックエンドは HTML5 とウェブソケットを使って、ウェブブラウザに GTK+ アプリケーションを表示することをサポートしています [https://developer.gnome.org/gtk3/3.8/gtk-broadway.html]。 |
GDK Broadway バックエンドは HTML5 とウェブソケットを使って、ウェブブラウザに GTK+ アプリケーションを表示することをサポートしています [https://developer.gnome.org/gtk3/3.8/gtk-broadway.html]。 |
||
219行目: | 238行目: | ||
デフォルトで使われるポートは: |
デフォルトで使われるポートは: |
||
− | port = 8080 + |
+ | port = 8080 + $display_number |
− | ブラウザで http:// |
+ | ブラウザで http://127.0.0.1:port を開いて下さい。 |
アプリを起動するには: |
アプリを起動するには: |
||
230行目: | 249行目: | ||
$ broadwayd --port $port_number --address $address $display_number |
$ broadwayd --port $port_number --address $address $display_number |
||
+ | |||
+ | === Wayland バックエンド === |
||
+ | |||
+ | GDK [[Wayland]] バックエンドは {{ic|GDK_BACKEND=wayland}} 環境変数を設定することで有効にできます。 |
||
== トラブルシューティング == |
== トラブルシューティング == |
||
244行目: | 267行目: | ||
ユーザーテーマファイル ({{ic|$XDG_CONFIG_HOME/gtk-3.0/settings.ini}}, {{ic|~/.gtkrc-2.0}}) は他のアカウントからは読み込まれないため、選択したテーマは [[en2:Running_X_apps_as_root|root で動かしている X アプリケーション]]には適用されません。以下のような解決方法があります: |
ユーザーテーマファイル ({{ic|$XDG_CONFIG_HOME/gtk-3.0/settings.ini}}, {{ic|~/.gtkrc-2.0}}) は他のアカウントからは読み込まれないため、選択したテーマは [[en2:Running_X_apps_as_root|root で動かしている X アプリケーション]]には適用されません。以下のような解決方法があります: |
||
− | * システム全体にテーマファイルを設定: {{ic|/etc/gtk-3.0/settings.ini}} (GTK+ 3) または {{ic|/etc/gtk-2.0/gtkrc}} (GTK+ 2) |
||
* シンボリックリンクを作成、例: |
* シンボリックリンクを作成、例: |
||
− | # ln -s /home/[username]/.gtkrc-2.0 / |
+ | # ln -s /home/[username]/.gtkrc-2.0 /etc/gtk-2.0/gtkrc |
+ | # ln -s /home/[username]/.config/gtk-3.0/settings.ini /etc/gtk-3.0/settings.ini |
||
+ | * システム全体にテーマファイルを設定: {{ic|/etc/gtk-3.0/settings.ini}} (GTK+ 3) または {{ic|/etc/gtk-2.0/gtkrc}} (GTK+ 2) |
||
* テーマを root で設定: |
* テーマを root で設定: |
||
# gksu lxappearance |
# gksu lxappearance |
||
338行目: | 362行目: | ||
{{AUR|gtk2-patched-filechooser-icon-view}} をインストールすることで GTK+ のファイル選択ダイアログで、リストの代わりにサムネイルでファイルを閲覧するオプションが作られます。 |
{{AUR|gtk2-patched-filechooser-icon-view}} をインストールすることで GTK+ のファイル選択ダイアログで、リストの代わりにサムネイルでファイルを閲覧するオプションが作られます。 |
||
+ | |||
+ | === GNOME Wayland セッションで一部のアプリのボタン/メニューアイコンが表示されない === |
||
+ | |||
+ | {{ic|~/.config/gtk-3.0/settings.ini}} ファイルの設定が間違っています。他の GTK+ ベースのデスクトップ環境を試しに使ってみた場合に発生することがあります。以下の値に問題があります: |
||
+ | |||
+ | {{hc|~/.config/gtk-3.0/settings.ini|<nowiki>[Settings] |
||
+ | gtk-button-images=1 |
||
+ | gtk-menu-images=1</nowiki>}} |
||
+ | |||
+ | 上記を 0 に設定するか、全てのファイルを削除して GNOME のデフォルト設定に戻してください。 |
||
+ | |||
+ | == Tips and tricks == |
||
+ | |||
+ | === ファイル選択ウィジェットでオートコンプリート検索機能を有効にする === |
||
+ | [https://bugzilla.gnome.org/show_bug.cgi?id=748672 v3.16] 現在、ファイル名の頭文字を入力することですぐにファイルを指定できる [https://developer.gnome.org/gtk3/stable/GtkFileChooserDialog.html ファイル選択ウィジェット] のオートコンプリート検索機能は GTK3 コードベースで意図的に無効化されています [https://mail.gnome.org/archives/commits-list/2015-January/msg05538.html]。機能を有効にするにはパッチを当てる必要があります。必要であれば AUR に存在する {{aur|gtk3-typeahead}} パッケージをインストールしてください。 |
||
== 設定例 == |
== 設定例 == |
2017年1月10日 (火) 22:14時点における版
GTK+ ウェブサイト より:
- GTK+ もしくは GIMP ツールキットはグラフィカルユーザーインターフェースを作成するためのマルチプラットフォームのツールキットです。ウィジェットの完全なセットを提供することで、GTK+ はちょっとしたツールから完全なアプリケーションスイートまで幅広いプロジェクトに適しています。
当初 GTK+ (GIMP Toolkit) は GNU プロジェクトによって GIMP のために作成されました、しかしながら現在ではさまざまな言語のバインディングの存在する人気のあるツールキットになっています。この記事では GTK+ テーマ・スタイル・アイコン・フォント・フォントサイズを設定するのに使うツールと手動設定の方法を詳しく伝えます。
インストール
GTK+ は公式リポジトリから2つのバージョンがインストールできます。以下のパッケージでインストールできます:
- GTK+ 3.x は gtk3 パッケージでインストールできます。
- GTK+ 2.x は gtk2 パッケージでインストールできます。
- GTK+ 1.x は gtkAUR パッケージでインストールできます。
テーマ
GTK+ 2 のデフォルトテーマは Raleigh ですが、Arch Linux では /usr/share/gtk-2.0/gtkrc
にカスタム設定ファイルを作成しており、デフォルトテーマは Adwaita に設定されています。GTK+ 3 のデフォルトテーマは Adwaita です。ただし HighContrast, HighContrastInverse, Raleigh テーマも含まれています。
特定のテーマを使うには、環境変数を設定します。
- GTK+ 2 の場合、
GTK2_RC_FILES
環境変数を使います、例:
$ GTK2_RC_FILES=/usr/share/themes/Industrial/gtk-2.0/gtkrc gimp
- 上記のコマンドを実行すると Industrial テーマで GIMP が起動します。
- GTK+ 3 の場合、
GTK_THEME
環境変数を使います、例:
$ GTK_THEME=Adwaita:dark gnome-calculator
- 上記のコマンドを実行すると Adwaita のダークテーマで GNOME Calculator が起動します。
公式リポジトリや AUR から多数のテーマをインストールすることができます。
GTK+ 2 と GTK+ 3.20 以上の両方をサポートしているテーマ:
- Breeze — KDE のデフォルトウィジェットテーマの GTK+ バージョン。
- Deepin — Deepin デスクトップのデフォルトテーマ。
- GNOME Standard Themes — GNOME デスクトップのデフォルトテーマ。次のテーマが含まれています: Adwaita, HighContrast
- MATE Themes — MATE デスクトップのデフォルトテーマ。次のテーマが含まれています: BlackMATE, BlueMenta, Blue-Submarine, ContrastHighInverse, Green-Submarine, Menta, TraditionalGreen, TraditionalOk。
- Numix — 近代的な外観をしているフラットで明るいテーマ (GNOME, Openbox, Unity, Xfce)。
- Adapta — マテリアルデザインガイドラインに基づいている GTK+ テーマ。
- Arc — モダンで透過するエレメントを備えたフラットテーマ。
- Blackbird — Xfce 用のダークなデスクトップスイート。
- Flat-Plat — GTK3, GTK2, GNOME-Shell に対応しているマテリアルデザインライクなフラットテーマ。
- Gnome-breeze — 新しい Plasma 5 Breeze にマッチする GTK テーマ。
- Greybird — グレーとブルーの Xfce テーマ。Xubuntu 12.04 のデフォルト。
- Vertex — GTK 3, GTK 2, Gnome-Shell, Cinnamon のためのテーマ。
- ttps://github.com/horst3180/vertex-theme || vertex-themesAUR
- Zuki — GTK, gnome-shell などのためのテーマ。
GTK+ 2 だけをサポートしているテーマ:
- GTK+ Engines — GTK+ 2 のテーマエンジン。次のテーマが含まれています: Clearlooks, Crux, Industrial, Mist, Redmond, ThinIce
- Xfce Gtk+ Engine — Xfce の Gtk+-2.0 エンジンとテーマ
- Oxygen-Gtk — KDE のデフォルトウィジェットテーマ (Oxygen) の GTK2 ポート
- Aurora Gtk Engine — 最新の Clearlooks ファミリー。
- QtCurve — KDE と Gtk のウィジェットスタイルの設定セット
AUR には他にも多くの GTK+ テーマが存在します: search for gtk-theme, search for gtk2-theme。
GTK+ と Qt
デスクトップで GTK+ と Qt (KDE) アプリケーションを使っているならば、それらの見た目が上手く調和しないことに気づくでしょう。GTK+ スタイルと Qt スタイルを調和させたい場合は Qt と GTK アプリケーションの外観の統合を読んで下さい。
設定ツール
主流のデスクトップ環境の多くは GTK+ テーマやアイコン、フォントやフォントサイズを設定するためのツールを提供しており、XSettings で設定を管理しています:
- Cinnamon を使っている場合、Themes ツールを使って下さい (cinnamon-settings themes): System Settings > Themes を開いて下さい。
- Enlightenment を使っている場合: Settings > All > Look > Application Theme を開いて下さい。
- GNOME を使っている場合、GNOME Tweak Tool (gnome-tweak-tool): gnome-tweak-tool をインストール。
- MATE を使っている場合、Appearance Preferences ツールを使って下さい (mate-appearance-properties): System > Settings > Appearance を開いて下さい。
- Xfce を使っている場合、Appearance ツールを使って下さい: Settings > Appearance を開いて下さい。
他の GUI ツールは設定ファイルを上書きします。
GTK+ 2 と GTK+ 3 の両方をサポートしているツール:
- KDE GTK Configurator — GTK+2 と GTK+3 アプリケーションのスタイルやフォントを変更することができるアプリケーション。
- https://projects.kde.org/kde-gtk-config || kde-gtk-config
- インストール後、
kde-gtk-config
は System Settings > Application Appearance > GTK からも設定できます。
- LXAppearance — LXDE プロジェクトによる、デスクトップに依存しない GTK+2 と GTK+3 のスタイル設定ツール (LXDE デスクトップの他のソフトウェアを必要としません)。
- Oo-mox — Numix テーマ (GTK2, GTK3) や gnome-colors アイコンテーマの様々なカラーバリエーションを生成するためのグラフィカルアプリケーション。
GTK+ 2 だけをサポートしているツール:
- GTK+ Change Theme — GTK+ 2.0 のテーマを変更するためのプログラム (switch2 の代替プログラム)。
- GTK+ Preference Tool — GTK+ テーマの選択とフォントの切り替えプログラム。
- GTK+ Theme Switch — シンプルな GTK+ テーマスイッチャ。
設定
設定ファイルで GTK+ の設定を手動で指定することもできます。ただしデスクトップ環境やアプリケーションは手動設定を上書きしてしまうことがあります。GTK+ のバージョンによって、設定ファイルの場所は異なっています:
- GTK+ 2 ユーザー個別:
~/.gtkrc-2.0
- GTK+ 2 システム全体:
/etc/gtk-2.0/gtkrc
- GTK+ 3 ユーザー個別:
$XDG_CONFIG_HOME/gtk-3.0/settings.ini
($XDG_CONFIG_HOME
が設定されていない場合は$HOME/.config/gtk-3.0/settings.ini
) - GTK+ 3 システム全体:
/etc/gtk-3.0/settings.ini
テーマの基本設定
GTK+ テーマやアイコン、フォントやフォントサイズを手動で変更するには、以下のように設定ファイルに追加します:
GTK+ 2:
~/.gtkrc-2.0
gtk-icon-theme-name = "Adwaita" gtk-theme-name = "Adwaita" gtk-font-name = "DejaVu Sans 11"
GTK+ 3:
$XDG_CONFIG_HOME/gtk-3.0/settings.ini
[Settings] gtk-icon-theme-name = Adwaita gtk-theme-name = Adwaita gtk-font-name = DejaVu Sans 11
ダークテーマ
GTK+ 3 テーマの中には派生のダークテーマが存在することがありますが、アプリケーションによって明示的に使うように設定されない限り、デフォルトで使われることはありません。全ての GTK+ 3 アプリケーションでダークテーマを使うには、以下を設定:
gtk-application-prefer-dark-theme = true
キーボードショートカットのカスタマイズを有効にする
マウスをメニューアイテムの上に乗せて設定したいキーボードのコンビネーションを押すことで GTK+ アプリケーションのキーボードショートカットをカスタマイズすることができます ただし、この機能はデフォルトでは無効になっています。この機能を有効にするには、次を設定してください:
gtk-can-change-accels = 1
Emacs キーバインド
GTK アプリで Emacs ライクなキーバインドを使うには:
GTK+2 アプリの場合、~/.gtkrc-2.0
に gtk-key-theme-name = "Emacs"
を追加してください。
GTK+3 アプリの場合、以下を追加してください:
~/.config/gtk-3.0/settings.ini
[Settings] gtk-key-theme-name = Emacs
そして以下のコマンドを実行してください:
$ gsettings set org.gnome.desktop.interface gtk-key-theme "Emacs"
Xfce にも同じような設定が存在します:
$ xfconf-query -c xsettings -p /Gtk/KeyThemeName -s Emacs
Emacs のキーバインドは /usr/share/themes/Emacs/
の設定ファイルで定義・変更できます。ユーザーの ~/.gtkrc-2.0
ファイルにセクションをコピーすることで、ユーザー個別に編集が可能です。
GNOME メニューの高速化
この設定は GNOME でマウスをメニューに置いた時にメニューが開くまでの待ち時間を決めます。あなたの好きなように設定を変更してください。数字はミリ秒です、例えば 250 は1/4秒になります。
gtk-menu-popup-delay = 0
ウィジェットのサイズを小さくする
小さな画面を使っていて大きなアイコンやウィジェットを表示したくない場合、簡単にサイズを変えることができます。 ツールバーのアイコンに文章を表示しないようにするには、次を使って下さい:
gtk-toolbar-style = GTK_TOOLBAR_ICONS
小さいアイコンを使うには、次のような行を使って下さい:
gtk-icon-sizes = "panel-menu=16,16:panel=16,16:gtk-menu=16,16:gtk-large-toolbar=16,16\ :gtk-small-toolbar=16,16:gtk-button=16,16"
ボタンからアイコンを完全に削除するには:
gtk-button-images = 0
メニューからアイコンを削除することもできます:
gtk-menu-images = 0
ここ で説明されているようにテーマの gtkrc で設定をすることもでき、小さくする設定が全て行う テーマ もあります。
ファイル選択ダイアログのデフォルトフォルダ
最近使われたフォルダではなく current-working-directory でファイル選択ダイアログを開くようにします。通常、current-working-directory はホームディレクトリです。
GTK+ 3
gsettings で DConf を変更してください、設定ファイルは存在しません:
$ gsettings set org.gtk.Settings.FileChooser startup-mode cwd
GTK+ 2
~/.config/gtk-2.0/gtkfilechooser.ini
設定ファイルを編集してください:
~/.config/gtk-2.0/gtkfilechooser.ini
StartupMode=cwd
スクロールの旧式の挙動
GTK+ 3.6 以前では、スクロールバーのスライダーの両側をクリックすると、クリックした方向にスクロールバーが丁度一ページ分だけ移動するようになっていました。GTK+ 3.6 から、スライダーはクリックした位置に直接移動するようになっています。以下の内容のファイルを作成することで、アプリケーションによっては前の挙動に戻すことが可能です:
~/.config/gtk-3.0/settings.ini
[Settings] gtk-primary-button-warps-slider = false
オーバーレイスクロールバーを無効化
GTK+ 3.15 から、オーバーレイスクロールバーがデフォルトで有効になっており、GTK+ 3 アプリケーションではマウスを乗せたときだけしかスクロールバーが表示されないようになっています。次の環境変数を設定することで元のスクロールバーに戻せます: GTK_OVERLAY_SCROLLING=0
。
オーバーレイスクロールのインジケータを削除
オーバーレイスクロールバーの位置はアプリケーションウィンドウの破線で示されます。たとえ上述の環境変数を使ってオーバーレイスクールを無効化しても破線は消えません。インジケータの線を消すには、以下のファイルを作成してください:
~/.config/gtk-3.0/gtk.css
/* Remove dotted lines from GTK+ 3 applications */ .undershoot.top, .undershoot.right, .undershoot.bottom, .undershoot.left { background-image: none; }
GDK バックエンド
GDK (GTK+ の抽象レイヤー) は GTK+ アプリケーションを表示するための複数のバックエンドをサポートしています。デフォルトのバックエンドは x11 です。
Broadway バックエンド
GDK Broadway バックエンドは HTML5 とウェブソケットを使って、ウェブブラウザに GTK+ アプリケーションを表示することをサポートしています [1]。
broadwayd を使うときには、X と同じようにコロンを前に付けて、使用するディスプレイ番号を指定してください。デフォルトのディスプレイ番号は 1 です。
$ display_number=:5
次のコマンドで起動します。
$ broadwayd $display_number
デフォルトで使われるポートは:
port = 8080 + $display_number
ブラウザで http://127.0.0.1:port を開いて下さい。
アプリを起動するには:
$ GDK_BACKEND=broadway BROADWAY_DISPLAY=$display_number <<app>>
また、アドレスやポートを設定することも可能です:
$ broadwayd --port $port_number --address $address $display_number
Wayland バックエンド
GDK Wayland バックエンドは GDK_BACKEND=wayland
環境変数を設定することで有効にできます。
トラブルシューティング
GTK+ 2 と GTK+ 3 アプリケーションでテーマが異なる
通常、選択したテーマが GTK+ 2.x と GTK+ 3.x の両方をサポートしている場合、GTK+ 2 と GTK+ 3 アプリケーションの両方にテーマが適用されます。選択したテーマが GTK+ 2.x しかサポートしてない場合、GTK+ 2.x アプリケーションにはそのテーマが使われ、GTK+ 3.x アプリケーションにはデフォルトの GTK+ テーマが使われます。選択したテーマが GTK+ 3.x しかサポートしていない場合、GTK+ 3.x アプリケーションにはそのテーマが使われ、GTK+ 2.x アプリケーションにはデフォルトの GTK+ テーマが使われます。UI の外観を統一するために GTK+ 2.x と GTK+ 3.x 両方をサポートしているテーマを使うと一番良い結果が得られます。
インストールしたテーマでどれが GTK+ 2.x と GTK+ 3.x 両方のバージョンを持っているか調べるには次のコマンドを使って下さい (空白が含まれている名前はひっかかりません):
find $(find ~/.themes /usr/share/themes/ -wholename "*/gtk-3.0" | sed -e "s/^\(.*\)\/gtk-3.0$/\1/") -wholename "*/gtk-2.0" | sed -e "s/.*\/\(.*\)\/gtk-2.0/\1"/
root アプリケーションにテーマが適用されない
ユーザーテーマファイル ($XDG_CONFIG_HOME/gtk-3.0/settings.ini
, ~/.gtkrc-2.0
) は他のアカウントからは読み込まれないため、選択したテーマは root で動かしている X アプリケーションには適用されません。以下のような解決方法があります:
- シンボリックリンクを作成、例:
# ln -s /home/[username]/.gtkrc-2.0 /etc/gtk-2.0/gtkrc # ln -s /home/[username]/.config/gtk-3.0/settings.ini /etc/gtk-3.0/settings.ini
- システム全体にテーマファイルを設定:
/etc/gtk-3.0/settings.ini
(GTK+ 3) または/etc/gtk-2.0/gtkrc
(GTK+ 2) - テーマを root で設定:
# gksu lxappearance
- 設定デーモンを使用 (ほとんどのデスクトップ環境では設定デーモンが使われています)。デスクトップに依存しない XSettings を使うデーモンは AUR の xsettingsd-gitAUR でインストールできます。
クライアントサイドデコレーション
GTK 3.12 から クライアントサイドデコレーション が導入されており、タイトルバーはウィンドウマネージャから取り去られています。これによって タイトルバーが二重になる、タイトルバーが全く表示されない、コンポジットを有効にした場合に 影が二重に表示される などの問題が発生することがあります。
(タイル型ウィンドウマネージャを使っている場合などに発生する) ウィンドウの周りの影と枠を消すには、以下のファイルを作成してください:
~/.config/gtk-3.0/gtk.css
.window-frame, .window-frame:backdrop { box-shadow: 0 0 0 black; border-style: none; margin: 0; border-radius: 0; } .titlebar { border-radius: 0; } .window-frame.csd.popup { box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.13); } .header-bar { background-image: none; background-color: #ededed; box-shadow: none; } /* You may want to use this if you don't like the double title. GtkLabel.title { opacity: 0; }*/
ヘッダーバーのボタンを調整するには、gtk-decoration-layout
の設定を使います [2]。以下の例では全てのボタンを削除します:
~/.config/gtk-3.0/settings.ini
gtk-decoration-layout=menu:
セディーユ ć/Ć ではなく ç/Ç が使われる
Xcompose を使用した解決方法が [3] や [4] に載っています (US 国際レイアウト)。
accessibility bus に関する警告を表示させない
GTK+ 3 プログラムの実行時に、ターミナルに以下のような警告が表示される場合:
WARNING **: Couldn't connect to accessibility bus:
以下のように環境変数を付けて実行することで警告を消すことができます:
$ NO_AT_BRIDGE=1 theprogram
もしくは ~/.bashrc
や /etc/environment
に NO_AT_BRIDGE=1
を追加してください。
タイトルバーの背景色がおかしい
GTK+ テーマの背景色に擬態するウィンドウデコレーションテーマを使用するウィンドウマネージャを使っている場合、GTK+ 3 アプリケーションでタイトルバーの色がアプリケーションの色と完全に食い違って表示されることがあります。対応策としては、以下のファイルを作成してください:
~/.config/gtk-3.0/gtk.css
/* Always use background color */ GtkWindow { background-color: @theme_bg_color; } /* Fix tooltip background override */ .tooltip { background-color: rgba(0, 0, 0, 0.8); } .tooltip * { background-color: transparent; } /* Fix Nautilus desktop window background override */ NautilusWindow { background-color: transparent; }
タイル型ウィンドウマネージャでフォーカスイベントがおかしい
GDK_CORE_DEVICE_EVENTS=1
を定義して xinput2 の代わりに GTK2 のスタイル入力を使うようにしてください [6]。
GTK+ 2 のファイルダイアログのサムネイル
gtk2-patched-filechooser-icon-viewAUR をインストールすることで GTK+ のファイル選択ダイアログで、リストの代わりにサムネイルでファイルを閲覧するオプションが作られます。
GNOME Wayland セッションで一部のアプリのボタン/メニューアイコンが表示されない
~/.config/gtk-3.0/settings.ini
ファイルの設定が間違っています。他の GTK+ ベースのデスクトップ環境を試しに使ってみた場合に発生することがあります。以下の値に問題があります:
~/.config/gtk-3.0/settings.ini
[Settings] gtk-button-images=1 gtk-menu-images=1
上記を 0 に設定するか、全てのファイルを削除して GNOME のデフォルト設定に戻してください。
Tips and tricks
ファイル選択ウィジェットでオートコンプリート検索機能を有効にする
v3.16 現在、ファイル名の頭文字を入力することですぐにファイルを指定できる ファイル選択ウィジェット のオートコンプリート検索機能は GTK3 コードベースで意図的に無効化されています [7]。機能を有効にするにはパッチを当てる必要があります。必要であれば AUR に存在する gtk3-typeaheadAUR パッケージをインストールしてください。
設定例
GTK+ 2 設定例:
~/.gtkrc-2.0
# GTK theme include "/usr/share/themes/Clearlooks/gtk-2.0/gtkrc" # Font style "myfont" { font_name = "DejaVu Sans 8" } widget_class "*" style "myfont" gtk-font-name = "DejaVu Sans 8" # Icon theme gtk-icon-theme-name = "Tango" # Toolbar style gtk-toolbar-style = GTK_TOOLBAR_ICONS
lxappearance で GTK+ 2.x から GTK+ 3.x に変換した GTK+ 3 の設定例:
$XDG_CONFIG_HOME/gtk-3.0/settings.ini
[Settings] gtk-theme-name=TraditionalOk gtk-icon-theme-name=Fog gtk-font-name=Luxi Sans 12 gtk-cursor-theme-name=mate gtk-cursor-theme-size=24 gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR gtk-button-images=1 gtk-menu-images=1 gtk-enable-event-sounds=0 gtk-enable-input-feedback-sounds=0 gtk-xft-antialias=1 gtk-xft-hinting=1 gtk-xft-hintstyle=hintslight gtk-xft-rgba=rgb