文档 minihtml 参考

Sublime Merge 使用一个名为 minihtml 的自定义 HTML 和 CSS 引擎来解析主题和配色方案中的颜色。该引擎的 HTML 功能目前尚未使用。

minihtml 提供了大多数 Web 浏览器中 CSS 功能的有限子集。虽然可能只实现某些功能,但它们旨在符合标准。在 minihtml 中实现的任何功能都应该与浏览器中的功能相同。

CSS

颜色

颜色可以通过以下方式指定

  • 命名颜色:whitetan
  • 简写十六进制:#fff
  • 带 alpha 的简写十六进制:#fff8
  • 完整十六进制:#ffffff
  • 带 alpha 的完整十六进制:#ffffff80
  • RGB 函数表示法:rgb(255, 255, 255)
  • RGBA 函数表示法:rgba(255, 255, 255, 0.5)
  • HSL 函数表示法:hsl(0, 100%, 100%)
  • HSLA 函数表示法:hsla(0, 100%, 100%, 0.5)
  • transparent

color() Mod 函数

此外,可以使用 CSS 颜色模块级别 4 color-mod 函数 以及以下调整器来修改颜色值

  • alpha()/a()
  • saturation()/s()
  • lightness()/l()
  • blend()
  • blenda()
.error {
    background-color: color(var(--background) alpha(0.25));
}
.error {
    background-color: color(var(--background) blend(red 50%));
}

color-mod 函数在与变量(如在主题或配色方案中设置的变量)结合使用时最为有用。

预定义变量

加载配色方案时,背景色和前景色将设置为 CSS 变量,以及最接近少数基本颜色的颜色。这些变量也暴露给主题。

  • var(--background)
  • var(--foreground)
  • var(--accent)
  • var(--redish)
  • var(--orangish)
  • var(--yellowish)
  • var(--greenish)
  • var(--cyanish)
  • var(--bluish)
  • var(--purplish)
  • var(--pinkish)

选择颜色的算法使用 HSL 颜色空间,并使用一些启发式方法来尝试选择适合前景色使用的颜色。如果自动颜色选择不理想,配色方案作者可以在其 .sublime-color-scheme 中手动设置相应命名的变量。