* chore: sync generated registry files [ci skip] * Update skill to support clipper 1.0.0 features * chore: sync generated registry files [ci skip] * Update skill frontmatter * chore: sync generated registry files [ci skip] --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1.8 KiB
1.8 KiB
Working with Obsidian Bases
The user maintains "Bases" in Bases/*.base which define the schema and properties for different types of notes (e.g., Recipes, Clippings, People).
Workflow
- Identify the Category: Determine the type of content the user wants to clip (e.g., a Recipe, a News Article, a YouTube video).
- Find the Base: Search
Bases/for a matching.basefile.- Example: For a recipe, look for
Bases/Recipes.base. - Example: For a generic article, look for
Bases/Clippings.base.
- Example: For a recipe, look for
- Read the Base: Read the content of the
.basefile to understand the required properties.
Interpreting .base Files
Base files use a YAML-like structure. Look for the properties section.
properties:
file.name:
displayName: name
note.author:
displayName: author
note.type:
displayName: type
note.ingredients:
displayName: ingredients
note.Xcorresponds to a property nameXin the frontmatter.displayNamehelps understand the intent, but the property key (e.g.,author,type,ingredients) is what matters for the template.
Mapping to Clipper Properties
When creating the JSON for the Web Clipper, map the Base properties to the properties array in the JSON.
| Base Property | Clipper JSON Property Name | Value Strategy |
|---|---|---|
note.author |
author |
{{author}} or {{schema:author.name}} |
note.source |
source |
{{url}} |
note.published |
published |
{{published}} |
note.ingredients |
ingredients |
{{schema:Recipe:recipeIngredient}} |
note.type |
type |
Constant (e.g., Recipe) or empty |
Crucial Step: Ask the user which properties should be automatically filled, which should be hardcoded (e.g., type: Recipe), and which should be left empty for manual entry.