Shopping List
The shopping-list
command creates organized shopping lists from one or more recipes. It automatically combines ingredients, converts units (some day!), and groups items by store section.
Basic Usage
This creates a combined shopping list with all ingredients from both recipes.
Creating Shopping Lists
Single Recipe
Output:
Multiple Recipes
Combine ingredients from several recipes:
Scaling Recipes
Scale individual recipes in your shopping list:
Menu Files
Create shopping lists from .menu
files that organize multiple recipes:
Menu files can contain recipe references with their own scaling, and the menu-level scaling multiplies with individual recipe scales.
Output Formats
Human-Readable (Default)
Organized by store section:
Plain List
Without categories:
Output:
JSON Format
For integration with other tools:
YAML Format
Markdown Format
Perfect for sharing or printing:
Aisle Configuration
Organize items by store section using aisle.conf
:
Using Custom Aisle Configuration
Checking Missing Aisles
Find ingredients not in your aisle configuration:
Pantry Configuration
Track your ingredient inventory and automatically exclude items you already have from shopping lists using pantry.conf
:
How It Works
Items listed in your pantry are automatically excluded from shopping lists:
Enable logging to see what's excluded with pantry:
Pantry Item Formats
Two ways to specify items:
Simple format:
item = "quantity"
Detailed format: Track expiration and purchase dates
Using Custom Pantry Configuration
Recipe References
Shopping lists handle recipe references (includes) automatically:
To ignore references:
Saving Lists
To File
Ingredients Only
Just list ingredient names without quantities:
Output:
Advanced Usage
Weekly Meal Planning
Create a shopping list for the week:
Party Planning
Scale recipes for large gatherings:
Smart Shopping
Batch Cooking
Plan bulk preparation:
Common Issues
Missing Aisle Categories
Items not in aisle.conf
appear in an "Other" category. Run cook doctor aisle
to find and fix these.
Recipe Not Found
Use full paths or ensure recipes are in the current directory: