发布助手

我们将在 2023 年晚些时候停止使用助手功能 - 但您仍然可以使用旧版本的 Sketch 或命令行界面使用它。 了解更多信息

发布您的助手,以便在每次使用它的文档使用 Sketch 打开时自动下载。 选择加入到 Sketch 助手目录 中。

我们建议发布到 npm,因为这使得您的助手包易于被其他人访问,并且只需要一些额外的元数据即可在助手目录中列出。 但是,自托管您的助手也是一种选择。

发布到 npm

以下是将您的助手发布到 npm 的步骤列表。 有关发布 JavaScript 包的更多信息,请参阅 文档

注意:您需要一个免费的 npm 帐户才能发布到 npm 注册表。

  1. 通过 npm login 在命令行中确保您已登录 npm。
  2. 根据需要更新您的助手代码,实现您想要的任何规则并确保所有测试都通过。
  3. 确保 package.json 中的 name 字段已设置为有效的唯一 npm 包名称。
  4. 确保 package.json 中的 version 字段已更新以反映您要发布的版本。
  5. 运行助手的构建过程。
  6. 运行 npm publish。 您的助手包现在应该已上线 🎉

要确认包已成功发布,请运行以下命令请求元数据

npm info <your-package-name>

通过复制并粘贴上面输出中的 tarball 值并将其添加到 Sketch 文档中,通过文档的 ⚙️ › 从 URL 添加… 选项添加到 Sketch 文档中,将您的 npm 助手添加到 Sketch 文档中。

配置了已发布助手的 Sketch 文档真正具有可移植性 - 其他用户在打开文档时将被提示安装完全相同的助手包。

自托管

您的助手没有严格的要求必须发布到 npm。 只要您的助手包托管在网络上的某个地方,并且您的目标受众可以访问,它就可以添加到 Sketch 文档并共享。

在使用我们的 Sketch 助手模板 存储库生成的助手上运行以下命令会在当前工作目录中创建一个 .tgz 存档。

npm run package-tarball

上传生成的 .tgz 存档后,通过文档的 ⚙️ › 从 URL 添加… 选项将助手添加到 Sketch 文档中。

更新已发布的助手

Sketch 不会检查是否有您已发布助手的更新版本,因此它不会自动提示用户更新添加到文档中的助手。

如果助手有更新版本可用,并且您想更新文档以利用它,则需要将助手重新添加到该文档中。 可以通过文档的 ⚙️ › 从存档添加… 选项或从 sketch.com 再次添加助手。

Sketch 助手目录

将您的助手包含在目录中可以使 Sketch 用户更容易发现它,并且可以直接通过 Sketch 中的 查找助手… 菜单项访问。

  1. 一键式 添加到 Sketch 按钮可将助手添加到当前文档
  2. 助手按预定义类别组织
  3. 从助手的 README.md 文档生成的详细信息页面

清单

使用以下清单将您的助手包含在 Sketch 助手目录中。

package.json 中包含正确的元数据

  • 版本号,必须为 1.0.0 或更高版本
  • 指向助手构建的单个文件捆绑包的相对路径,例如 dist/sketch.js
  • sketch-assistant 中的值用于显示标题、描述和图标。

    "sketch-assistant": {
      "title": "Naming Conventions",
      "description": "Naming conventions used by the Sketch design team",
      "icon": "https://user-images.githubusercontent.com/1078571/81808046-0a6e2b00-9517-11ea-9b6c-1c6fa9a377ba.png"
    }
    
  • homepage 中链接到助手文档。 这可以是您自己的网站或使用以下 URL 格式的助手目录详细信息

    https://www.sketch.ac.cn/extensions/assistants/{assistant-package-name}`
    

    请参阅 整理 以供参考

  • 作者 对象,至少包含一个 name 字符串。 建议包含支持的电子邮件地址。
  • 关键字 sketch assistantpublic 以选择加入助手目录的索引,请参阅 完整列表

README.md 中准备文档

  • 不要包含 添加到 Sketch 链接或按钮
  • 记录规则和配置选项

发布到 npm

README.md 最佳实践

README.md Markdown 内容用于生成助手的目录详细信息页面。

  • 不要以 package.json 中使用的标题或描述开头,从助手包含的规则及其原因的摘要开始。
  • 不要包含助手图标。
  • 记录每个规则的作用。
  • 提供操作和非操作的示例,如有帮助,请提供图像。
  • 对每个规则使用 HTML 片段标识符,遵循 {assistant-package-name}/{rule-name} 约定。 这用于 Sketch 链接到详细的规则文档,例如,任何使用 groups-max-layers 规则的助手。

    <h1 id="@sketch-hq/sketch-core-assistant/groups-max-layers">Groups should contain no more than 10 layers</h1>
    

预定义类别

为了更轻松地找到合适的助手,目录使用一组预定义的类别。 考虑为您的助手分配以下类别 关键字 中的一个或多个。 数组中指定的第一个关键字将用作助手的首要类别。

  • 指南
  • 组织
  • 辅助功能
  • iOS
  • Mac
  • Windows
  • Web
  • Android