20 个版本 (8 个重大更新)
0.9.1 | 2024 年 4 月 18 日 |
---|---|
0.8.5 | 2024 年 2 月 27 日 |
0.7.0 | 2023 年 9 月 27 日 |
0.4.2 | 2023 年 7 月 23 日 |
#248 在 解析实现
85 每月下载量
420KB
6.5K SLoC
包含 (WOFF 字体, 38KB) ui/assets/fonts/Typey_Italic.woff2, (WOFF 字体, 34KB) ui/assets/fonts/Typey.woff2
cooklang-chef
用于管理扩展的 cooklang 菜谱的 CLI 工具。
解析器已移动到 cooklang/cooklang-rs
什么是 cooklang
Cooklang 是一种用于烹饪菜谱的标记语言。更详细的解释可以在 cooklang.org 找到。
一个 cooklang 菜谱示例
In a large #bowl mix @flour{450%g}, @yeast{2%tsp}, @salt{2%tsp} and
@warm water{375%ml}.
Cover the dough and leave on counter for ~{2-3%hour}.
Sprinkle work surface with @&flour{10%g} and shape the dough. Sprinkle the top
with some more @&flour{5%g}.
Bake with a preheated #oven at 230ºC for ~{30%min}.
什么是 cooklang-chef
chef
是一个 CLI 工具,用于管理、读取和转换 cooklang 菜谱。
我希望获得一些 cooklang 没有的功能,因此我对 cooklang 的语法和语义进行了一些扩展。
所有常规 cooklang 文件都解析为相同的菜谱,扩展是原始 cooklang 格式的超集。此外,可以 关闭扩展,这样解析器就可以用于常规 cooklang,如果你不喜欢扩展。除了多行步骤之外的所有扩展默认启用[^1]。
[^1]: 这是为了最大限度地与其他 cooklang 解析器兼容。
你可以在 解析器仓库 中看到所有扩展的详细说明。
完整用户文档 在此处。
你可以使用以下命令安装 chef
cargo install cooklang-chef
你还可以从 github 发布中获得预构建的二进制文件。
安装后,运行
chef config --setup
主要功能
-
Web UI。此 CLI 附带嵌入式 Web UI。
- 缩放和转换数量。
- 菜谱的热重载。只需编辑
.cook
文件并保存。 - 在代码编辑器中打开
.cook
文件。
-
成分引用。现在您可以引用之前使用过的成分。我认为这是对原始cooklang最重要的扩展。您可以在这份文档中了解如何使用引用。
-
良好的错误报告。错误报告是首要任务。
这个小小的食谱包含错误
>> servings: 3|6|8 Add @water{1%kg}, mix, and ~{5 min} later add more @&water{1|2%L}.
-
单位。没有单位的成分数量毫无意义。这就是为什么我们需要解析和检查单位。随着单位的出现
- 单位转换。您可以用您偏好的单位系统阅读您的食谱。
- 可配置的单位。您可以添加、删除和重命名单位。
存储箱
- Cooklang解析器
- 命令行界面
- cooklang-fs。 处理引用其他文件的食谱、图片和数据的相关工具。
- cooklang-to-cooklang。 将食谱转换回Cooklang。
- cooklang-to-human。 以人类友好的方式编写食谱。
- cooklang-to-md。 将食谱转换为Markdown格式。
依赖项
~17–31MB
~547K SLoC