用途与实际影响
这项功能怎样使用
为什么需要它
圆角、字体、标题栏和配色很难只凭记忆复现。主题更新又可能增删选项,所以需要同时知道“我选了什么”和“这些选项属于哪一版主题”。
举个实际例子
“我以前把 Zehn 主题调成浅色和圆角,想找回当时的选择。”先选旧快照,再比较当前已安装的主题版本;旧配置不能直接当作新版本的真实外观。
最后我会得到什么
可以读回自己的选项和 RGB 配色,再对照主题版本恢复;最终仍需在当前 Steam 中检查效果。
可以怎么用
能从选定快照读回主题选项与颜色,并在当前 Steam 里看到对应效果。
需要处理什么
公开版本、本地快照和当前安装不一致时,先选要恢复哪一份。
什么时候不可用
主题程序、图片或字体缺失时,只有配置文字仍不能重建完整外观。
从哪里开始
从项目快照选择目标主题配置,先确认目标机器已安装对应主题资源,再按恢复计划合并选项和配色。
需要准备什么
- 想恢复的主题外观与日期
- 目标电脑已装或希望重装的主题
从开始到拿到结果
- 1
确定基线
分清远端提交、本地未提交快照与当前安装,选要恢复的那一份。
- 2
核对主题版本
先装可用资源,再把对应选项和配色合并回填,不盲迁移未知键。
- 3
实际看外观
在 Steam 核对主题、颜色和滚动条;版本差异或缺资源时保留明确缺口。
技术实现与依据
这里保留实现、关键条件、精确入口、历史记录和验证结果。
选中 Adwaita;Zehn 安装版本已更新关键规则与设计选择
选择值和主题定义分别保留,不把“已有 JSON”当作所有版本都支持这些键。
只保存名单内的定义文件,主题 CSS、图片和字体仍要从主题程序取得。
未提交不等于未生效:Adwaita 本地 4.4 已与安装匹配;Zehn 安装则比本地快照更新。
本模块用到的名词
- conditions
- config.json 中每套主题已经选择的开关或枚举值。
- themeColors
- 保存 RGB 三元组配色,供对应主题引用;这是选择值,不是独立调色程序。
- skin.json / theme.json
- 主题选项、补丁目标和资源路径定义,引用的实际 CSS 等资源未随快照打包。
专业定义
Adwaita 和 Zehn 的选项、颜色与来源提交都留下;公开提交、本地快照和安装分别说明。
解决什么
只有配色值没有主题资源无法呈现界面;复制旧版本定义到新程序,也可能引用已经变化的选项或资源。
当前怎样实现
- Adwaita-for-Steam 来自 tkashkin/Adwaita-for-Steam;本地 metadata(元数据) 提交 1e92107a51f6ed53c59c38646444c9eb3a52b030。已提交配置版本 4.2,本地快照与已安装定义为 4.4。
- Zehn 来自 yurisuika/Zehn;已提交配置版本 2026.7.24,本地快照 2026.8.29、metadata(元数据) 提交 fbce1f5cc550d04c9909076ebbe54df9368e50a7;已安装 2026.9.7、提交 68719556122c06fdaaa14358012a697577042d17。
- Adwaita 子目录保存 metadata.json、skin.json、theme.json;Zehn 保存 metadata.json、skin.json、options.json、waifus.json。
- 本地 Adwaita 保存 17 个条件选择与 48 个颜色变量,包括 System 配色方案、Adwaita 字体、圆角与方形游戏图标选择;如 --adw-accent-bg-rgb=39, 168, 100。Zehn 保存 25 个条件选择与 14 个颜色变量,包括 Embed Size=640、Avatar Frame=no 等选项与各状态颜色。
执行流程
- 1
复制每套主题允许的定义与元数据文件。
- 2
与核心 config.json 中该主题的 conditions、themeColors 一起保存。
- 3
恢复时核对安装版本、资源和选项对应关系,合并回填后在 Steam 查看实际外观。
边界
- 不会合并主题对象、自动调整废弃键或保证上游忽略未知选项时一定不出错。
- 本地快照存在 7 个未提交文件是当前状态,不是另建的版本管理或主题自动迁移系统。
失败与恢复
- 主题新版本删改了旧选项或资源路径
- 按对应主题实际版本重新核对;无法从本项目证明自动兼容,不保证复制后原样还原。
- 主题外观不符合预期
- 核对 activeTheme、conditions、themeColors 以及实际安装资源,必要时恢复目标机已保留配置。
真实入口
themes/Adwaita-for-Steam/主题定义、元数据及已提交/本地版本。
themes/Zehn/皮肤定义、选项、元数据与本地版本。
config/config.json实际选中的主题、条件和 RGB 颜色。
如何验证
- 原有测试证明主题元数据会复制,主题图片资源不复制。
- 只读比对确认 Adwaita 本地文件与安装一致;Zehn metadata(元数据)/skin 与安装不同,版本分别列出。
与其他模块的关系
与核心设置一起还原外观;插件清单是另外一类扩展,二者都依赖真实程序资源。
