Releases: Asgarrrr/obsidian-recipe-table
Releases · Asgarrrr/obsidian-recipe-table
Release list
0.3.0
feat: click an ingredient to search the vault for it Wikilinks were the wrong primary path. [[Parmesan]] only pays off for someone who already keeps a note per ingredient, and nobody does; every recipe just accumulates unresolved links. Searching needs no setup and works on the vault you already have. Clicking an ingredient opens the vault search with the quantity stripped, so '400 g of minced beef' searches for "minced beef". The slot was free: operations tick, ingredients did nothing. ingredient.ts guesses where the quantity ends, which is deliberate and not in tension with scaffold.ts refusing to guess the tree. A wrong search term costs a broader search the user edits; a wrong tree would be silently wrong. Guess only where a mistake is visible and cheap. Wikilinks still work for those who want them, and a link inside a cell navigates rather than searching or ticking. Adds a full lasagne example to the README: two preparation steps, three components, an assembly step consuming two of them, and two operations sharing a column.
0.2.0
feat: wikilinks, a scaffolding command and touch targets Three gaps found by comparing the plugin against the five recipe plugins already in the community list. Cells now render through Obsidian's markdown renderer, so an ingredient can be [[Mascarpone]] and carry a hover preview and a backlink. This is the one thing those plugins cannot copy cheaply: they all treat ingredients as text, so none of them feed the vault graph. The renderer is injected as a CellRenderer rather than imported, which keeps render.ts free of the plugin API and unit-testable. Clicking a link inside a step now follows the link instead of ticking the step off. A new command scaffolds a recipe block from pasted prose. Transcription is the adoption barrier here — every rival reads recipes you already have, this one asks you to restructure them. The scaffold converts fences, markers, numbering and headings, and refuses to guess which step consumes which ingredient: 'pour in 3-4 oz of your milk' carries a quantity and is still a step, so a heuristic sure enough to build the tree would sometimes build it wrong in silence. The output always parses, so a table appears immediately and gets refined from there. Tickable cells measured 34px against the 44px touch target every platform asks for; under a coarse pointer they now use height as a floor, measured at 44px in Obsidian's mobile emulation.
0.1.0
feat: make references additive and cover the untested modules A reference now adds to the running chain instead of replacing it. The salted maple coffee recipe exposed the old rule: 'pour on top (coffee)' sits mid-chain, so cancelling the chain silently dropped the ice and the milk from the table. Chaining is now unconditional, which also makes the 'step leads nowhere' error unreachable, so it is gone. Render and cooking move to plain DOM against ownerDocument. They no longer import Obsidian, which makes them testable under happy-dom and leaves main.ts as the only module touching the plugin API. Adds 14 tests over attribute emission, tickability, keyboard handling and error rendering, plus the three parser branches that had none. Repo cleanup for publication: the LICENSE still carried Dynalist's copyright from the sample plugin, AGENTS.md still described that sample, CI never ran the tests, and the design doc sat under a tool-specific path. Fixes a .gitignore bug that mattered: the unanchored 'styles.css' pattern also matched src/styles.css, so the stylesheet had never been committed and a release would have shipped an unstyled table.