Год таму вучыў Сі, асвойваў GTK і падчас пісаў раппер для Wine, які спрашчае наладу шматлікіх стомных дзеянняў. Цяпер дапісваць праект няма ні чакай, ні сіл, але ў ім была зручная функцыя адаптацыі тэмы Wine да бягучай тэмы GTK3, якую я вынес у асобную кансольную ўтыліту. Ведаю, у Wine-staging ёсць функцыя «мімікрыі» пад тэму GTK, але зроблена гэта вельмі крыва, частка віджэтаў перастае адказваць ці ўвогуле адлюстроўвацца, і гэта доўжыцца ўжо некалькі гадоў, так што маё рашэнне куды як больш юзабельнае, хоць і далёка не ідэальнае .
Утыліта "выцягвае" колеры з бягучай тэмы GTK-3 і аптымальна падладжвае іх для выкарыстання з віджэтамі WinAPI. Алгарытм аптымізаваны для выкарыстання як са светлымі, так і з цёмнымі тэмамі. Нажаль, асаблівасці тэм а-ля "windows 95" не дазваляюць дамагчыся сучаснага плоскага дызайну, у любым выпадку частка віджэтаў адлюстроўваюцца некарэктна. Для прыдзірлівых карыстачоў ёсць некалькі ключоў для больш дакладнай падладкі пад сябе.
Выкарыстанне:
-prefix, -p $PATH - шлях да прэфікса
-not-run-winecfg, -w - не запускаць Winecfg пасля прымянення тэмы
-loader-dir, -l $DIR - шлях да адвольнага загрузніка Wine, напрыклад, "/opt/wine-staging/bin"
-set-default, -d - адмяніць усё пястоту з кветкамі і вярнуць дэфолт
-main-color, -m $COLOR - адвольны фонавы колер віджэтаў, напрыклад, "#fa4500"
-highlight-color, -c $COLOR - колер падсвятлення вылучаных віджэтаў
-active-color, -a $COLOR - колер загалоўка актыўнага акна
-inactive-color, -i $COLOR - колер загалоўка неактыўнага акна
-text-color, -t $COLOR - колер тэксту
-contrast, -c $VALUE - налада кантраснасці выніковай тэмы, ад 0.1 да 2.0, па змаўчанні 1.0
Скампіляваны бінарнік (amd64)
Скрыншоты з некалькімі вядомымі тэмамі
Крыніца: linux.org.ru