菜单

菜谱格式标准

相关源文件

本文档规定了HowToCook仓库中食谱文件的必需格式和风格指南。这些标准确保食谱精确、一致且易于程序员理解。格式要求在拉取请求过程中由代码审查系统自动验证。

有关仓库中食谱组织方式的信息,请参阅 食谱组织

食谱文件结构要求

所有食谱文件都必须遵循具有特定章节的一致结构。这种标准化允许自动处理和质量控制。

文件名和位置

食谱文件必须放置在 dishes/ 文件夹内的相应类别目录中。文件名不得包含空格。

来源: .github/readme-generate.js12-63 .github/manual_lint.js14-17

所需章节

每个食谱必须包含严格按照特定顺序排列的四个主要章节。此结构由代码审查系统严格执行。

来源: .github/manual_lint.js61-86

标题格式

食谱的主标题必须遵循格式: # [文件名]的做法。例如,如果文件名是 红烧肉.md,则标题必须是 # 红烧肉的做法

来源: .github/manual_lint.js61-64

计量标准

精确的计量是本食谱集的关键要求。代码审查系统严格执行计量精度,以确保食谱能够准确遵循。

必需精度

所有配料的用量都必须以精确的计量单位指定。

✅ 可接受❌ 不可接受
100g 糖适量糖
250ml 水一杯水
5g 盐少许盐
鸡腿 (约200g)一个鸡腿左右
15分钟15min

来源: .github/manual_lint.js23-57

份量标准

食谱必须按单份或每份的基准编写,而不是按特定人数编写。如果食谱旨在制作多份,则必须说明:

  1. 总产量
  2. 例如,“每次制作前需要确定计划做几份。一份正好够X个人食用。”

来源: .github/manual_lint.js37-48

语言和风格指南

本仓库强制执行特定的语言和风格指南,以保持所有食谱的一致性和清晰性。

禁止使用的语言元素

食谱中不允许使用以下语言元素:

  1. 人称代词(“你”/“我”)
  2. 模糊的时间或数量描述
  3. 非标准单位
  4. 关键步骤的主观描述

来源: .github/manual_lint.js58-60 .github/workflows/ci.yml

结尾要求

每个食谱都必须以以下声明结束:

如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。

这鼓励社区贡献和改进食谱。

来源: .github/manual_lint.js82-86

食谱质量控制系统

本仓库实施自动化验证,以确保所有食谱都符合格式标准。

自动化验证

.github/manual_lint.js 脚本会对所有食谱文件执行验证检查。此脚本在提交拉取请求时的持续集成过程中运行。

来源: .github/manual_lint.js .github/readme-generate.js65-123 starsystem/1Star.md starsystem/5Star.md

星级评分系统

每个食谱都包含一个1到5星的难度评级,用文本中的“★”字符表示。 .github/readme-generate.js 脚本会计算这些星级并将食谱按难度分类。

星级评定难度级别示例食谱
1 ★非常简单吐司果酱, 微波炉荷包蛋
2 ★★容易白灼虾, 蒜蓉虾
3 ★★★中等口水鸡, 麻婆豆腐
4 ★★★★困难糖醋排骨, 红烧肉
5 ★★★★★非常困难水煮肉片, 猪皮冻

来源: .github/readme-generate.js65-73 starsystem/1Star.md starsystem/5Star.md

食谱模板示例

在创建新食谱时,请使用模板食谱文件作为起点。这将确保您的食谱遵循所有必需的标准。

基本模板结构包括:

  1. 标题: # 菜名的做法
  2. 所需配料和工具部分
  3. 计算部分(用于份量、配给量等)
  4. 操作部分(分步说明)
  5. 附加内容部分
  6. 关于反馈的必需结尾声明

以下是各章节应如何格式化的示例:

# 菜名的做法

## 必备原料和工具

- 原料
  - 主料 100g
  - 调料 20g
- 工具
  - 炒锅
  - 铲子

## 计算

每份制作量:1份。

总量:1份。

每次制作前需要确定计划做几份。一份正好够1人食用。

## 操作

1. 准备工作(5分钟)
2. 烹饪步骤(10分钟)
3. 成品摆盘

## 附加内容

如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。

来源: README.md29-32

与仓库系统的集成

食谱格式标准已与仓库的其他系统集成,以确保一致性和质量。

来源: .github/readme-generate.js .github/manual_lint.js

常见的验证错误

提交食谱时,请注意这些常见的验证错误:

  1. 缺少或错误的章节标题
  2. 使用不精确的计量,如“适量”
  3. 使用“勺”或“杯”但未指定具体计量
  4. 包含人称代词
  5. 缺少必需的结尾声明

未通过验证的食谱将在合并到仓库前被退回修改。

来源: .github/manual_lint.js88-95

食谱格式标准的目的是使食谱清晰、精确并易于程序员访问。通过遵循这些标准,贡献者可以确保他们的食谱易于遵循,并以一致的结果进行复现。