在昨天的帖子之后,是时候最终尝试在一个文件中处理博客文章和 Cooklang 食谱了。如何格式化内容的解决方案很简单:将配方内联到 Markdown 代码围栏中并对其进行预处理。该文件如下所示:
--- [yaml frontmatter] --- [markdown intro] ```cooklang [cooklang recipe] ``` [markdown outro]
执行此操作的代码很丑陋,并且依赖正则表达式1 、 CookCLI来生成一些 JSON,我用它在视图渲染期间渲染部分内容。我没有费心构建一个漂亮的数据对象,因此我使用了一堆{}.dig
和case / in / else
模式匹配语句来生成标记。它确实可以正确处理使用 h-recipe 微格式标记菜谱,所以这是一个胜利。请参阅下面的 Rails 部分2 。
正如您将看到的,CLI 无法处理同名成分与数量的组合,并且无法解析成分别名或注释。我可能会在项目的GitHub repo上打开一个问题,但最终它看起来像……