Skip to content
This repository has been archived by the owner on Aug 31, 2021. It is now read-only.

Latest commit

 

History

History
114 lines (70 loc) · 4.51 KB

README_CN.md

File metadata and controls

114 lines (70 loc) · 4.51 KB

IBus 主题工具

last-commit pipy

GPL Licence Repo-Size

Total alerts Language grade: Python

English

Python库依赖

前置知识

IBus 的前端是基于 GTK 的,而 GNOME 用它的 GJS 版本取代了这个前端,使其与 GNOME 更加统一。

因而,对于非GNOME桌面环境,IBus的显示效果是由当前GTK主题确定的。

$HOME/.config/gtk-3.0/settings.ini文件定义了当前的GTK3主题及字体字号。

该文件的部分内容示例如下:

[Settings]
gtk-theme-name=Materia-light
gtk-font-name=更纱黑体 SC 12

上述表述中,gtk-theme-name指定了当前GTK主题为Materia-lightgtk-font-name指定了当前的字体为更纱黑体 SC,字号为12

可通过修改上述文件实现改变IBus字体和字号的目的。

至于IBus的配色方案,可以在IBus启动的时候指定其使用特定GTK主题,即可实现对IBus配色的自定义。

安装

你可以直接使用pip安装:

pip install ibus-theme-tools
ibus-theme-tools

或者也可以手动安装:

git clone https://github.com/openSUSE/IBus-Theme-Tools.git
cd IBus-Theme-Tools && python3 setup.py install
ibus-theme-tools

如果你使用 Arch Linux, 也可使用 AUR 安装为系统插件:

yay -S ibus-theme-tools

AUR

Ubuntu PPA

实现功能

非GNOME桌面

在非 GNOME Shell 桌面环境中,生成新的IBus GTK主题,并支持选择背景图片与配置圆角半径。

运行ibus_theme_tools.py脚本,按提示操作即可。

在主题生成完成后,手动在系统设置中选择新生成的主题即可。

如果你安装了支持GNOME-Shell样式的主题,你还可以选择提取IBus样式,但是只能在GNOME桌面使用。

自定义 IBus 色调(创建一个GTK主题)

创建一个名为ibus-custom-theme的GTK3主题,运行:

mkdir -p $HOME/.themes/ibus-custom-theme/gtk-3.0
$EDITOR $HOME/.themes/ibus-custom-theme/gtk-3.0/gtk.css

然后进行文件内容的编辑,文件内容示例:

* {
  color: #0b141a; /* 字体颜色 */
  background-color: #ffffff; /* 背景颜色 */
  -gtk-secondary-caret-color: #d4d4d4; /* 高亮背景颜色 */
}

然后运行程序,选择刚刚创建的ibus-custom-theme主题即可。

GNOME桌面

从GNOME-Shell主题提取IBus样式,使用Python下CSS解析器tinycss2实现功能,生成额外IBus样式表供用户修改测试使用。

运行ibus_theme_tools.py脚本,按提示操作即可。

当用户从主题列表中选中一个主题,本程序会首先读取该主题的定义 CSS 文件,从中提取出定义 IBus 皮肤的类样式(.candidate-*)以及其他的额外操作,然后将其写入样式表文件。

随后可以使用自定义 IBus GNOME Shell 扩展导入并应用主题。

注意: 如你的 IBus 样式表在应用后作出了更改,请关闭并重新开启对应自定义主题来使其生效。 从 v69 开始,支持样式表热重载, CSS 的变化会实时地体现出来。

示例提取出的样式表文件:exportedIBusTheme.css

说明

该项目是@HollowMan6参与谷歌编程之夏 (GSoC) 2021OpenSUSE社区成果的一部分。