Recette
unlistedby Pierre
Affiche dans la barre latérale les ingrédients à acheter (surlignés ==...==) de la recette active.
Plugin Obsidian — Recette
Affiche dans la barre latérale droite les ingrédients à acheter de la recette active.
Fonctionnement
Le plugin lit la note active et extrait tous les passages surlignés avec la syntaxe ==...==. Chaque passage surligné est considéré comme un ingrédient à acheter.
Exemple dans une note :
==Saumon frais==
Riz sushi + ==vinaigre de riz==
==Avocat==
Sel, poivre
==Feuilles de nori==
Résultat dans la barre latérale :
- Saumon frais
- vinaigre de riz
- Avocat
- Feuilles de nori
Les cases à cocher permettent de barrer les ingrédients au fur et à mesure des achats. L'état des cases n'est pas persisté — il se remet à zéro à chaque changement de note.
Un bouton "Ajouter à la liste d'achats" en haut de la sidebar permet d'envoyer tous les ingrédients dans une note de liste de courses configurable (par défaut : 050 - Cuisine/À acheter.md). Chaque ingrédient est ajouté sous la forme - [ ] ingrédient à la fin du fichier.
Convention de surlignage
Seuls les ingrédients à acheter spécialement sont surlignés, c'est-à-dire ceux qui ne font pas partie du garde-manger courant.
Non surlignés (toujours en stock) : sel, poivre, huile, beurre, farine, sucre, ail, oignons, épices communes, conserves de base.
Surlignés (à acheter) : protéines fraîches, produits frais périssables, ingrédients de spécialité (vinaigre de riz, lait de coco, feuilles de nori, fromage Philadelphia, graines de sésame, fèves edamames, etc.).
Configuration
Dans Obsidian → Options → Plugins communautaires → Recette, un paramètre est disponible :
| Paramètre | Défaut | Description |
|---|---|---|
| Fichier liste d'achats | 050 - Cuisine/À acheter.md | Chemin de la note où les ingrédients sont envoyés via le bouton |
| Dossier des recettes | 050 - Cuisine/Recette/ | Les notes dans ce dossier s'ouvrent automatiquement en mode lecture |
Structure des fichiers
recette/
├── main.ts # Source TypeScript
├── main.js # Compilé par esbuild (ne pas modifier)
├── styles.css # Styles de la barre latérale
├── manifest.json # Métadonnées du plugin
├── esbuild.config.mjs
├── tsconfig.json
├── package.json
└── README.md
Développement
Prérequis
- Node.js ≥ 18 (testé avec Node.js 22)
Installation des dépendances
npm install
Compilation (production)
node esbuild.config.mjs production
Mode watch (développement)
node esbuild.config.mjs
Le mode watch recompile automatiquement à chaque modification de main.ts. Recharger le plugin dans Obsidian (Ctrl+P → Reload app without saving) pour voir les changements.
Évolutions possibles
- Persister l'état des cases à cocher (localStorage ou fichier)
- Bouton pour tout décocher d'un coup
- Copier la liste dans le presse-papier
- Filtrer uniquement les notes avec
cssclasses: recettedans le frontmatter
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.