Typora 主题工程
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_5cc4cdb8/hekouwang-typora-theme-skill 到 AI 助手。
技能介绍
解决 Typora 主题的隐性失败
Typora 主题看起来只是 CSS,实际会踩几类静默失败:改完样式切主题不重新加载、备份 CSS 被列进主题菜单、滥用 !important 和 px 字号让偏好失效、靠肉眼猜浅色与深色的底色关系,以及字体不生效却没有报错。这套技能把这类问题收敛成可重复的工程流程。
核心能力与关键步骤
技能以 token 为真源,不直接手改生成物。先在 scripts/tokens.json 修改配色、字号、行高和紧凑度;再运行 scripts/build.py 生成 theme/hekouwang.css 与 theme/hekouwang-dark.css。构建阶段会断言零 !important、除根字号外零 px 字号,并检查 dark 段只覆盖 color 与 alpha,同时保留行高、行宽和纸感约束。
配色不是猜出来的,而是采样窗口、侧边栏、正文区和行内代码,分别确认浅色与深色下的角色关系。字体是否上屏也不靠感觉:先测量一个不存在的字体作为 fallback 基准,再判断目标字体是否真的改变了宽度。需要扩展时,按 references 分路取用:tokens.md 负责视觉参数,typora-spec.md 描述选择器地图与静默坑,fonts.md 处理字体策略与授权,workflow.md 覆盖新主题、变体与发布。
适用边界与注意点
公开仓默认产出免费 V2 两套主题;V1 与 V3–V6 属于付费档,palettes.paid.json 和 craft_paid.py 不在公开树,付费项需要单独获取。headless 验证全绿也不代表 Typora 内正确,系统 Chrome 与内嵌 Chromium 存在差异,最终仍要在 Typora 里肉眼验收。改样式后必须完全退出再重开 Typora,备份 CSS 不能放在主题根目录。
使用场景
- 改配色时编辑 `scripts/tokens.json`,用 `scripts/build.py` 生成浅色和深色主题。
- 主题样式错乱时按 references/typora-spec.md 核对选择器、行高与静默坑。
- 验证字体是否上屏时量取不存在字体的基准宽度,再对比目标字体。
- 做新主题或变体时参考 workflow.md 处理构建、发布与付费档边界。
适合人员
- 维护 Typora 主题仓库的开发者,需要让免费档 CSS 由 tokens 生成而不是手改。
- 做浅色与深色配色的工程师,要采样窗口、侧边栏和正文区的真实底色。
- 处理字体授权与降级的开发者,想在不报错的情况下确认字体是否真的上屏。
- 整理主题规范和发布流程的人,需要把 Typora 选择器坑位写成可复用参考。