语法主题
带有 language-* 类的代码块会在构建时由
textlane 进行高亮,它运行 VS Code 的 TextMate
语法和主题,输出与 Shiki
相同的标记。每个词法单元带有浅色主题的颜色,深色主题的颜色则放在
--shiki-dark
变量中,主题会随切换按钮和读者的设置使用它,因此代码颜色也会跟着切换,无需脚本,也不会闪烁。
配置
默认值与 Livemark 相同:
codeThemeLight: catppuccin-latte
codeThemeDark: catppuccin-mocha
约 60 个内置主题中的任何一个都可以使用;可在
Shiki playground
中查看。未知的名称会导致构建失败。代码块的边框、背景和字体仍来自
styles/content.css。
常用搭配
catppuccin-latte/catppuccin-mocha(默认)github-light/github-darkone-light/one-dark-prosolarized-light/solarized-darkrose-pine-dawn/rose-pinevitesse-light/vitesse-dark
关于无障碍
无论给代码设置什么颜色,发布前都请用对比度工具逐一检查它们与代码块背景的对比度。常规尺寸文字所需的阈值为
4.5:1(WCAG AA)。catppuccin-latte
的绿色字符串在白色背景上达不到该阈值,因此 htmlpress 把它们从
#40a02b 加深为 #2a7e16,与 Livemark 的做法相同。
另请参阅
- Code Blocks:编写方面的说明。
- 覆盖/弹出:替换主题的代码样式或复制按钮脚本。
用 ❤ 和 Htmlpress 构建