由於開始吃健康餐,想在 Obsidian 紀錄食譜,不然很容易因為不常做忘掉。基於理科腦,考慮可用更清晰精准的描述来整理常见菜的做法,最好是機器可讀,但評估後發現其實滿困難的,最後先求有再求好,用了最簡單紀錄格式。本文介紹了兩種機器可讀範本,以及一自然語言範本供參考。

Oyster Crackers 用的語法不太複雜,只是利用 list item 的字串,再多做一點解析區分份量。比如說用來表示食材的語法是

- Cinnamon | 2-3 Sticks |
- Cloves | 8-10 |
- Peppercorns | 5-10 |
- Cardamom | 7-10 Pods |
- Ginger | 1 slice fresh |
- Sugar | 2 Tbsp | Heaping
- Tea | Black, 1 Tbsp |

但學習成本略高。要再進階一點,也有 Cook Lang 的形式語言,語法看起來如下,只支援英文。

Place @bacon strips{1%kg} on a baking sheet and glaze with @syrup{1/2%tbsp}.

Boil @eggs{2} for ~eggs{3%minutes}.

除了能紀錄食譜,因為是機器可讀,甚至可以產生採買清單。這真是個殺手應用。

$ cook shopping-list \
> Neapolitan\ Pizza.cook \
> Root\ Vegetable\ Tray\ Bake.cook
BREADS AND BAKED GOODS
    breadcrumbs                   150 g

DRIED HERBS AND SPICES
    dried oregano                 3 tbsp
    dried sage                    1 tsp
    pepper                        1 pinch
    salt                          25 g, 2 pinches

FRUIT AND VEG
    beetroots                     300 g
    carrots                       300 g
    celeriac                      300 g
    fresh basil                   18 leaves
    garlic                        3 cloves
    lemon                         1 item
    onion                         1 large
    red onion                     2 items
    thyme                         2 springs

Cooklang 在 Obsidian 有 Plugin可用,將你的筆記轉換成美美的食譜頁面,是目測學習成本高。許多阿宅都有想過將食譜形式化的可行性,然而 Reddit 上有人認為食譜不可能形式化。要快速紀錄,還是用自然語言為佳。廣為流傳的,多還是自然語言食譜,尤其是中菜。

西菜食譜較有條理,即便是用自然語言,但因為有量化單位參考,像是幾克,幾分鐘等等,要理解較為容易。Mozilla 社群的小提姆曾推薦給我一本 Cooking for geeks ,便是對阿宅友好的好模範。

中式的食譜則就差遠了,模糊許多,翻開後多是少許糖,煮熟等模凌兩可的描述。其實如果你問家人怎麼煮菜?得到的回答多半是看感覺。鹽放一點點,一點點是多少?無不讓習慣形式化的阿宅很痛苦。

疫情期間,許多阿宅開始做飯,期間在 Github 上有一非常熱門的 repo 程序员做饭指南,該作者致力於去除中菜食譜中不精準的描述,試圖以量化,標準程序畫的方式撰寫。

最近在家隔离,出不了门。只能宅在家做饭了。作为程序员,我偶尔在网上找找菜谱和做法。但是这些菜谱往往写法千奇百怪,经常中间莫名出来一些材料。对于习惯了形式语言的程序员来说极其不友好。

所以,我计划自己搜寻菜谱并结合实际做菜的经验,准备用更清晰精准的描述来整理常见菜的做法,以方便程序员在家做饭。

現階段只做些簡單健康餐,因此只用了最簡單的食譜紀錄法,像這樣。

# 玫瑰馬鈴薯

## 食材

- 馬鈴薯兩顆
- 雞蛋 2-4 顆(用來做底座,所以底座越大就要越大顆)
- 起司片兩片
- 火腿片兩片
- 小磨坊萬用黑胡椒 適量
- 小磨坊匈牙利辣椒粉 適量
- 小磨坊義式香料 適量
- 小磨坊羅勒葉適量
## 作法

1. 馬鈴薯去皮
2. 馬鈴薯用刨刀切片(也可以切薄片)
3. 泡鹽水 5 分鐘擦乾
4. 堆疊排一排放上起司片、火腿片
5. 捲起來成玫瑰的樣子,用牙籤固定(也可不用牙籤,但擺盤時要花時間調整)
6. 放入烤模中蓋上鋁箔紙(也可用烹飪紙)
7. 把 4顆蛋打勻倒進去,直到底座是滿的,花苞也可放一點,讓花苞飽滿
8. 放入炫風烤箱 180 度 20 分鐘,色澤最美,如果蛋液沒熟,用微波弄熟
9. 最後撒上小磨坊調味料調味完成
## 個人評析

1. 馬鈴薯要用大顆的,這樣刨刀才方便切片,切下來的馬鈴薯片才夠寬,才不會在捲的時候讓內餡跑出來。
2. 內餡也可以換成別的,像是放義大利麵的肉醬之類的
3. 這個工序最特別的是簡單玫瑰花的做法,[珍妮絲營養書](https://www.janicenutrition.com/%E9%A3%9F%E8%AD%9C%EF%BC%8D%E7%8E%AB%E7%91%B0%E9%A6%AC%E9%88%B4%E8%96%AF/)有寫更細,更精緻的方法。用馬芬烤盤會更美。
4. 好看而已,沒到好吃,不然就是要換食材