diff --git a/book/abbreviations.tex b/book/abbreviations.tex new file mode 100644 index 00000000..0cf5d348 --- /dev/null +++ b/book/abbreviations.tex @@ -0,0 +1,4 @@ +% Common abbreviations +\newcommand{\ie}{\emph{i.e.}\@ifnextchar.{\!\@gobble}{}} +\newcommand{\eg}{\emph{e.g.}\@ifnextchar.{\!\@gobble}{}} +\newcommand{\etc}{etc\@ifnextchar.{}{.\@}} diff --git a/book/figures/fig-bulk-fermentation.tex b/book/figures/fig-bulk-fermentation.tex index 5eb0a45e..35313201 100644 --- a/book/figures/fig-bulk-fermentation.tex +++ b/book/figures/fig-bulk-fermentation.tex @@ -20,10 +20,10 @@ % Same tricks not to get double lines and also we do _not_ want arrows \path [draw, thick] (ph_value) -- node{} ++(2, 0); \path [draw, thick] (smell) -| node{} ++(2, 4); - \path [line] (dough_ready) -- node{yes} (divide_preshape); - \path [line] (dough_ready) |- node[right=3pt]{no} (dough_flattened); - \path [line] (dough_flattened) |- node[right=3pt]{yes} (stretch_fold); - \path [line] (dough_flattened) -- node{no} (wait_60_minutes); + \path [line] (dough_ready) -- node{Yes} (divide_preshape); + \path [line] (dough_ready) |- node[right=3pt]{No} (dough_flattened); + \path [line] (dough_flattened) |- node[right=3pt]{Yes} (stretch_fold); + \path [line] (dough_flattened) -- node{No} (wait_60_minutes); \path [line] (stretch_fold) -- (wait_60_minutes); \path [line] (wait_60_minutes) -- (check_dough); \end{tikzpicture} diff --git a/book/figures/fig-compet.tex b/book/figures/fig-compet.tex new file mode 100644 index 00000000..244a5c1a --- /dev/null +++ b/book/figures/fig-compet.tex @@ -0,0 +1,54 @@ +\begin{tikzpicture}[node distance=1cm] + +% Left Side: Antifungal metabolites +% Bacteria +\draw[thick, fill=gray!20] (-2, 2.5) ellipse (1.2cm and 0.5cm); +\node at (-2, 3.2) {Antifungal metabolites}; + +% Arrows for antifungal metabolites +\foreach \x in {-2.5, -2, -1.5} + \draw[thick, ->] (\x, 2) -- (\x, 1.2); + +% Antifungal metabolites (triangles) +\foreach \x in {-2.5, -2, -1.5} + \node[fill=red!80!black, regular polygon, regular polygon sides=3, draw, scale=0.7] at (\x, 1.2) {}; + +% Fungi (left) +\draw[thick, fill=gray!50] (-2, 0.5) circle (0.5cm); +\node at (-2, -0.2) {Fungi}; + +% Right Side: Nutrient Competition +% Bacteria +\draw[thick, fill=gray!20] (3, 2.5) ellipse (1.2cm and 0.5cm); +\node at (3, 3.2) {Competition for nutrients}; + +% Arrows for nutrients +\foreach \x in {2.5, 3, 3.5} + \draw[thick, <-] (\x, 2) -- (\x, 1.2); + +% Available nutrients (triangles) +\foreach \x in {2.5, 3, 3.5} + \node[fill=green!80!black, regular polygon, regular polygon sides=3, draw, scale=0.7, rotate=180] at (\x, 1.2) {}; + +% Fungi (right) +\draw[thick, fill=gray!50] (3, 0.5) circle (0.5cm); +\node at (3, -0.2) {Fungi}; + +% Legends +% Bacteria legend +\draw[thick, fill=gray!20] (-5.5, -2) ellipse (0.8cm and 0.3cm); +\node[anchor=west] at (-5, -2) {Bacteria}; + +% Fungi legend +\draw[thick, fill=gray!50] (-5.5, -3) circle (0.3cm); +\node[anchor=west] at (-5, -3) {Fungi}; + +% Antifungal metabolites legend +\node[fill=red!80!black, regular polygon, regular polygon sides=3, draw, scale=0.7] at (-5.5, -4) {}; +\node[anchor=west] at (-5, -4) {Antifungal metabolites}; + +% Available nutrients legend +\node[fill=green!80!black, regular polygon, regular polygon sides=3, draw, scale=0.7, rotate=180] at (-5.5, -5) {}; +\node[anchor=west] at (-5, -5) {Available nutrients}; + +\end{tikzpicture} diff --git a/book/figures/fig-dutch-oven-process.tex b/book/figures/fig-dutch-oven-process.tex index d4f0fff0..1230fc99 100644 --- a/book/figures/fig-dutch-oven-process.tex +++ b/book/figures/fig-dutch-oven-process.tex @@ -22,11 +22,11 @@ \path [line] (close) -- (back_oven); \path [line] (back_oven) -- (bake); \path [line] (bake.west) -- node{} ++(-2, 0) -| (is_ready_check.north); - \path [line] (is_ready_check) -- node{yes} (remove_do_lid); - \path [line] (is_ready_check) -- node{no} (wait_5_minutes); + \path [line] (is_ready_check) -- node{Yes} (remove_do_lid); + \path [line] (is_ready_check) -- node{No} (wait_5_minutes); \path [line] (wait_5_minutes.west) -- node{} ++(-1.5, 0) |- (is_ready_check.west); \path [line] (remove_do_lid) -- (dark_enough_decision); - \path [line] (dark_enough_decision) -- node{yes} (finish_baking); - \path [line] (dark_enough_decision) -- node{no} (bake_5_more_minutes); + \path [line] (dark_enough_decision) -- node{Yes} (finish_baking); + \path [line] (dark_enough_decision) -- node{No} (bake_5_more_minutes); \path [line] (bake_5_more_minutes.east) -- node{} ++(1, 0) -- node{} ++(0, 2.3) -| (dark_enough_decision.north); \end{tikzpicture} diff --git a/book/figures/fig-kneading-process.tex b/book/figures/fig-kneading-process.tex index 4a48db31..9c768bbb 100644 --- a/book/figures/fig-kneading-process.tex +++ b/book/figures/fig-kneading-process.tex @@ -8,18 +8,18 @@ \path [line] (knead) -- (wait2); \node [decision, below of=wait2, node distance=4cm] (windowpane_test) {Window-pane?}; \path [line] (wait2) -- (windowpane_test); - \path [line] (windowpane_test.east) -- node{no} ++(1, 0) -- node{} ++(0, 5.7) -| (knead.north); + \path [line] (windowpane_test.east) -- node{No} ++(1, 0) -- node{} ++(0, 5.7) -| (knead.north); \node [decision] at (windowpane_test -| knead) (more_water) {Bassinage for more water?}; - \path [line] (windowpane_test) -- node{yes} (more_water); + \path [line] (windowpane_test) -- node{Yes} (more_water); \node [block] at (wait1 |- more_water) (add_water) {Add water}; - \path [line] (more_water) -- node{yes} (add_water); + \path [line] (more_water) -- node{Yes} (add_water); \path [line] (add_water.north east) -- (knead.south west); \node [decision, below of=more_water, node distance=4.5cm] (dough_sample) {Aliquot sample?}; - \path [line] (more_water) -- node{no} (dough_sample); + \path [line] (more_water) -- node{No} (dough_sample); \node [block] at (dough_sample -| wait2) (dough_ball) {Make round dough ball}; - \path [line] (dough_sample) -- node{no} (dough_ball); + \path [line] (dough_sample) -- node{No} (dough_ball); \node [block, below of=dough_sample] (extract_sample) {Extract sample}; - \path [line] (dough_sample) -- node{yes} (extract_sample); + \path [line] (dough_sample) -- node{Yes} (extract_sample); \path [line] (extract_sample.north east) -- (dough_ball.south west); \node [success, below of=dough_ball] (begin_bulk) {Begin bulk fermentation}; \path [line] (dough_ball) -- (begin_bulk); diff --git a/book/figures/fig-liquid-starter-conversion.tex b/book/figures/fig-liquid-starter-conversion.tex index 2954897e..bd8811c7 100644 --- a/book/figures/fig-liquid-starter-conversion.tex +++ b/book/figures/fig-liquid-starter-conversion.tex @@ -8,10 +8,10 @@ \path [line] (init) -- (feed_new_ratio); \path [line] (feed_new_ratio) -- node{Wait \qty{24}{\hour}} (ready_signs); \path [line] (feed_again) -- node[anchor=east] {} ++(2.2,0) |- (feed_new_ratio); - \path [line] (ready_signs) -- node{no} (feed_again); - \path [line] (ready_signs) -- node[above=2pt]{~yes} (last_feed); + \path [line] (ready_signs) -- node{No} (feed_again); + \path [line] (ready_signs) -- node[above=2pt]{~Yes} (last_feed); \path [line] (last_feed) -- node{after \qtyrange{6}{12}{\hour}} (bread_dough); - \draw [thick, ->] ($ (feed_again.north) +(0.7cm, 1cm)$) arc (-45:220:1cm); - \node [anchor=north, text width=5em] at ($(feed_again.north west)+(1.8cm, 2.3cm)$) {Repeat 3~times}; - + % TODO: find a better way to position the Repeat 3 times text and arrow. Hard-coded values are finicky and don't work well across media. + \draw [line] ($ (feed_again.north) +(0.7cm, 1cm)$) arc (-45:220:1cm); + \node [anchor=north, text width=5em] at ($(feed_again.north west)+(1.55cm, 2.2cm)$) {Repeat 3~times}; \end{tikzpicture} diff --git a/book/figures/fig-proofing-process.tex b/book/figures/fig-proofing-process.tex index 7303ab4d..bca52a4b 100644 --- a/book/figures/fig-proofing-process.tex +++ b/book/figures/fig-proofing-process.tex @@ -7,14 +7,14 @@ \node [success, right of=dent_visible_decision, node distance=4cm] (bake) {Score and bake}; \node [block] at (retard_bake_decision |- poke) (wait_retard) {Wait\\ 15~minutes}; \node [block] at (wait_retard |- bake) (retard) {Proof in fridge at \qty{4}{\degreeCelsius} (\qty{40}{\degF})}; - \path [line] (init) -- node{yes} (poke); - \path [line] (init) -- node{no} (retard_bake_decision); + \path [line] (init) -- node{Yes} (poke); + \path [line] (init) -- node{No} (retard_bake_decision); \path [line] (poke) -- (dent_visible_decision); - \path [line] (dent_visible_decision) -- node{yes} (bake); - \path [line] (dent_visible_decision.west) -- node{no} ++(-1.4, 0) -- node{} (wait_poke.south); + \path [line] (dent_visible_decision) -- node{Yes} (bake); + \path [line] (dent_visible_decision.west) -- node{No} ++(-1.4, 0) -- node{} (wait_poke.south); \path [line] (wait_poke) -- (poke); - \path [line] (retard_bake_decision) -- node{yes} (wait_retard); - \path [line] (retard_bake_decision.east) -- node{no} ++(1, 0) |- node{} (retard.east); + \path [line] (retard_bake_decision) -- node{Yes} (wait_retard); + \path [line] (retard_bake_decision.east) -- node{No} ++(1, 0) |- node{} (retard.east); \path [line] (wait_retard) -- (retard); \path [line] (retard) -- (bake); \end{tikzpicture} diff --git a/book/figures/fig-shaping-process.tex b/book/figures/fig-shaping-process.tex index 65f96581..4f88d30c 100644 --- a/book/figures/fig-shaping-process.tex +++ b/book/figures/fig-shaping-process.tex @@ -8,8 +8,8 @@ \node [block, right of=flour] (banneton) {Place upside down in banneton}; \node [success, right of=banneton] (proof) {Begin proofing}; \path [line] (init) -- (overfermented_decision); - \path [line] (overfermented_decision) -- node{yes} (overfermented); - \path [line] (overfermented_decision) -- node{no} (shaping_technique); + \path [line] (overfermented_decision) -- node{Yes} (overfermented); + \path [line] (overfermented_decision) -- node{No} (shaping_technique); \path [line] (shaping_technique) -- (flour); \path [line] (flour) -- (banneton); \path [line] (banneton) -- (proof); diff --git a/book/figures/fig-starter-maintenance.tex b/book/figures/fig-starter-maintenance.tex index ac5eb4c9..8f856fcb 100644 --- a/book/figures/fig-starter-maintenance.tex +++ b/book/figures/fig-starter-maintenance.tex @@ -4,8 +4,8 @@ \path [line] (init) -- (all_starter_used); \node [block, right of=init, node distance=3cm] (use_dough) {Take \qty{10}{\gram} of your bread dough}; \node [block, right of=all_starter_used, node distance=3cm] (use_starter) {Take all but not more than \qty{10}{\gram} of your starter}; - \path [line] (all_starter_used) -- node{yes} (use_dough); - \path [line] (all_starter_used) -- node{no} (use_starter); + \path [line] (all_starter_used) -- node{Yes} (use_dough); + \path [line] (all_starter_used) -- node{No} (use_starter); \node [block, right of=use_dough, node distance=3cm] (feed_starter) {Feed using 1:5:5 ratio}; \path [line] (use_dough) -- (feed_starter); \path [line] (use_starter) -- (feed_starter); @@ -13,20 +13,20 @@ \path [line] (feed_starter) -- (bake_next_day_check); \node [success, right of=bake_next_day_check, node distance=3.5cm] (make_bread_dough) {Make bread dough again after \qtyrange{8}{12}{\hour}}; - \path [line] (bake_next_day_check) -- node{yes} (make_bread_dough); + \path [line] (bake_next_day_check) -- node{Yes} (make_bread_dough); \node [decision, right of=use_starter, node distance=3cm] (bake_next_week_check) {Baking in next 2 weeks?}; \node [block, right of=bake_next_week_check, node distance=3.5cm] (store_fridge) {Store starter in fridge at \qty{4}{\degreeCelsius} (\qty{40}{\degF})}; - \path [line] (bake_next_week_check) -- node{yes} (store_fridge); + \path [line] (bake_next_week_check) -- node{Yes} (store_fridge); \node [success, right of=store_fridge, node distance=3cm] (feed_after_fridge) {Feed again using 1:5:5 ratio \qtyrange{8}{12}{\hour} before making dough}; \path [line] (store_fridge) -- (feed_after_fridge); - \path [line] (bake_next_day_check) -- node{no} (bake_next_week_check); + \path [line] (bake_next_day_check) -- node{No} (bake_next_week_check); \node [decision, below of=use_starter, node distance=3cm] (freezer_check) {Have a freezer?}; \path [line] (bake_next_week_check) -- (store_fridge); - \path [line] (bake_next_week_check) -- node{no} (freezer_check); + \path [line] (bake_next_week_check) -- node{No} (freezer_check); \node [block, right of=freezer_check, node distance=3cm] (dry_starter) {Dry your starter}; \node [block, below of=dry_starter, node distance=3cm] (freeze_starter) {Freeze your starter}; - \path [line] (freezer_check) -- node{no} (dry_starter); - \path [line] (freezer_check) -- node{yes} (freeze_starter); + \path [line] (freezer_check) -- node{No} (dry_starter); + \path [line] (freezer_check) -- node{Yes} (freeze_starter); \node [success, right of=dry_starter, node distance=3.5cm] (reactivate_freezer) {Reactivate starter for 3 days with daily 1:5:5 feedings}; \path [line] (dry_starter) -- (reactivate_freezer); \path [line] (freeze_starter) -- (reactivate_freezer); diff --git a/book/figures/fig-starter-process.tex b/book/figures/fig-starter-process.tex index 3eb529ba..fc6be060 100644 --- a/book/figures/fig-starter-process.tex +++ b/book/figures/fig-starter-process.tex @@ -1,19 +1,22 @@ \begin{tikzpicture}[node distance = 3.5cm, auto] - \node [start] (init) {Mix \qty{50}{\gram} flour + \qty{50}{\gram} water, stir}; - \node [block, right of=init] (wait2) {Wait\\ \qty{24}{\hour}}; - \path [line] (init) -- (wait2); - \node [block, below of=wait2, node distance=3.5cm] (feed) {\qty{10}{\gram} of previous day + \qty{50}{\gram} water + \qty{50}{\gram} flour, stir}; - \path [line] (wait2) -- (feed); - \node [block, below of=feed] (discard) {Discard the rest}; - \path [line] (feed) -- (discard); - \node [decision, right of=feed, node distance=3.5cm] (decide) {Is good?}; - \node [decision, above of=decide, node distance=3.5cm] (timeout) {Less than 10 feeds?}; - \node [fail, right of=timeout, node distance=3.5cm] (discard2) {Batch failed}; - \path [line] (timeout) -- node{no} (discard2); - \path [line] (timeout) -- node{yes} (wait2); - \path [line] (feed) -- (decide); - \node [success, right of=decide, node distance=3.5cm] (use) {Ready to use}; - \path [line] (decide) -- node{no} (timeout); - \path [line] (wait2) -- (feed); - \path [line] (decide) -- node{yes} (use); + \node [start] (start_n) {Mix \qty{50}{\gram} flour + \qty{50}{\gram} water, stir}; + \node [block, right of=start_n, node distance = 3.5cm] (wait_n) {Wait\\ \qty{24}{\hour}}; + \node [decision, right of=wait_n, node distance = 3.5cm] (readycheck_n) {Ready?}; + \node [block, below of=wait_n, node distance = 3.2cm] (feed_n) {Feed the mixture }; + \node [decision, right of=feed_n, node distance = 3.5cm] (limitcheck_n) {>10 feeds?}; + \node [fail, right of=limitcheck_n, node distance = 3.5cm] (abort_n) {Discard all. Start over}; + \node [success, right of=readycheck_n, node distance = 3.5cm] (final_n) {Ready to use}; + + \draw [line] (start_n) -- (wait_n); + \draw [line] (wait_n) -- (readycheck_n); + \draw [line] (feed_n) -- (wait_n); + \draw [line] (readycheck_n) -- node {No} (limitcheck_n); + \draw [line] (limitcheck_n) -- node (feedok_n) {No} (feed_n) ; + \draw [line] (limitcheck_n) -- node {Yes} (abort_n); + \draw [line] (readycheck_n) -- node {Yes} (final_n); + + \node [below of=feedok_n, node distance=2cm, align=left] (details2) [shape=rectangle, draw, fill=maingray]{% + \textbf{Ready}: Mixture has \emph{grown}, has \emph{bubbles}, and \emph{smells} vinegary/yoghurty. \\ + \textbf{Feed the mixture}: Discard all but \qty{10}{\gram}, mix in \qty{50}{\gram} flour and \qty{50}{\gram} water. + }; \end{tikzpicture} diff --git a/book/figures/fig-starter-readiness.tex b/book/figures/fig-starter-readiness.tex index 50a6212a..499485cc 100644 --- a/book/figures/fig-starter-readiness.tex +++ b/book/figures/fig-starter-readiness.tex @@ -23,16 +23,16 @@ {Prepare dough}; \path [line] (init) -- (decision_start); - \path [line] (decision_start) -- node{no} (feed_no_branch); - \path [line] (decision_start) -- node[below=2pt]{yes} (feed_yes_branch.north west); + \path [line] (decision_start) -- node{No} (feed_no_branch); + \path [line] (decision_start) -- node[below=2pt]{Yes} (feed_yes_branch.north west); \path [line] (feed_yes_branch) -- (low_ratio); \path [line] (feed_no_branch) -- (high_ratio); \path [line] (high_ratio) -- node[anchor=east, above=2pt] {} ++(2.2,0) |-(size_check); \path [line] (low_ratio) -- (size_check); - \path [line] (size_check) -- node{no} (feed_yes_branch.south east); - \path [line] (size_check) -- node{yes} (smell_check); - \path [line] (smell_check) -- node{no} (feed_yes_branch.south west); - \path [line] (smell_check) -- node{yes} (make_dough); + \path [line] (size_check) -- node{No} (feed_yes_branch.south east); + \path [line] (size_check) -- node{Yes} (smell_check); + \path [line] (smell_check) -- node{No} (feed_yes_branch.south west); + \path [line] (smell_check) -- node{Yes} (make_dough); % braces \draw[BC] (size_check.south) -- diff --git a/book/figures/fig-stiff-starter-conversion.tex b/book/figures/fig-stiff-starter-conversion.tex index 6e4f5497..b37928de 100644 --- a/book/figures/fig-stiff-starter-conversion.tex +++ b/book/figures/fig-stiff-starter-conversion.tex @@ -11,14 +11,15 @@ \path [line] (init) -- (feed_new_ratio); \path [line] (feed_again) -- (feed_new_ratio); \path [line] (next_day) -- (ready_signs); - \path [line] (ready_signs) -- node{no} (feed_again |- last_feed) |- (feed_again.south); - \path [line] (ready_signs) -- node{yes} (last_feed); + \path [line] (ready_signs) -- node{No} (feed_again |- last_feed) -| (feed_again.south); + \path [line] (ready_signs) -- node{Yes} (last_feed); \path [line] (last_feed) -- node{after \qtyrange{6}{12}{\hour}} (bread_dough); \path [line] (feed_new_ratio) -- (too_dry); \path [line] (add_water.north) -- node{} ++(0, 1.3) -| (too_dry.north); - \path [line] (too_dry) -- node{no} (next_day); - \path [line] (too_dry) -- node{yes} (add_water); - \path [line] (ready_signs) -- node{yes} (last_feed); - \draw [thick, <-] ($ (feed_again.east) +(2.1cm, 0.7cm)$) arc (-45:220:1cm); - \node [anchor=north, text width=5em] at ($(feed_again.east)+(2cm, 2cm)$) {Repeat 3~times}; + \path [line] (too_dry) -- node{No} (next_day); + \path [line] (too_dry) -- node{Yes} (add_water); + \path [line] (ready_signs) -- node{Yes} (last_feed); + % TODO: find a better way to position the Repeat 3 times text and arrow. Hard-coded values are finicky and don't work well across media. + \draw [line] ($ (feed_again.east) +(0.7cm, 0.9cm)$) arc (220:-45:1cm); + \node [anchor=north, text width=5em] at ($(feed_again.east)+(1.9cm, 2cm)$) {Repeat 3~times}; \end{tikzpicture} diff --git a/book/figures/fig-wheat-sourdough-process.tex b/book/figures/fig-wheat-sourdough-process.tex index a549d83d..660ae8be 100644 --- a/book/figures/fig-wheat-sourdough-process.tex +++ b/book/figures/fig-wheat-sourdough-process.tex @@ -13,8 +13,8 @@ \path [line] (mix_ingredients) -- (dough_strength); \path [line] (dough_strength) -- (bulk); \path [line] (bulk) -- (divide_test); - \path [line] (divide_test) -- node{yes} (shape); - \path [line] (divide_test) -- node{no} (divide); + \path [line] (divide_test) -- node{Yes} (shape); + \path [line] (divide_test) -- node{No} (divide); \path [line] (divide) -- (preshape); \path [line] (preshape) -- (shape); \path [line] (shape) -- (proof); diff --git a/book/figures/flowcharts_tikz.tex b/book/figures/flowcharts_tikz.tex index b4522170..c68219f1 100644 --- a/book/figures/flowcharts_tikz.tex +++ b/book/figures/flowcharts_tikz.tex @@ -1,5 +1,5 @@ \tikzstyle{every picture}+=[font=\footnotesize\sffamily] -\usetikzlibrary{calc, shapes, arrows, decorations.pathreplacing, calligraphy, +\usetikzlibrary{calc, shapes, arrows.meta, decorations.pathreplacing, calligraphy, positioning} \tikzstyle{decision} = [diamond, draw=codeblack, fill=codeblack, text=white, text width=4.5em, text badly centered, node distance=3cm, inner sep=0pt, @@ -19,7 +19,8 @@ \tikzstyle{fail} = [rectangle, draw=codeblack, fill=redpic, text=black, text width=5em, text centered, rounded corners, minimum height=4em, line width=0.4mm] -\tikzstyle{line} = [draw, -latex', thick, ->,>=to] +% The arrowed connector line between nodes +\tikzstyle{line} = [draw, thick, ->, >={Latex}] \tikzstyle{BC} = [decorate, % Brace Calligraphic decoration={calligraphic brace, amplitude=3mm, raise=1mm}, diff --git a/book/figures/vars.tex b/book/figures/vars.tex index b4bc1204..1f9c0120 100644 --- a/book/figures/vars.tex +++ b/book/figures/vars.tex @@ -1,6 +1,9 @@ \documentclass[tikz]{standalone} \usepackage{tikz} +\usepackage{pgfplots} +\usepackage{chemfig} \usepackage[mode=match, reset-text-family=false]{siunitx} \DeclareSIUnit\degF{\text{°}F} \input{flowcharts_tikz.tex} \input{../colors.tex} +\input{../abbreviations.tex} diff --git a/book/makefile b/book/makefile index 788fa6f6..80ef205f 100644 --- a/book/makefile +++ b/book/makefile @@ -35,13 +35,13 @@ chapters = baking basics bread-types cover flour-types history intro mix-ins\ src_tables := $(wildcard tables/table-*.tex) src_figures := $(wildcard figures/fig-*.tex) figures/flowcharts_tikz.tex -src_figures += $(wildcard plots/fig-*.tex) +src_figures += $(wildcard plots/fig-*.tex) abbreviations.tex colors.tex src_recipes := $(wildcard recipes/*.tex) src_plots := $(wildcard plots/*.table) src_tex := $(foreach directory, $(chapters), $(wildcard $(directory)/*.tex)) src_tex += book.tex book_sans_serif.tex references.bib figures/vars.tex -src_tex += supporters.csv sourdough.sty colors.tex +src_tex += supporters.csv sourdough.sty colors.tex abbreviations.tex src_tex += $(src_recipes) images := $(wildcard images/*/*.jpg) @@ -90,11 +90,10 @@ tgt_figures := $(patsubst %.tex, %.png,$(src_figures)) # TODO: check if it works on github CI %.png: %.tex - @echo "\input{./vars.tex}" > $@.in - # \b is backspace.. - @echo "\\\begin{document}" >> $@.in + @printf '%s\n' "\input{./vars.tex}" > $@.in + @printf '%s\n' "\begin{document}" >> $@.in @cat $< >> $@.in - @echo "\\\end{document}" >> $@.in + @printf '%s\n' "\end{document}" >> $@.in $(LATEX) $@.in figures/export_figures.sh $@.pdf diff --git a/book/plots/fig-temperature-ambient.tex b/book/plots/fig-temperature-ambient.tex index c3d876f1..9ca43519 100644 --- a/book/plots/fig-temperature-ambient.tex +++ b/book/plots/fig-temperature-ambient.tex @@ -6,6 +6,7 @@ major grid style={line width=.2pt,draw=gray!30}, axis x line=middle, axis y line=middle, + axis line style={-Latex}, width=\textwidth, height=0.5\textwidth, xmax=35, xmin=-0.1, diff --git a/book/plots/fig-temperature-surface.tex b/book/plots/fig-temperature-surface.tex index 8ddaf9e3..a0a2090b 100644 --- a/book/plots/fig-temperature-surface.tex +++ b/book/plots/fig-temperature-surface.tex @@ -6,6 +6,7 @@ major grid style={line width=.2pt,draw=gray!30}, axis x line=middle, axis y line=middle, + axis line style={-Latex}, width=\textwidth, height=0.5\textwidth, xmax=35, xmin=-0.1, diff --git a/book/plots/fig-yeast-sourdough-strength.tex b/book/plots/fig-yeast-sourdough-strength.tex index defaa623..77c34a53 100644 --- a/book/plots/fig-yeast-sourdough-strength.tex +++ b/book/plots/fig-yeast-sourdough-strength.tex @@ -7,6 +7,7 @@ \qty{60}{\percent}~hydration}, axis x line=middle, axis y line=middle, + axis line style={-Latex}, width=\textwidth, height=0.5\textwidth, xmax=44, xmin=-0.1, diff --git a/book/sourdough.sty b/book/sourdough.sty index 370e7066..fe2f1caf 100644 --- a/book/sourdough.sty +++ b/book/sourdough.sty @@ -34,9 +34,7 @@ \DeclareTOCStyleEntry[numwidth=3em]{tocline}{table} % Common abbreviations -\newcommand{\ie}{\emph{i.e.}\@ifnextchar.{\!\@gobble}{}} -\newcommand{\eg}{\emph{e.g.}\@ifnextchar.{\!\@gobble}{}} -\newcommand{\etc}{etc\@ifnextchar.{}{.\@}} +\input{abbreviations.tex} % Consistent pH values \newcommand{\pHvalue}[1]{pH~\SI{#1}{}} diff --git a/website/_bundle_install_done b/website/_bundle_install_done deleted file mode 100644 index e69de29b..00000000