教程

开发 Sliprail 主题

Sliprail 主题允许您自定义启动器的外观和感觉。通过创建主题,您可以定义颜色、间距等样式。

manifest.json 字段说明

每个主题都需要一个 manifest.json 文件来定义其元数据。以下是支持的所有字段:

  • id:主题的唯一标识符,用于在系统中识别您的主题。
  • main:指定主题的主要样式文件(如 main.css)。此文件会单独加载,请不要使用 @import,也不要拆分成多个 CSS 文件。
  • type:必须设置为 "Theme",表示这是一个主题。
  • preview:主题预览图的本地文件名,例如 preview.png。
  • icon:可选,主题的图标,可以是一个 URL 或数据 URI。
  • theme:可选,一个对象,包含以下子字段:
    • appearance:可选,设置主题的外观模式,可以是 "Light" 或 "Dark"。
    • extend:可选,一个对象,定义装饰元素可以超出主窗口的距离。包括:
      • top:上超出距离,数字类型。
      • right:右超出距离。
      • bottom:下超出距离。
      • left:左超出距离。

所有字段都应以 JSON 格式编写,确保正确性。

主题样式开发

Sliprail 主题的核心在于 main.css 文件。为了实现理想的界面效果,您可以使用以下关键 CSS 类名进行定制:

  • .window:窗口容器,构成整个启动器界面的框架。此容器专门用于设置背景图片,可实现图片延伸至 main 区域外的效果。请勿在此设置背景颜色,仅用于背景图片。
  • .window-foreground:专门用于前置装饰(如人物立绘或遮罩)的图层。该图层会撑满整个窗口,且不会干扰任何鼠标点击操作。
  • .main:启动器的实际内容渲染容器。建议在此设置背景颜色及其他核心视觉样式。需要注意的是,这个区域距离最外层窗口边缘只有 10 像素的间隙。如果你想给它添加阴影等效果,请确保阴影不要太宽,最好控制在这个范围内,否则边缘会被切掉,看起来不自然。
  • .search-input-box:设置搜索输入框容器的样式。由于没有占位符,请勿应用针对占位符的样式。
  • .results:搜索结果列表的容器,用于展示所有匹配项。
  • .result-item:单个搜索结果项的样式。为了保证顺滑的使用体验,请不要在此元素上设置过渡动画(transition)。由于列表会在您输入时即时更新,动画效果会让结果显示显得不够干脆,产生一种延迟感。此外,建议不要自定义高度或内外边距,以保持界面整洁。
  • .result-item-selected:当前高亮或选中的搜索结果样式(例如键盘导航时)。
  • .result-item-title:搜索结果项标题的样式。
  • .result-item-subtitle:搜索结果项副标题或描述信息的样式。
  • .app-icon:搜索结果中应用程序图标的样式。默认大小为 30px。建议尽量不要修改图标大小,但如果确有必要,也可以按需调整。

通过针对这些类编写样式,您可以自由定义布局、配色方案以及间距,打造独特的主题体验。

测试主题

在开发过程中,您可以轻松测试您的主题:

  1. 打开 Sliprail 设置。
  2. 点击“所有主题”选项。
  3. 在弹出的窗口中,选择“导入已解压的主题”。
  4. 浏览并选择您的主题文件夹,即可加载并测试主题。

当您完成开发并对效果满意时,可以使用 生成主题预览图GenerateThemePreview)快捷指令,为您的作品一键生成完美的展示预览图。

创建和发布主题

Sliprail 主题非常简单,只包含 CSS 文件和图片。没有依赖需要管理,无需调试,也不需要打包。

创建公开主题

如果您希望其他用户也能使用您的主题:

  1. 创建 GitHub 仓库:在 GitHub 上创建一个公开仓库来托管您的主题代码。
  2. 注册您的主题:访问 https://account.fengcen.io/developer 创建新的 Sliprail 主题,并填写 GitHub 仓库链接。注册后,您将获得一个唯一的主题 ID。
  3. 配置 manifest.json:在您的主题的 manifest.json 文件中,将 id 字段设置为您注册时获得的主题 ID。
  4. 开发主题:编写您的 CSS 文件并添加图片。
  5. 发布部署:将代码推送到 GitHub 仓库。主题发布后,通常需要等待约一天时间才能在 Sliprail 商店中可见。

创建私有主题

对于仅供个人使用的主题:

  1. 创建私有主题:在 https://account.fengcen.io/developer 创建新的 Sliprail 主题,选择“私有”可见性,无需 GitHub 链接。获得主题 ID。
  2. 配置 manifest.json:在 manifest.json 中设置 id 字段。
  3. 开发主题:创建您的主题文件。
  4. 本地加载:在 Sliprail 的主题管理界面中加载本地主题文件夹进行测试。

主题发现

用户可通过 Sliprail 商店搜索并安装您的主题。我们鼓励开发者创建高质量的主题,以提升用户体验。

下一步

现在您已经了解了如何开发 Sliprail 主题,可以开始创建您自己的主题,并分享给社区。