arch-wiki-md-repo
Version:
All arch-wiki articles in markdown format, updated every two days.
593 lines (370 loc) • 40.4 kB
Markdown
Ссылки по теме
* [Единый вид приложений Qt и GTK](/index.php/%D0%95%D0%B4%D0%B8%D0%BD%D1%8B%D0%B9_%D0%B2%D0%B8%D0%B4_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9_Qt_%D0%B8_GTK "Единый вид приложений Qt и GTK")
* [Qt (Русский)](/index.php/Qt_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Qt (Русский)")
* [GNU Project](/index.php/GNU_Project "GNU Project")
* [GTK+/Development](/index.php/GTK%2B/Development "GTK+/Development")
**Состояние перевода:** На этой странице представлен перевод статьи [GTK+](/index.php/GTK%2B "GTK+"). Дата последней синхронизации: 26 февраля 2016\. Вы можете [помочь](/index.php/ArchWiki_Translation_Team_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "ArchWiki Translation Team (Русский)") синхронизировать перевод, если в английской версии произошли [изменения](https://wiki.archlinux.org/index.php?title=GTK%2B&diff=0&oldid=422340).
C [сайта GTK+](http://www.gtk.org):
*GTK+, или GIMP Toolkit - это мультиплатформенный инструментарий для разработки графического пользовательского интерфейса. Offering a complete set of widgets, GTK+ is suitable for projects ranging from small one-off tools to complete application suites.*
GTK+, GIMP Toolkit, изначально сделан [проектом GNU](/index.php/GNU_Project "GNU Project") для [GIMP](/index.php/GIMP "GIMP"), но теперь это очень популярный инструмент связанный с многими языками. Эта статья будет исследовать инструменты, используемые для настройки GTK+ тем, стилей, иконок, шрифтов и размеров шрифтов, а также подробную ручную настройку.
## Contents
* [1 Установка](#.D0.A3.D1.81.D1.82.D0.B0.D0.BD.D0.BE.D0.B2.D0.BA.D0.B0)
* [2 Темы](#.D0.A2.D0.B5.D0.BC.D1.8B)
* [2.1 GTK+ и Qt](#GTK.2B_.D0.B8_Qt)
* [3 Средства настройки](#.D0.A1.D1.80.D0.B5.D0.B4.D1.81.D1.82.D0.B2.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8)
* [4 Настройка](#.D0.9D.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0)
* [4.1 Базовая настройка темы](#.D0.91.D0.B0.D0.B7.D0.BE.D0.B2.D0.B0.D1.8F_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0_.D1.82.D0.B5.D0.BC.D1.8B)
* [4.2 Вариант тёмной темы](#.D0.92.D0.B0.D1.80.D0.B8.D0.B0.D0.BD.D1.82_.D1.82.D1.91.D0.BC.D0.BD.D0.BE.D0.B9_.D1.82.D0.B5.D0.BC.D1.8B)
* [4.3 Горячие клавиши](#.D0.93.D0.BE.D1.80.D1.8F.D1.87.D0.B8.D0.B5_.D0.BA.D0.BB.D0.B0.D0.B2.D0.B8.D1.88.D0.B8)
* [4.4 Задержка меню GNOME](#.D0.97.D0.B0.D0.B4.D0.B5.D1.80.D0.B6.D0.BA.D0.B0_.D0.BC.D0.B5.D0.BD.D1.8E_GNOME)
* [4.5 Уменьшить размер виджетов](#.D0.A3.D0.BC.D0.B5.D0.BD.D1.8C.D1.88.D0.B8.D1.82.D1.8C_.D1.80.D0.B0.D0.B7.D0.BC.D0.B5.D1.80_.D0.B2.D0.B8.D0.B4.D0.B6.D0.B5.D1.82.D0.BE.D0.B2)
* [4.6 Место запуска выбора файла](#.D0.9C.D0.B5.D1.81.D1.82.D0.BE_.D0.B7.D0.B0.D0.BF.D1.83.D1.81.D0.BA.D0.B0_.D0.B2.D1.8B.D0.B1.D0.BE.D1.80.D0.B0_.D1.84.D0.B0.D0.B9.D0.BB.D0.B0)
* [4.7 Наследие поведения скроллбара](#.D0.9D.D0.B0.D1.81.D0.BB.D0.B5.D0.B4.D0.B8.D0.B5_.D0.BF.D0.BE.D0.B2.D0.B5.D0.B4.D0.B5.D0.BD.D0.B8.D1.8F_.D1.81.D0.BA.D1.80.D0.BE.D0.BB.D0.BB.D0.B1.D0.B0.D1.80.D0.B0)
* [4.8 Отключить наложение скролбара](#.D0.9E.D1.82.D0.BA.D0.BB.D1.8E.D1.87.D0.B8.D1.82.D1.8C_.D0.BD.D0.B0.D0.BB.D0.BE.D0.B6.D0.B5.D0.BD.D0.B8.D0.B5_.D1.81.D0.BA.D1.80.D0.BE.D0.BB.D0.B1.D0.B0.D1.80.D0.B0)
* [4.8.1 Удалить наложенные показателя скролбара](#.D0.A3.D0.B4.D0.B0.D0.BB.D0.B8.D1.82.D1.8C_.D0.BD.D0.B0.D0.BB.D0.BE.D0.B6.D0.B5.D0.BD.D0.BD.D1.8B.D0.B5_.D0.BF.D0.BE.D0.BA.D0.B0.D0.B7.D0.B0.D1.82.D0.B5.D0.BB.D1.8F_.D1.81.D0.BA.D1.80.D0.BE.D0.BB.D0.B1.D0.B0.D1.80.D0.B0)
* [5 GTK+ и HTML с Broadway](#GTK.2B_.D0.B8_HTML_.D1.81_Broadway)
* [6 Решение проблем](#.D0.A0.D0.B5.D1.88.D0.B5.D0.BD.D0.B8.D0.B5_.D0.BF.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC)
* [6.1 Различные темы приложений между GTK+ 2 и GTK+ 3](#.D0.A0.D0.B0.D0.B7.D0.BB.D0.B8.D1.87.D0.BD.D1.8B.D0.B5_.D1.82.D0.B5.D0.BC.D1.8B_.D0.BF.D1.80.D0.B8.D0.BB.D0.BE.D0.B6.D0.B5.D0.BD.D0.B8.D0.B9_.D0.BC.D0.B5.D0.B6.D0.B4.D1.83_GTK.2B_2_.D0.B8_GTK.2B_3)
* [6.2 Тема не применяется к root-приложениям](#.D0.A2.D0.B5.D0.BC.D0.B0_.D0.BD.D0.B5_.D0.BF.D1.80.D0.B8.D0.BC.D0.B5.D0.BD.D1.8F.D0.B5.D1.82.D1.81.D1.8F_.D0.BA_root-.D0.BF.D1.80.D0.B8.D0.BB.D0.BE.D0.B6.D0.B5.D0.BD.D0.B8.D1.8F.D0.BC)
* [6.3 Клиентские декорации](#.D0.9A.D0.BB.D0.B8.D0.B5.D0.BD.D1.82.D1.81.D0.BA.D0.B8.D0.B5_.D0.B4.D0.B5.D0.BA.D0.BE.D1.80.D0.B0.D1.86.D0.B8.D0.B8)
* [6.4 Седиль ç/Ç вместо ć/Ć (характерно в основном для Французского языка)](#.D0.A1.D0.B5.D0.B4.D0.B8.D0.BB.D1.8C_.C3.A7.2F.C3.87_.D0.B2.D0.BC.D0.B5.D1.81.D1.82.D0.BE_.C4.87.2F.C4.86_.28.D1.85.D0.B0.D1.80.D0.B0.D0.BA.D1.82.D0.B5.D1.80.D0.BD.D0.BE_.D0.B2_.D0.BE.D1.81.D0.BD.D0.BE.D0.B2.D0.BD.D0.BE.D0.BC_.D0.B4.D0.BB.D1.8F_.D0.A4.D1.80.D0.B0.D0.BD.D1.86.D1.83.D0.B7.D1.81.D0.BA.D0.BE.D0.B3.D0.BE_.D1.8F.D0.B7.D1.8B.D0.BA.D0.B0.29)
* [6.5 Подавить предупреждение о accessibility bus](#.D0.9F.D0.BE.D0.B4.D0.B0.D0.B2.D0.B8.D1.82.D1.8C_.D0.BF.D1.80.D0.B5.D0.B4.D1.83.D0.BF.D1.80.D0.B5.D0.B6.D0.B4.D0.B5.D0.BD.D0.B8.D0.B5_.D0.BE_accessibility_bus)
* [6.6 Не соответствует цвет фона в строке заголовка (TitleBar)](#.D0.9D.D0.B5_.D1.81.D0.BE.D0.BE.D1.82.D0.B2.D0.B5.D1.82.D1.81.D1.82.D0.B2.D1.83.D0.B5.D1.82_.D1.86.D0.B2.D0.B5.D1.82_.D1.84.D0.BE.D0.BD.D0.B0_.D0.B2_.D1.81.D1.82.D1.80.D0.BE.D0.BA.D0.B5_.D0.B7.D0.B0.D0.B3.D0.BE.D0.BB.D0.BE.D0.B2.D0.BA.D0.B0_.28TitleBar.29)
* [6.7 Неправильный фокус событий в тайловых оконных менеджерах](#.D0.9D.D0.B5.D0.BF.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D1.8C.D0.BD.D1.8B.D0.B9_.D1.84.D0.BE.D0.BA.D1.83.D1.81_.D1.81.D0.BE.D0.B1.D1.8B.D1.82.D0.B8.D0.B9_.D0.B2_.D1.82.D0.B0.D0.B9.D0.BB.D0.BE.D0.B2.D1.8B.D1.85_.D0.BE.D0.BA.D0.BE.D0.BD.D0.BD.D1.8B.D1.85_.D0.BC.D0.B5.D0.BD.D0.B5.D0.B4.D0.B6.D0.B5.D1.80.D0.B0.D1.85)
* [6.8 Поддержка эскизов для диалога файлов GTK + 2](#.D0.9F.D0.BE.D0.B4.D0.B4.D0.B5.D1.80.D0.B6.D0.BA.D0.B0_.D1.8D.D1.81.D0.BA.D0.B8.D0.B7.D0.BE.D0.B2_.D0.B4.D0.BB.D1.8F_.D0.B4.D0.B8.D0.B0.D0.BB.D0.BE.D0.B3.D0.B0_.D1.84.D0.B0.D0.B9.D0.BB.D0.BE.D0.B2_GTK_.2B_2)
* [7 Примеры](#.D0.9F.D1.80.D0.B8.D0.BC.D0.B5.D1.80.D1.8B)
* [8 Смотрите также](#.D0.A1.D0.BC.D0.BE.D1.82.D1.80.D0.B8.D1.82.D0.B5_.D1.82.D0.B0.D0.BA.D0.B6.D0.B5)
## Установка
Две версии GTK+ в настоящее время доступны в [официальных репозиториях](/index.php/Official_repositories_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Official repositories (Русский)"). Они могут быть [установлены](/index.php/Install "Install") со следующими пакетами:
* **GTK+ 3.x** доступен с пакетом [gtk3](https://www.archlinux.org/packages/?name=gtk3).
* **GTK+ 2.x** доступен с пакетом [gtk2](https://www.archlinux.org/packages/?name=gtk2).
* **GTK+ 1.x** доступен с пакетом [gtk](https://aur.archlinux.org/packages/gtk/).
## Темы
В GTK+ 2, тема по умолчанию *Raleigh*, но Arch Linux имеет пользовательский файл настроек `/usr/share/gtk-2.0/gtkrc`, который устанавливает тему по умолчанию *Adwaita*. В GTK+ 3, тема по умолчанию *Adwaita*, но также включены темы*HighContrast* и *Raleigh*.
Чтобы установить определенную тему, вы можете задать переменные среды.
* Для GTK+ 2, используйте переменную среду `GTK2_RC_FILES` например:
```
$ GTK2_RC_FILES=/usr/share/themes/Industrial/gtk-2.0/gtkrc gimp
```
запустит GIMP с Industrial theme.
* Для GTK+ 3, используйте переменную среду `GTK_THEME` например:
```
$ GTK_THEME=Adwaita:dark gnome-calculator
```
Будет запущен GNOME Калькулятор с тёмным вариантом темы Adwaita.
Другие темы могут быть установлены из официальных репозиториев или из [AUR](/index.php/AUR "AUR").
**С поддержкой обеих GTK+ 2 и GTK+ 3:**
* **Breeze** — GTK+ версия тем виджетов KDE's по умолчанию.
[https://quickgit.kde.org/?p=breeze-gtk.git](https://quickgit.kde.org/?p=breeze-gtk.git) || [breeze-gtk](https://www.archlinux.org/packages/?name=breeze-gtk)
* **Deepin** — Тема по умолчанию для рабочего стола Deepin.
[https://gitcafe.com/Deepin/deepin-gtk-theme](https://gitcafe.com/Deepin/deepin-gtk-theme) || [deepin-gtk-theme](https://www.archlinux.org/packages/?name=deepin-gtk-theme)
* **GNOME Standard Themes** — Тема по умолчанию для Рабочего стола GNOME. Включает: *Adwaita*, *HighContrast*
[https://github.com/GNOME/gnome-themes-standard](https://github.com/GNOME/gnome-themes-standard) || [gnome-themes-standard](https://www.archlinux.org/packages/?name=gnome-themes-standard)
* **MATE Themes** — Тема по умолчанию для Рабочего стола MATE. Включает: *BlackMATE*, *BlueMenta*, *Blue-Submarine*, *ContrastHigh*, *ContrastHighInverse*, *GreenLaguna*, *Green-Submarine*, *Menta*, *TraditionalGreen*, *TraditionalOk*, *TraditionalOkTest*
[https://github.com/mate-desktop/mate-themes](https://github.com/mate-desktop/mate-themes) || [mate-themes](https://www.archlinux.org/packages/?name=mate-themes)
* **MATE Themes Extras** — Коллекция GTK2/3 тем для Рабочего стола MATE. Включает: *DeLorean-Dark*, *DeLorean*, *GnomishBeige*
[https://github.com/NiceandGently/mate-themes-extras](https://github.com/NiceandGently/mate-themes-extras) || [mate-themes-extras](https://www.archlinux.org/packages/?name=mate-themes-extras)
* **Numix** — Плоская и легкая тема с современным видом (GNOME, Openbox, Unity, Xfce).
[https://numixproject.org/](https://numixproject.org/) || [numix-themes](https://www.archlinux.org/packages/?name=numix-themes)
* **Arc** — Плоская тема с современным дизайном и прозрачными элементами.
[https://github.com/horst3180/Arc-theme](https://github.com/horst3180/Arc-theme) || [gtk-theme-arc-git](https://aur.archlinux.org/packages/gtk-theme-arc-git/)
* **Ceti-2** — Тема для GTK 3, GTK 2 и Gnome-Shell.
[http://horst3180.deviantart.com/art/Ceti-2-Theme-489193140](http://horst3180.deviantart.com/art/Ceti-2-Theme-489193140) || [ceti-2-themes](https://aur.archlinux.org/packages/ceti-2-themes/)
* **Clearlooks-Phénix** — GTK3 тема визуально близкая к Clearlooks.
[https://github.com/jpfleury/clearlooks-phenix](https://github.com/jpfleury/clearlooks-phenix) || [clearlooks-phenix-gtk-theme](https://aur.archlinux.org/packages/clearlooks-phenix-gtk-theme/)
* **Gnome-breeze** — Тема GTK создана в соответствии с новой Plasma 5 Breeze.
[https://github.com/dirruk1/gnome-breeze](https://github.com/dirruk1/gnome-breeze) || [gnome-breeze-git](https://aur.archlinux.org/packages/gnome-breeze-git/)
* **Greybird** — Серая и синяя тема Xfce, используемая по умолчанию в Xubuntu 12.04.
[http://shimmerproject.org/our-projects/greybird/](http://shimmerproject.org/our-projects/greybird/) || [xfce-theme-greybird](https://aur.archlinux.org/packages/xfce-theme-greybird/)
* **Orion** — Современная, светлая тема GTK.
[http://deviantart.com/view/281431756](http://deviantart.com/view/281431756) || [gtk-theme-orion](https://aur.archlinux.org/packages/gtk-theme-orion/)
* **Vertex** — Тема для GTK 3, GTK 2, Gnome-Shell и Cinnamon.
[http://horst3180.deviantart.com/art/Vertex-Theme-470663601](http://horst3180.deviantart.com/art/Vertex-Theme-470663601) || [vertex-themes](https://aur.archlinux.org/packages/vertex-themes/)
* **Zukitwo** — Темы для GTK, gnome-shell и др.
[http://gnome-look.org/content/show.php/Zukitwo?content=140562](http://gnome-look.org/content/show.php/Zukitwo?content=140562) || [zukitwo-themes](https://aur.archlinux.org/packages/zukitwo-themes/)
**Поддерживается только GTK+ 2:**
* **GTK+ Engines** — Движок тем для GTK+ 2\. Включает: *Clearlooks*, *Crux*, *Industrial*, *Mist*, *Redmond*, *ThinIce*
[https://github.com/GNOME/gtk-engines](https://github.com/GNOME/gtk-engines) || [gtk-engines](https://www.archlinux.org/packages/?name=gtk-engines)
* **Xfce Gtk+ Engine** — Xfce Gtk+-2.0 движок и темы
[http://git.xfce.org/xfce/gtk-xfce-engine/](http://git.xfce.org/xfce/gtk-xfce-engine/) || [gtk-xfce-engine](https://www.archlinux.org/packages/?name=gtk-xfce-engine)
* **Oxygen-Gtk** — Порт стандартных тем KDE виджетов (Oxygen) в GTK2
[https://projects.kde.org/projects/playground/artwork/oxygen-gtk/](https://projects.kde.org/projects/playground/artwork/oxygen-gtk/) || [oxygen-gtk2](https://www.archlinux.org/packages/?name=oxygen-gtk2)
* **Aurora Gtk Engine** — Последний участник семейства Clearlooks.
[http://gnome-look.org/content/show.php/Aurora+Gtk+Engine?content=56438](http://gnome-look.org/content/show.php/Aurora+Gtk+Engine?content=56438) || [gtk-engine-aurora](https://aur.archlinux.org/packages/gtk-engine-aurora/)
* **Openbox Themes** — Различные темы для Оконного менеджера Openbox.
[https://www.debian.org/](https://www.debian.org/) || [openbox-themes](https://www.archlinux.org/packages/?name=openbox-themes)
* **QtCurve** — Настраиваемый набор стилей виджетов для KDE и Gtk.
[https://projects.kde.org/projects/playground/base/qtcurve](https://projects.kde.org/projects/playground/base/qtcurve) || [qtcurve-gtk2](https://www.archlinux.org/packages/?name=qtcurve-gtk2)
Есть ряд дополнительных тем GTK+ в [AUR](/index.php/AUR "AUR"): [поиск gtk-theme](https://aur.archlinux.org/packages.php?K=gtk-theme), [поиск gtk2-theme](https://aur.archlinux.org/packages.php?K=gtk2-theme), [поиск gtk3-theme](https://aur.archlinux.org/packages.php?K=gtk3-theme).
**Примечание:**
* Так как GTK+ 3 быстро меняется, GTK+ 3 темы требуют переработки после выпуска GTK+ 3\. По этой причине, не все темы GTK+ 3, могут выглядеть как предполагалось при использовании последней GTK + 3 версии.
* Некоторые темы могут потребовать [librsvg](https://www.archlinux.org/packages/?name=librsvg) для правильного отображения, но не все указывают его в качестве зависимости. Попробуйте установить его, если выбранная тема выглядит сломанной.
* Некоторые темы не могут использоваться для отображения панели "как есть" (
светлый текст на светлом фоне), так что вам нужно использовать предоставленный [фон панели](http://i.imgur.com/QmeyN.png).
### GTK+ и Qt
Если у вас есть GTK+ и Qt (KDE) приложения на рабочем столе, то вы знаете, что их внешность не сочетается/не совпадает.Если вы хотите, чтобы ваши стили GTK+ соответствовали вашим стилям Qt прочитайте [различный вид GTK+ 2 и GTK+ 3 приложений](/index.php/Uniform_look_for_Qt_and_GTK_applications_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Uniform look for Qt and GTK applications (Русский)").
## Средства настройки
Большинство крупных [окружений рабочего стола](/index.php/Desktop_environment_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Desktop environment (Русский)") предоставляют инструменты для настройки тем GTK+, иконок, шрифта и размера шрифта, и управляют этими настройками с помощью [XSettings](http://standards.freedesktop.org/xsettings-spec/xsettings-spec-0.5.html):
* Если вы используете [Cinnamon](/index.php/Cinnamon "Cinnamon"), используйте Themes tool (*cinnamon-settings themes*): идите в *Параметры > Параметры системы > Оформление*.
* Если вы используете [Enlightenment](/index.php/Enlightenment "Enlightenment"): идите в *Settings > All > Look > Application Theme*.
* Если вы используете [GNOME](/index.php/GNOME "GNOME"), используйте Gnome Tweak Tool (*gnome-tweak-tool*): установите [gnome-tweak-tool](https://www.archlinux.org/packages/?name=gnome-tweak-tool), идите в *GNOME Tweak Tool > Внешний вид*.
* Если вы используете [MATE](/index.php/MATE "MATE"), используйте Appearance Preferences tool (*mate-appearance-properties*): идите в *Система > Параметры > Внешний вид*.
* Если вы используете [Xfce](/index.php/Xfce "Xfce"), используйте Appearance tool: идите *Настройки > Внешний вид*.
* Если вы используете [Openbox](/index.php/Openbox "Openbox"), идите в *obconf > Тема* или lxappearance с установленным lxappearance-obconf, тогда *lxappearance-obconf > Рамка окна > Тема*.
Другие графические инструменты, как правило перезаписывают [файлы настроек](#.D0.9D.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B0).
**Поддерживаются оба GTK+ 2 и GTK+ 3:**
* **KDE GTK Configurator** — Приложение, которое позволяет изменять стиль и шрифт GTK+2 и Gtk+3 приложений.
[https://projects.kde.org/kde-gtk-config](https://projects.kde.org/kde-gtk-config) || [kde-gtk-config](https://www.archlinux.org/packages/?name=kde-gtk-config)
После установки, `kde-gtk-config` также можно найти в *System Settings > Application Appearance > GTK*.
* **LXAppearance** — независимая от Окружения рабочего стола утилита настройки GTK+2 и GTK+3, от проекта LXDE (не требует других частей LXDE).
[http://wiki.lxde.org/en/LXAppearance](http://wiki.lxde.org/en/LXAppearance) || [lxappearance](https://www.archlinux.org/packages/?name=lxappearance)
**Поддерживается только GTK+ 2:**
* **GTK-KDE4** — Приложение, которое позволяет изменять стиль и шрифт GTK+2 приложений в KDE4.
[http://kde-look.org/content/show.php?content=74689](http://kde-look.org/content/show.php?content=74689) || [gtk-kde4](https://aur.archlinux.org/packages/gtk-kde4/)
После установки, `gtk-kde4` также можно найти в *System Settings > Lost and Found > GTK style*.
* **GTK+ Change Theme** — Маленькая программа, которая позволяет изменять вашу GTK+ 2.0 тему (считается лучшей альтернативой *switch2*).
[http://plasmasturm.org/code/gtk-chtheme/](http://plasmasturm.org/code/gtk-chtheme/) || [gtk-chtheme](https://www.archlinux.org/packages/?name=gtk-chtheme)
* **GTK+ Preference Tool** — Переключает GTK+ темы и меняет шрифт.
[http://gtk-win.sourceforge.net/home/index.php/Main/GTKPreferenceTool](http://gtk-win.sourceforge.net/home/index.php/Main/GTKPreferenceTool) || [gtk2_prefs](https://aur.archlinux.org/packages/gtk2_prefs/)
* **GTK+ Theme Switch** — Простой переключатель GTK+ тем.
[http://muhri.net/nav.php3?node=gts](http://muhri.net/nav.php3?node=gts) || [gtk-theme-switch2](https://www.archlinux.org/packages/?name=gtk-theme-switch2)
## Настройка
Параметры GTK+ могут быть вручную заданы в файлах настройки, но окружение рабочего стола и приложения могут переопределить эти параметры. В зависимости от версии GTK+, эти файлы находятся по пути:
* GTK+ 2 конкрентного пользователя: `~/.gtkrc-2.0` или `~/.config/gtkrc-2.0`
* GTK+ 2 всей системы: `/etc/gtk-2.0/gtkrc`
* GTK+ 3 конкрентного пользователя: `$XDG_CONFIG_HOME/gtk-3.0/settings.ini`, или `$HOME/.config/gtk-3.0/settings.ini` если не установлена `$XDG_CONFIG_HOME`
* GTK+ 3 всей системы: `/etc/gtk-3.0/settings.ini`
**Примечание:**
* Смотрите [GTK+ 3 свойства *GtkSettings*](http://library.gnome.org/devel/gtk3/stable/GtkSettings.html#GtkSettings.properties) (и [GTK+ 2 свойства](http://library.gnome.org/devel/gtk2/stable/GtkSettings.html#GtkSettings.properties)) в справочном руководстве программирования GTK+, для полного перечня поддерживаемых в настоящее время вариантов настройки GTK+.
* Некоторые настройки, описанных ниже (например `gtk-icon-sizes`) являются устаревшими и игнорируется с GTK+ 3.10.
* При редактировании файлов настроек GTK+, только вновь запущенные приложения будет отображать изменения.
### Базовая настройка темы
Для ручного изменения темы 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
```
### Горячие клавиши
Keyboard shortcuts (otherwise known as *accelerators* in GTK+) may be changed by hovering the mouse over the respective menu item, and pressing the desired key combination. To enable this feature, set:
```
gtk-can-change-accels = 1
```
### Задержка меню GNOME
Этот параметр управляет задержкой между "указыванием мыши" на меню и "открытием меню". Эта задержка измеряется в миллисекундах.
```
gtk-menu-popup-delay = 0
```
### Уменьшить размер виджетов
Если у вас небольшой экран, или вы просто не любите большие иконки и виджеты, вы можете изменить их размер.
Для того чтобы иконки были без текста в панели инструментов ([(допустимые значения)](https://developer.gnome.org/gtk3/stable/gtk3-Standard-Enumerations.html#GtkToolbarStyle)), используйте
```
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
```
Смотрите также [[1]](http://martin.ankerl.com/2008/10/10/how-to-make-a-compact-gnome-theme/) и [[2]](http://gnome-look.org/content/show.php/Simple+eGTK?content=119812).
### Место запуска выбора файла
Чтобы открывать диалог "выбор файла" (например при открытии/сохранении) в **текущем рабочем каталоге** а не в **последнем** (recent) месте (обычно **текущий-рабочий-каталог** это **домашний каталог**), сделайте следующее:
Для **GTK+ 3**
Измените DConf с *gsettings*:
```
$ 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+.
**Совет:** Наследство поведения прокрутки может быть надежно достигнуто, просто используя правую кнопку мыши вместо левой кнопки мыши.
До 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`.
Смотрите [Переменные окружения#Графические приложения](/index.php/Environment_variables_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)#.D0.93.D1.80.D0.B0.D1.84.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.B8.D0.B5_.D0.BF.D1.80.D0.B8.D0.BB.D0.BE.D0.B6.D0.B5.D0.BD.D0.B8.D1.8F "Environment variables (Русский)").
#### Удалить наложенные показателя скролбара
Позиции наложения прокрутки обозначены тонкими пунктирными линиями в окне приложения. Эти пунктирные линии будут присутствовать, даже если накладка прокрутка отключена с помощью переменной сред, которая обсуждались в предыдущем разделе. Для удаления индикаторных линий, создайте следующий файл:
`~/.config/gtk-3.0/gtk.css`
```
/* Remove dotted lines from GTK+ 3 applications */
.undershoot.top, .undershoot.right, .undershoot.bottom, .undershoot.left { background-image: none; }
```
## GTK+ и HTML с Broadway
GDK Broadway обеспечивает поддержку для отображения GTK+ приложений в веб-браузере, используя HTML5 и веб-соккеты. [[3]](https://developer.gnome.org/gtk3/3.8/gtk-broadway.html)
При использовании broadwayd, укажите номер дисплея для использования с префиксом двоеточие, похожий на X. На дисплее по умолчанию номер 1.
```
$ display_number=:5
```
Запустите его.
```
$ broadwayd $display_number
```
Порт используемый по умолчанию
```
port = 8080 + ($display_number - 1)
```
Укажите ваш браузер [http://localhost:port](http://localhost:port)
Запускаемые приложения
```
$ GDK_BACKEND=broadway BROADWAY_DISPLAY=$display_number *<<app>>*
```
В качестве альтернативы, можно установить адрес и порт
```
$ broadwayd --port $port_number --address $address $display_number
```
## Решение проблем
### Различные темы приложений между GTK+ 2 и GTK+ 3
В общем, если выбранная тема имеет поддержку как для GTK+ 2 и GTK+ 3, тема будет применяться для всех GTK+ 2 и GTK+ 3 приложений. Если выбранная тема имеет поддержку только GTK+ 2, будет использоваться для GTK+ 2 приложений, и GTK+ тема по умолчанию будет использоваться для GTK+ 3 приложений. Если выбранная тема имеет поддержку только GTK+ 3, то будет использована для GTK+ 3 приложений, и GTK+ тема по умолчанию будет использоваться для GTK+ 2 приложений. Таким образом, для согласования тем приложений, лучше использовать тему, которая имеет поддержку как GTK+ 2 так и GTK+ 3.
Вы можете найти установленные темы на вашей системе с поддержкой обоих версий GTK+ 2 и GTK+ 3, используя эту команду (не работает с именами, содержащими пробелы):
```
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`) не может быть прочитан другими аккаунтами, выбранная тема не будет применяться к [приложениям X запущенных от root](/index.php/Running_X_apps_as_root "Running X apps as root"). Возможное решение включает в себя:
* Настройку файла темы для всей системы: `/etc/gtk-3.0/settings.ini` (GTK+ 3) или `/etc/gtk-2.0/gtkrc` (GTK+ 2)
* Создание символьной ссылки, т.е.
```
# ln -s /home/[Имя_Пользователя]/.gtkrc-2.0 /root/.gtkrc-2.0
```
* Смена темы от root
```
# gksu lxappearance
```
* Используйте настройки демона (это в большинстве окружений рабочего стола). Вариант desktop-agnostic использует [XSettings](http://standards.freedesktop.org/xsettings-spec/xsettings-spec-0.5.html) доступный в [AUR](/index.php/AUR "AUR") [xsettingsd-git](https://aur.archlinux.org/packages/xsettingsd-git/).
### Клиентские декорации
С версии GTK 3.12 введены [Клиентские декорации](http://blogs.gnome.org/mclasen/2013/12/05/client-side-decorations-in-themes/), которые действуют в титлбаре от оконного менеджера. Это может решить такие вопросы как [двойной титл-бар](http://redmine.audacious-media-player.org/boards/1/topics/1135), нет титл-бара вообще, или [двойная тень](https://github.com/chjj/compton/issues/189) с включенным композитингом.
Чтобы удалить тень и зазор вокруг окон (например, в сочетании с тайловым оконным менеджером), создайте следующий файл:
`~/.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`. [[4]](https://developer.gnome.org/gtk3/stable/GtkSettings.html#GtkSettings--gtk-decoration-layout) Приведенный ниже пример удаляет все кнопки:
`~/.config/gtk-3.0/settings.ini` `gtk-decoration-layout=menu:`
### Седиль ç/Ç вместо ć/Ć (характерно в основном для Французского языка)
Смотрите [[5]](https://bugs.launchpad.net/ubuntu/+source/gtk+2.0/+bug/518056), и [[6]](https://bugs.launchpad.net/ubuntu/+source/gtk+2.0/+bug/518056/comments/37) для решения проблемы с использованием Xcompose (US international layout).
### Подавить предупреждение о accessibility bus
Если вы не используете функции [Gnome Accessibility](https://wiki.gnome.org/Accessibility) (специальных возможностей),вы можете получать такие предупреждения :
```
WARNING **: Couldn't connect to accessibility bus:
```
вы можете подавить предупреждение, запуская программу с `NO_AT_BRIDGE=1` или установить в качестве [глобальной переменной окружения](/index.php/Environment_variables_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Environment variables (Русский)")
### Не соответствует цвет фона в строке заголовка (TitleBar)
Если вы используете [оконный менеджер](/index.php/Window_manager_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) "Window manager (Русский)") который использует тему декорации окон, которая имитирует цвет темой фона 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;
}
```
### Неправильный фокус событий в тайловых оконных менеджерах
**Примечание:** Это отключит поддержку Сенсорного экрана для приложений GTK3\. [[7]](https://bugzilla.gnome.org/show_bug.cgi?id=677329#c14)
[Определите](/index.php/Environment_variables_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)#.D0.A3.D1.81.D1.82.D0.B0.D0.BD.D0.BE.D0.B2.D0.BA.D0.B0_.D0.BF.D0.B5.D1.80.D0.B5.D0.BC.D0.B5.D0.BD.D0.BD.D1.8B.D1.85 "Environment variables (Русский)") `GDK_CORE_DEVICE_EVENTS=1` для использования стиля ввода GTK2, вместо xinput2\. [[8]](https://bugzilla.gnome.org/show_bug.cgi?id=677329#c10)
### Поддержка эскизов для диалога файлов GTK + 2
Установите [gtk2-patched-filechooser-icon-view](https://aur.archlinux.org/packages/gtk2-patched-filechooser-icon-view/) чтобы получить возможность просмотра файлов в виде миниатюр, вместо списка, в файловом браузере GTK +.
## Примеры
Пример настройки 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
```
GTK+ 3 пример настройки конвертации GTK+ 2.x в GTK+ 3.x с [lxappearance](https://www.archlinux.org/packages/?name=lxappearance):
`$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
```
## Смотрите также
* [Официальный сайт GTK+ (Англ.)](http://www.gtk.org/)
* [Статья на Википедии о GTK+ (Рус.)](https://en.wikipedia.org/wiki/ru:GTK%2B "wikipedia:ru:GTK+")
* [Руководство GTK+ 2.0 (Англ.)](http://developer.gnome.org/gtk-tutorial/stable/)
* [Справочное руководство GTK+ 3 (Англ.)](http://developer.gnome.org/gtk3/stable/)
* [Руководство gtkmm (Англ.)](http://developer.gnome.org/gtkmm-tutorial/stable/)
* [Справочное руководство gtkmm (Англ.)](http://developer.gnome.org/gtkmm/stable/)